self.pageContent.propertyTable.setRowCount(len(parameters))
for index, key in enumerate(parameters):
self.pageContent.propertyTable.setItem(index, 0, QTableWidgetItem(key))
- self.pageContent.propertyTable.setItem(index, 1, QTableWidgetItem(parameters[key]["value"]))
+ if "type" in parameters[key]["informations"].keys():
+ if parameters[key]["informations"]["type"] == "boolean":
+ checkBox = QCheckBox()
+ self.pageContent.propertyTable.setCellWidget(index, 1, checkBox)
+ checkBox.setChecked(parameters[key]["value"] == "1")
+ if parameters[key]["informations"]["type"] == "int":
+ spinBox = QSpinBox()
+ if "max" in parameters[key]["informations"].keys():
+ spinBox.setMaximum(int(parameters[key]["informations"]["max"]))
+ if "min" in parameters[key]["informations"].keys():
+ spinBox.setMinimum(int(parameters[key]["informations"]["min"]))
+ if "long" in parameters[key]["informations"].keys():
+ if bool(parameters[key]["informations"]["long"]):
+ spinBox.setSuffix("L")
+ self.pageContent.propertyTable.setCellWidget(index, 1, spinBox)
+ spinBox.setValue(int(parameters[key]["value"]))
+ else:
+ self.pageContent.propertyTable.setItem(index, 1, QTableWidgetItem(parameters[key]["value"]))
def moduleItemClicked(self):
module = unicode(self.pageContent.moduleList.currentItem().text())