Add bigger image in intro page and remove scaling code.
[bertos.git] / wizard / BModulePage.py
index 9c13a2cc01402688b69ba71b70faef78d1d1f27e..ad6fee500fa3111deb5cfcb95f6fc5289f708970 100644 (file)
@@ -80,7 +80,6 @@ class BModulePage(BWizardPage):
         self.connect(self.pageContent.moduleTree, SIGNAL("itemPressed(QTreeWidgetItem*, int)"), self.fillPropertyTable)
         self.connect(self.pageContent.moduleTree, SIGNAL("itemPressed(QTreeWidgetItem*, int)"), self.moduleClicked)
         self.connect(self.pageContent.moduleTree, SIGNAL("itemChanged(QTreeWidgetItem*, int)"), self.dependencyCheck)
-        self.connect(self.pageContent.propertyTable, SIGNAL("itemSelectionChanged()"), self.showPropertyDescription)
 
     def reloadData(self):
         """
@@ -147,6 +146,8 @@ class BModulePage(BWizardPage):
                     # Set the row count to the current index + 1
                     self.pageContent.propertyTable.setRowCount(index + 1)
                     item = QTableWidgetItem(configurations[property]["brief"])
+                    item.setFlags(item.flags() & ~Qt.ItemIsSelectable)
+                    item.setToolTip(property)
                     item.setData(Qt.UserRole, qvariant_converter.convertString(property))
                     self.pageContent.propertyTable.setItem(index, 0, item)
                     if "type" in configurations[property]["informations"] and configurations[property]["informations"]["type"] == "boolean":
@@ -219,10 +220,11 @@ class BModulePage(BWizardPage):
         """
         Loads the module data.
         """
-        # Load the module data only if it isn't already loaded
-        if not self.projectInfo("MODULES") \
-                and not self.projectInfo("LISTS") \
-                and not self.projectInfo("CONFIGURATIONS"):
+        # Do not load the module data again when the Wizard is in editing mode
+        # or when it's working on a preset.
+        if not self.project.edit and not self.project.from_preset:
+            # Load the module data every time so that if the user changed the cpu
+            # the right configurations are picked up.
             try:
                 self.project.loadModuleData()
             except ModuleDefineException, e:
@@ -376,7 +378,12 @@ class BModulePage(BWizardPage):
         """
         Returns the configuration for the selected module.
         """
-        configuration = self.projectInfo("MODULES")[module]["configuration"]
+        configuration = []
+        if module:
+            # On linux platform it seems that the behaviour of the focus
+            # changing is a bit different from the mac one. So if module is
+            # None then no configurations should be returned.
+            configuration = self.projectInfo("MODULES")[module]["configuration"]
         if len(configuration) > 0:
             return self.projectInfo("CONFIGURATIONS")[configuration]
         else: