def _loadModuleData(self):
try:
- modules = bertos_utils.loadModuleInfosDict(self._project())
- lists = bertos_utils.loadDefineListsDict(self._project())
- 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.path))
+ self._exceptionOccurred(self.tr("Error parsing line '%2' in file %1").arg(e.path).arg(e.line))
except EnumDefineException, e:
- self._exceptionOccurred(self.tr("Error parsing enum informations in file %1").arg(e.path))
+ self._exceptionOccurred(self.tr("Error parsing line '%2' in file %1").arg(e.path).arg(e.line))
except ConfigurationDefineException, e:
- self._exceptionOccurred(self.tr("Error parsing configuration informations in file %1, reading parameter %2").arg(e.path).arg(e.name))
- else:
- self._projectInfoStore("MODULES", modules)
- self._projectInfoStore("LISTS", lists)
- self._projectInfoStore("CONFIGURATIONS", configurations)
+ self._exceptionOccurred(self.tr("Error parsing line '%2' in file %1").arg(e.path).arg(e.line))
def _fillModuleTable(self):
modules = self._projectInfoRetrieve("MODULES")
configurations = self._projectInfoRetrieve("CONFIGURATIONS")[configuration]
self.pageContent.propertyTable.setRowCount(len(configurations))
for index, property in enumerate(configurations):
- item = QTableWidgetItem(property)
+ item = QTableWidgetItem(configurations[property]["brief"])
item.setData(Qt.UserRole, qvariant_converter.convertString(property))
self.pageContent.propertyTable.setItem(index, 0, item)
if "type" in configurations[property]["informations"].keys() and configurations[property]["informations"]["type"] == "boolean":
def _resetPropertyDescription(self):
for index in range(self.pageContent.propertyTable.rowCount()):
propertyName = qvariant_converter.getString(self.pageContent.propertyTable.item(index, 0).data(Qt.UserRole))
- self.pageContent.propertyTable.item(index, 0).setText(propertyName)
+ # Awful solution! Needed because if the user change the module, the selection changed...
+ if propertyName not in self._currentModuleConfigurations().keys():
+ break
+ self.pageContent.propertyTable.item(index, 0).setText(self._currentModuleConfigurations()[propertyName]['brief'])
def _showPropertyDescription(self):
self._resetPropertyDescription()
configurations = self._currentModuleConfigurations()
if self._currentProperty() in configurations.keys():
- description = configurations[self._currentProperty()]["description"]
+ description = configurations[self._currentProperty()]["brief"]
name = self._currentProperty()
- self._currentPropertyItem().setText(name + "\n" + description)
+ self._currentPropertyItem().setText(description + "\n" + name)
def _setupUi(self):
self.pageContent.moduleTable.horizontalHeader().setResizeMode(QHeaderView.ResizeToContents)