def reloadRecentWorlds(self): recentWorlds = RecentFilesSetting.value() self.recentWorldsMenu = QtGui.QMenu() def _triggered(f): def triggered(): self.accept() self.editWorldClicked.emit(f) return triggered dead = [] for filename in recentWorlds: if not os.path.exists(filename): dead.append(filename) continue try: displayName, lastPlayed, versionInfo = WorldEditor.getWorldInfo(filename) action = self.recentWorldsMenu.addAction(displayName) action._editWorld = _triggered(filename) action.triggered.connect(action._editWorld) except EnvironmentError as e: log.exception("Failed to load world info") if len(dead): for f in dead: recentWorlds.remove(f) RecentFilesSetting.setValue(recentWorlds) self.recentWorldsButton.setMenu(self.recentWorldsMenu)
def reloadRecentWorlds(self): recentWorlds = RecentFilesSetting.value() self.recentWorldsMenu = QtGui.QMenu() def _triggered(f): def triggered(): self.accept() self.editWorldClicked.emit(f) return triggered dead = [] for filename in recentWorlds: if not os.path.exists(filename): dead.append(filename) continue try: displayName, lastPlayed, versionInfo = WorldEditor.getWorldInfo( filename) action = self.recentWorldsMenu.addAction(displayName) action._editWorld = _triggered(filename) action.triggered.connect(action._editWorld) except EnvironmentError as e: log.exception("Failed to load world info") if len(dead): for f in dead: recentWorlds.remove(f) RecentFilesSetting.setValue(recentWorlds) self.recentWorldsButton.setMenu(self.recentWorldsMenu)
def __init__(self, worlds=None): super(WorldListModel, self).__init__() if worlds is None: worlds = [] self.worlds = [] for f in worlds: try: info = WorldEditor.getWorldInfo(f) except Exception as e: log.warn("Error while getting world info, skipping...", exc_info=1) continue else: self.worlds.append((f, info))
def __init__(self, worlds=None): super(WorldListModel, self).__init__() if worlds is None: worlds = [] self.worlds = [] for f in worlds: try: info = WorldEditor.getWorldInfo(f) except Exception as e: log.warn("Error while getting world info, skipping...", exc_info=1) continue else: self.worlds.append((f, info))