Fix error message.
[bertos.git] / wizard / BCpuPage.py
index 463e333fa7c4954b394c15b0691fe55b92d943d7..4a5fcf6fda2e8fdbc11623abf75b14c6d9b52e61 100644 (file)
@@ -61,12 +61,14 @@ class BCpuPage(BWizardPage):
             self.pageContent.frequencySpinBox.setVisible(True)
             infos = qvariant_converter.getDict(self.pageContent.cpuList.currentItem().data(Qt.UserRole))
             for key, value in infos.items():
-               if key in CPU_DEF:
-                   if type(CPU_DEF[key]) == list:
-                       infos[key] = qvariant_converter.getStringList(value)
-                   if type(CPU_DEF[key]) == str or type(CPU_DEF) == unicode:
-                       infos[key] = qvariant_converter.getString(value)
-               else:
+                if key in CPU_DEF:
+                    if type(CPU_DEF[key]) == list:
+                        infos[key] = qvariant_converter.getStringList(value)
+                    if type(CPU_DEF[key]) == str or type(CPU_DEF) == unicode:
+                        infos[key] = qvariant_converter.getString(value)
+                elif key.startswith(MK_PARAM_ID):
+                    infos[key] = qvariant_converter.getString(value)
+                else:
                     del infos[key]
             self.setProjectInfo("CPU_INFOS", infos)
             self.setProjectInfo("CPU_NAME", unicode(self.pageContent.cpuList.currentItem().text()))
@@ -91,10 +93,11 @@ class BCpuPage(BWizardPage):
         Overload of the BWizardPage setupUi method.
         """
         self.pageContent.cpuList.setSortingEnabled(True)
-        self.pageContent.descriptionLabel.setVisible(False)
-        self.pageContent.descriptionLabel.setText("")
         self.pageContent.frequencyLabel.setVisible(False)
         self.pageContent.frequencySpinBox.setVisible(False)
+        preset_advanced = self.projectInfo("PRESET_ADVANCED_CONFIG")
+        if preset_advanced:
+            self.pageContent.cpuList.setEnabled(False)
 
     def connectSignals(self):
         """
@@ -107,18 +110,20 @@ class BCpuPage(BWizardPage):
         """
         Overload of the BWizardPage reloadData method.
         """
-        QApplication.instance().setOverrideCursor(Qt.WaitCursor)
-        bertos_utils.loadSourceTree(self.project())
-        self.populateCpuList()
-        cpu_name = self.projectInfo("CPU_NAME")
-        selected_freq = self.projectInfo("SELECTED_FREQ")
-        self.setupUi()
-        if cpu_name:
-            self.selectItem(cpu_name)
-            if selected_freq:
-                self.setFrequency(selected_freq)
-                self.freq_modified = True
-        QApplication.instance().restoreOverrideCursor()
+        try:
+            QApplication.instance().setOverrideCursor(Qt.WaitCursor)
+            self.project.loadSourceTree()
+            self.populateCpuList()
+            cpu_name = self.projectInfo("CPU_NAME")
+            selected_freq = self.projectInfo("SELECTED_FREQ")
+            self.setupUi()
+            if cpu_name:
+                self.selectItem(cpu_name)
+                if selected_freq:
+                    self.setFrequency(selected_freq)
+                    self.freq_modified = True
+        finally:
+            QApplication.instance().restoreOverrideCursor()
         self.emit(SIGNAL("completeChanged()"))
 
     ####
@@ -156,7 +161,7 @@ class BCpuPage(BWizardPage):
         """
         self.pageContent.cpuList.clear()
         self.pageContent.cpuList.setCurrentItem(None)
-        infos = bertos_utils.loadCpuInfos(self.project())
+        infos = self.project.getCpuInfos()
         tag_list = bertos_utils.getTagSet(infos)
         # Create, fill and store the dict with the tags
         tag_dict = {}