Remove _ from method names
[bertos.git] / wizard / BWizard.py
index a9bff88f0990f5e4caf90bf2709301ef9194ac4e..3ea2dac67a195fa68fecd88bfeb8192a153a6816 100644 (file)
@@ -21,18 +21,24 @@ import BToolchainPage
 import BModulePage
 import BOutputPage
 import BCreationPage
+import BFinalPage
 
 class BWizard(QWizard):
+    """
+    Main class of the wizard. It adds the pages automatically.
+    """
     
     def __init__(self):
         QWizard.__init__(self)
-        # TODO: choose the right minimum size
-        self.setMinimumSize(1000, 500)
         self.setWindowTitle(self.tr("Create a BeRTOS project"))
-        self._addPages()
-        self._connectSignals()
+        self.setOption(QWizard.DisabledBackButtonOnLastPage, True)
+        self.addPages()
+        self.connectSignals()
     
-    def _addPages(self):
+    def addPages(self):
+        """
+        Method used by the constructor in order to add the pages in the wizard.
+        """
         self.addPage(BFolderPage.BFolderPage())
         self.addPage(BVersionPage.BVersionPage())
         self.addPage(BCpuPage.BCpuPage())
@@ -40,17 +46,25 @@ class BWizard(QWizard):
         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 connectSignals(self):
+        """
+        Connects the signals with the related slots.
+        """
+        self.connect(self, SIGNAL("currentIdChanged(int)"), self.pageChanged)
     
-    def _pageChanged(self, pageId):
-        prevPage = self.page(pageId - 1)
-        if prevPage is not None:
-            prevPage.saveData()
+    def pageChanged(self, pageId):
+        """
+        Slot called when the user change the current page. It calls the reloadData
+        method of the next page.
+        """
         page = self.page(pageId)
         if page is not None:
             page.reloadData()
     
     def project(self):
-        return copy.deepcopy(QApplication.instance().project)
\ No newline at end of file
+        """
+        Returns the BProject associated with the wizard.
+        """
+        return copy.deepcopy(QApplication.instance().project)