X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=wizard%2FBVersionPage.py;h=04a956d0c88975012e73b09c20d34e71cf678b38;hb=72789b9f8ed050ed97c3e66a9aa707740f6656f2;hp=ed44d48bd242c6bff9c6b3bbeafed12e77a0fb15;hpb=3fec1cb20c598e4d47ba1ddbcad74d9a2d7271e5;p=bertos.git diff --git a/wizard/BVersionPage.py b/wizard/BVersionPage.py index ed44d48b..04a956d0 100644 --- a/wizard/BVersionPage.py +++ b/wizard/BVersionPage.py @@ -100,6 +100,10 @@ class BVersionPage(BWizardPage): """ Slot called when the user select an entry from the version list. """ + if self.isDefaultVersion(self.currentVersion()): + self.disableRemoveButton() + else: + self.enableRemoveButton() self.emit(SIGNAL("completeChanged()")) def updateClicked(self): @@ -166,6 +170,18 @@ class BVersionPage(BWizardPage): if not selected: self.setCurrentItem(self.latestVersionItem()) + def disableRemoveButton(self): + """ + Disable the Remove button. + """ + self.pageContent.removeButton.setEnabled(False) + + def enableRemoveButton(self): + """ + Enable the Remove button. + """ + self.pageContent.removeButton.setEnabled(True) + def latestVersionItem(self): """ Returns the latest BeRTOS version founded. @@ -183,4 +199,27 @@ class BVersionPage(BWizardPage): """ Select the given item in the version list. """ - self.pageContent.versionList.setCurrentItem(item) \ No newline at end of file + self.pageContent.versionList.setCurrentItem(item) + + def currentItem(self): + """ + Returns the current selected item. + """ + return self.pageContent.versionList.currentItem() + + def currentVersion(self): + """ + Return the path of the selected version. + """ + current = self.currentItem() + return qvariant_converter.getString(current.data(Qt.UserRole)) + + def isDefaultVersion(self, version): + """ + Returns True if the given version is one of the default versions. + """ + if os.name == "nt": + import winreg_importer + if version in winreg_importer.getBertosDirs(): + return True + return False \ No newline at end of file