def next_map(self): maps = glob('maps/*json') try: selected = maps[maps.index(self.selected_map) + 1] except (IndexError, ValueError): selected = maps[0] self.selected_map = selected settings.setValue('map', self.selected_map) return Map.read_spec(selected)['title']
def __init__(self, *args, **kwargs): QDeclarativeView.__init__(self, *args, **kwargs) context = self.rootContext() context.setContextProperty('menu', self) map_file = settings.value('map') if not map_file: map_file = glob('maps/*json')[0] self.selected_map = map_file self.setSource('menu.qml') self.setResizeMode(QDeclarativeView.SizeRootObjectToView) self.rootObject().initial_map(Map.read_spec(map_file)['title'])