Avoid recursion on string.replace()
[bertos.git] / wizard / BRoutePage.py
index 418f2b95ec8c8785d3684c5eca5f44afeb9db540..ccd0eff05a7a0f8073971fa6b0ccedf480f0494d 100644 (file)
@@ -38,8 +38,8 @@ from PyQt4.QtGui import *
 
 from BWizardPage import BWizardPage
 
-from BCpuPage import BCpuPage
 from BOutputPage import BOutputPage
+from BToolchainPage import BToolchainPage
 
 import const
 import qvariant_converter
@@ -61,7 +61,8 @@ class BRoutePage(BWizardPage):
         """
         Overload of the QWizardPage isComplete method.
         """
-        return False
+        self.setProjectInfo("EMPTY_MAIN", self.empty_main)
+        return True
 
     def nextId(self):
         """
@@ -69,7 +70,10 @@ class BRoutePage(BWizardPage):
         """
         # Route to Toolchain page if the user select advanced
         # or to Output page if the user select base
-        return self.wizard().pageIndex(BToolchainPage)
+        if self.advanced:
+            return self.wizard().pageIndex(BToolchainPage)
+        else:
+            return self.wizard().pageIndex(BOutputPage)
 
     ####
 
@@ -85,13 +89,18 @@ class BRoutePage(BWizardPage):
         """
         Overload of the BWizardPage connectSignals method.
         """
-        pass
+        self.connect(self.pageContent.emptyCheckBox, SIGNAL("stateChanged(int)"), self, SIGNAL("completeChanged()"))
 
     def reloadData(self):
         """
         Overload of the BWizardPage reloadData method.
         """
-        pass
+        preset = self.projectInfo('PROJECT_PRESET')
+        try:
+            QApplication.instance().setOverrideCursor(Qt.WaitCursor)
+            self.project.loadProjectFromPreset(preset)
+        finally:
+            QApplication.instance().restoreOverrideCursor()
 
     ####
 
@@ -103,3 +112,10 @@ class BRoutePage(BWizardPage):
     @property
     def advanced(self):
         return self.pageContent.advancedButton.isChecked()
+
+    @property
+    def empty_main(self):
+        if self.advanced:
+            return self.pageContent.emptyCheckBox.isChecked()
+        else:
+            return False