Add a final page after the project creation
[bertos.git] / wizard / BWizard.py
index 497ea51d3c674406995538d4c06377486c2db716..7c2b0f4bc6c73c0302c3db77d8b74f61307a6aaa 100644 (file)
@@ -9,6 +9,8 @@
 # Author: Lorenzo Berni <duplo@develer.com>
 #
 
+import copy
+
 from PyQt4.QtCore import *
 from PyQt4.QtGui import *
 
@@ -18,6 +20,8 @@ import BCpuPage
 import BToolchainPage
 import BModulePage
 import BOutputPage
+import BCreationPage
+import BFinalPage
 
 class BWizard(QWizard):
     
@@ -26,6 +30,7 @@ class BWizard(QWizard):
         # TODO: choose the right minimum size
         self.setMinimumSize(1000, 500)
         self.setWindowTitle(self.tr("Create a BeRTOS project"))
+        self.setOption(QWizard.DisabledBackButtonOnLastPage, True)
         self._addPages()
         self._connectSignals()
     
@@ -36,14 +41,19 @@ class BWizard(QWizard):
         self.addPage(BToolchainPage.BToolchainPage())
         self.addPage(BModulePage.BModulePage())
         self.addPage(BOutputPage.BOutputPage())
+        self.addPage(BCreationPage.BCreationPage())
+        self.addPage(BFinalPage.BFinalPage())
     
     def _connectSignals(self):
         self.connect(self, SIGNAL("currentIdChanged(int)"), self._pageChanged)
     
     def _pageChanged(self, pageId):
-        prevPage = self.page(pageId - 1)
-        if prevPage is not None:
-            prevPage.saveData()
+        prev_page = self.page(pageId - 1)
+        if prev_page is not None:
+            prev_page.saveData()
         page = self.page(pageId)
         if page is not None:
-            page.reloadData()
\ No newline at end of file
+            page.reloadData()
+    
+    def project(self):
+        return copy.deepcopy(QApplication.instance().project)