X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=wizard%2FBCpuPage.py;h=2d616d53fa900d767255c1ea71b4de36338de4a3;hb=081a88733d3d278a1001ddb718121bbefe577c37;hp=f35790b8bb7257cda82110546f671fe6db921bed;hpb=2fab4324b03a9f916e71a214845f7da18c3969b3;p=bertos.git diff --git a/wizard/BCpuPage.py b/wizard/BCpuPage.py index f35790b8..2d616d53 100644 --- a/wizard/BCpuPage.py +++ b/wizard/BCpuPage.py @@ -12,6 +12,7 @@ from BWizardPage import * import bertos_utils +import qvariant_converter class BCpuPage(BWizardPage): @@ -27,9 +28,7 @@ class BCpuPage(BWizardPage): infos = bertos_utils.loadCpuInfos(self._projectInfoRetrieve("SOURCES_PATH")) for cpu in infos: item = QListWidgetItem(cpu["CPU_NAME"]) - # The CPU_DESC field in the cpu definition is a list of string, so we need to - # store it as a QStringList in a QVariant - item.setData(Qt.UserRole, QVariant(cpu)) + item.setData(Qt.UserRole, qvariant_converter.convertDict(cpu)) self.pageContent.cpuList.addItem(item) def _connectSignals(self): @@ -41,6 +40,7 @@ class BCpuPage(BWizardPage): self.pageContent.cpuList.setCurrentItem(elements[0]) def _setupUi(self): + self.pageContent.cpuList.setSortingEnabled(True) self.pageContent.descriptionLabel.setVisible(False) self.pageContent.descriptionLabel.setText("") @@ -54,17 +54,14 @@ class BCpuPage(BWizardPage): def isComplete(self): if self.pageContent.cpuList.currentRow() != -1: - self._projectInfoStore("CPU_INFOS", self.pageContent.cpuList.currentItem().data(Qt.UserRole).toMap()) + self._projectInfoStore("CPU_INFOS", qvariant_converter.getDict(self.pageContent.cpuList.currentItem().data(Qt.UserRole))) return True else: return False def rowChanged(self): - description = self.pageContent.cpuList.currentItem().data(Qt.UserRole).toMap() - # I don't like to use QString as key in the dict, but the QVariant.toMap() return a dict - description = description[QString("CPU_DESC")].toStringList() - # We need to convert the list of QString in a list of unicode - description = [unicode(line) for line in description] + description = qvariant_converter.getDict(self.pageContent.cpuList.currentItem().data(Qt.UserRole))["CPU_DESC"] + description = qvariant_converter.getStringList(description) self.pageContent.descriptionLabel.setText("
".join(description)) self.pageContent.descriptionLabel.setVisible(True) self.emit(SIGNAL("completeChanged()"))