Change the comment style for the modules and the list, and use the newParser to parse...
[bertos.git] / wizard / BModulePage.py
index 64f9fd0b4b72c2749fd42e4cf66879705982cdec..101aba6913883f768f5f97d1775e42f2adaecb5f 100644 (file)
@@ -39,23 +39,13 @@ class BModulePage(BWizardPage):
     
     def _loadModuleData(self):
         try:
-            modules = bertos_utils.loadModuleInfosDict(self._projectInfoRetrieve("SOURCES_PATH"))
-            lists = bertos_utils.loadDefineListsDict(self._projectInfoRetrieve("SOURCES_PATH"))
-            configurations = {}
-            for module, informations in modules.items():
-                if len(informations["configuration"]) > 0:
-                    configurations[informations["configuration"]] = bertos_utils.loadConfigurationInfos(self._projectInfoRetrieve("SOURCES_PATH") +
-                                                                                                        "/" + informations["configuration"])
+            bertos_utils.loadModuleData(self._project())
         except ModuleDefineException, e:
-            self._exceptionOccurred(self.tr("Error parsing module information in file %1").arg(e.parameter))
+            self._exceptionOccurred(self.tr("Error parsing module information in file %1").arg(e.path))
         except EnumDefineException, e:
-            self._exceptionOccurred(self.tr("Error parsing enum informations in file %1").arg(e.parameter))
+            self._exceptionOccurred(self.tr("Error parsing enum informations in file %1").arg(e.path))
         except ConfigurationDefineException, e:
-            self._exceptionOccurred(self.tr("Error parsing configuration informations in file %1").arg(e.parameter))
-        else:
-            self._projectInfoStore("MODULES", modules)
-            self._projectInfoStore("LISTS", lists)
-            self._projectInfoStore("CONFIGURATIONS", configurations)
+            self._exceptionOccurred(self.tr("Error parsing configuration informations in file %1, reading parameter %2").arg(e.path).arg(e.name))
     
     def _fillModuleTable(self):
         modules = self._projectInfoRetrieve("MODULES")
@@ -173,7 +163,10 @@ class BModulePage(BWizardPage):
     
     def _configurations(self, module):
         configuration = self._projectInfoRetrieve("MODULES")[module]["configuration"]
-        return self._projectInfoRetrieve("CONFIGURATIONS")[configuration]
+        if len(configuration) > 0:
+            return self._projectInfoRetrieve("CONFIGURATIONS")[configuration]
+        else:
+            return {}
     
     def _resetPropertyDescription(self):
         for index in range(self.pageContent.propertyTable.rowCount()):