Removed dynamic plugin system
[bertos.git] / wizard / BWizard.py
index 3ea2dac67a195fa68fecd88bfeb8192a153a6816..1f794fd3b388b09a73fc56f0a544a22b99d6ad85 100644 (file)
@@ -4,7 +4,7 @@
 # Copyright 2008 Develer S.r.l. (http://www.develer.com/)
 # All rights reserved.
 #
-# $Id:$
+# $Id$
 #
 # Author: Lorenzo Berni <duplo@develer.com>
 #
@@ -23,46 +23,46 @@ import BOutputPage
 import BCreationPage
 import BFinalPage
 
+try:
+    from version import wizard_version
+except ImportError:
+    wizard_version = "sandbox"
+
 class BWizard(QWizard):
     """
     Main class of the wizard. It adds the pages automatically.
     """
-    
-    def __init__(self):
+
+    def __init__(self, page_list):
         QWizard.__init__(self)
-        self.setWindowTitle(self.tr("Create a BeRTOS project"))
+        self.setWindowTitle(self.tr("Create a BeRTOS project - rev.%1").arg(wizard_version))
+        self.setWindowIcon(QIcon(":/images/appicon.png"))
         self.setOption(QWizard.DisabledBackButtonOnLastPage, True)
-        self.addPages()
+        self.addPages(page_list)
         self.connectSignals()
-    
-    def addPages(self):
+
+    def addPages(self, page_list):
         """
-        Method used by the constructor in order to add the pages in the wizard.
+        Adds the pages in the wizard.
         """
-        self.addPage(BFolderPage.BFolderPage())
-        self.addPage(BVersionPage.BVersionPage())
-        self.addPage(BCpuPage.BCpuPage())
-        self.addPage(BToolchainPage.BToolchainPage())
-        self.addPage(BModulePage.BModulePage())
-        self.addPage(BOutputPage.BOutputPage())
-        self.addPage(BCreationPage.BCreationPage())
-        self.addPage(BFinalPage.BFinalPage())
-    
+        for page in page_list:
+            self.addPage(page())
+
     def connectSignals(self):
         """
         Connects the signals with the related slots.
         """
         self.connect(self, SIGNAL("currentIdChanged(int)"), self.pageChanged)
-    
+
     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:
+        if page:
             page.reloadData()
-    
+
     def project(self):
         """
         Returns the BProject associated with the wizard.