From dc1dad9f59d3e25ee9d6e4a25098818a0f629d2f Mon Sep 17 00:00:00 2001 From: duplo Date: Wed, 22 Apr 2009 16:24:39 +0000 Subject: [PATCH 1/1] Disable the remove button if the selected toolchain is one of the default toolchains git-svn-id: https://src.develer.com/svnoss/bertos/trunk@2638 38d2e660-2303-0410-9eaa-f027e97ec537 --- wizard/BToolchainPage.py | 30 +++++++++++++++++++++++++++++- 1 file changed, 29 insertions(+), 1 deletion(-) diff --git a/wizard/BToolchainPage.py b/wizard/BToolchainPage.py index 6c7bebd2..5ce07789 100644 --- a/wizard/BToolchainPage.py +++ b/wizard/BToolchainPage.py @@ -87,6 +87,10 @@ class BToolchainPage(BWizardPage): infos.update(qvariant_converter.getStringDict(self.pageContent.toolchainList.currentItem().data(Qt.UserRole))) self.pageContent.infoLabel.setText("GCC " + infos["version"] + " (" + infos["build"] + ")\nTarget: " + infos["target"] + "\nPath: " + os.path.normpath(infos["path"])) self.pageContent.infoLabel.setVisible(True) + if self.isDefaultToolchain(infos): + self.disableRemoveButton() + else: + self.enableRemoveButton() self.emit(SIGNAL("completeChanged()")) def addToolchain(self): @@ -236,4 +240,28 @@ class BToolchainPage(BWizardPage): self._invalidItem(i) toolchains = self.toolchains() toolchains[filename] = True - self.setToolchains(toolchains) \ No newline at end of file + self.setToolchains(toolchains) + + def isDefaultToolchain(self, toolchain): + """ + Returns True if the given toolchain is one of the default toolchains. + """ + if os.name == "nt": + import winreg_importer + stored_toolchains = [toolchain[0] for toolchain in winreg_importer.getBertosToolchains()] + if toolchain["path"] in stored_toolchains: + return True + return False + + def disableRemoveButton(self): + """ + Disable the remove button. + """ + self.pageContent.removeButton.setEnabled(False) + + def enableRemoveButton(self): + """ + Enable the remove button. + """ + self.pageContent.removeButton.setEnabled(True) + \ No newline at end of file -- 2.25.1