X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=wizard%2FBProjectPresets.py;h=5b5fa7a1d5524c0da049f5fd9114583748f3f9fb;hb=52d65db7c052108ba5d004dc4687f938d6f3dc90;hp=200e676841101b9c005c0a6f0e823d672bcd8406;hpb=b7e4e6bec2572f8fc1628e14a091f3292cf8dc4c;p=bertos.git diff --git a/wizard/BProjectPresets.py b/wizard/BProjectPresets.py index 200e6768..5b5fa7a1 100644 --- a/wizard/BProjectPresets.py +++ b/wizard/BProjectPresets.py @@ -42,7 +42,7 @@ from PyQt4.QtGui import * from BWizardPage import BWizardPage -from BOutputPage import BOutputPage +from BCreationPage import BCreationPage from BToolchainPage import BToolchainPage from bertos_utils import _cmp @@ -80,8 +80,8 @@ class BProjectPresetsPage(QWidget): self.updateUi() def connectSignals(self): - self.connect(self.pageContent.presetList, SIGNAL("itemSelectionChanged()"), self.updateUi) - self.connect(self.pageContent.presetList, SIGNAL("itemSelectionChanged()"), self, SIGNAL("completeChanged()")) + self.connect(self.pageContent.presetList, SIGNAL("currentItemChanged(QListWidgetItem *, QListWidgetItem*)"), self.updateUi) + self.connect(self.pageContent.presetList, SIGNAL("currentItemChanged(QListWidgetItem *, QListWidgetItem*)"), self, SIGNAL("completeChanged()")) def updateUi(self): if self.selected: @@ -122,6 +122,7 @@ class BProjectPresets(BWizardPage): try: QApplication.instance().setOverrideCursor(Qt.WaitCursor) self.project.loadProjectFromPreset(preset_path) + self.setProjectInfo("PRESET_LOADED", True) finally: QApplication.instance().restoreOverrideCursor() # Return always True, this is a fake validation. @@ -147,7 +148,7 @@ class BProjectPresets(BWizardPage): toolchain_info = tm._validateToolchain(toolchain) toolchain_info["path"] = toolchain self.setProjectInfo("TOOLCHAIN", toolchain_info) - return self.wizard().pageIndex(BOutputPage) + return self.wizard().pageIndex(BCreationPage) else: return self.wizard().pageIndex(BToolchainPage) else: @@ -163,12 +164,13 @@ class BProjectPresets(BWizardPage): ## Overloaded BWizardPage methods ## def reloadData(self): - preset_path = self.projectInfo("PROJECT_BOARD") - preset_tree = self.projectInfo("PRESET_TREE") - preset_list = preset_tree["children"][preset_path]["children"] - preset_list = sorted(preset_list.values(), _cmp) - self.setTitle(self.tr("Select the template/demo for %1").arg(preset_tree["children"][preset_path]["info"].get("name", preset_tree["children"][preset_path]["info"]["filename"]))) - self.setupTabs(preset_list) + if not self.projectInfo("PRESET_LOADED"): + preset_path = self.projectInfo("PROJECT_BOARD") + preset_tree = self.projectInfo("PRESET_TREE") + preset_list = preset_tree["children"][preset_path]["children"] + preset_list = sorted(preset_list.values(), _cmp) + self.setTitle(self.tr("Select the project template for %1").arg(preset_tree["children"][preset_path]["info"].get("name", preset_tree["children"][preset_path]["info"]["filename"]))) + self.setupTabs(preset_list) def connectSignals(self): self.connect(self.pageContent.boardTabWidget, SIGNAL("currentChanged(int)"), self, SIGNAL("completeChanged()")) @@ -213,4 +215,4 @@ class BProjectPresets(BWizardPage): current_widget = self.pageContent.boardTabWidget.currentWidget() return current_widget.preset_data["children"][self.selected_path] else: - return None \ No newline at end of file + return None