to use. This page show some pieces of information about the version.
"""
- def __init__(self):
+ def __init__(self, edit=False):
+ self._edit = edit
BWizardPage.__init__(self, UI_LOCATION + "/bertos_versions.ui")
- self.setTitle(self.tr("Select the BeRTOS directory"))
- self.setSubTitle(self.tr("The project created will be based on the BeRTOS version found"))
+ self.setTitle(self.tr("Select BeRTOS version"))
+ self.setSubTitle(self.tr("Your project will be created with the specified BeRTOS version"))
## Overloaded QWizardPage methods ##
# Remove the trailing slash
if sources_path.endswith(os.sep):
sources_path = sources_path[:-1]
- self.setProjectInfo("SOURCES_PATH", sources_path)
+ self.setProjectInfo("BERTOS_PATH", sources_path)
return True
else:
return False
"""
Overload of the BWizardPage connectSignals method.
"""
- self.connect(self.pageContent.versionList, SIGNAL("itemSelectionChanged()"), self.rowChanged)
+ self.connect(self.pageContent.versionList, SIGNAL("currentItemChanged(QListWidgetItem *, QListWidgetItem*)"), self.rowChanged)
self.connect(self.pageContent.addButton, SIGNAL("clicked()"), self.addVersion)
self.connect(self.pageContent.removeButton, SIGNAL("clicked()"), self.removeVersion)
# Fake signal connection for the update button
self.connect(self.pageContent.updateButton, SIGNAL("clicked()"), self.updateClicked)
- def reloadData(self):
+ def reloadData(self, previous_id=None):
"""
Overload of the BWizardPage reloadData method.
"""
Slot called when the user remove a BeRTOS version.
"""
item = self.pageContent.versionList.takeItem(self.pageContent.versionList.currentRow())
- self.deleteVersion(qvariant_converter.getString(item.data(Qt.UserRole)))
+ if item:
+ self.deleteVersion(qvariant_converter.getString(item.data(Qt.UserRole)))
self.emit(SIGNAL("completeChanged()"))
def rowChanged(self):
"""
Removes the given directory from the QSettings.
"""
- versions = self.versions()
- versions.remove(directory)
+ versions = [os.path.normpath(path) for path in self.versions()]
+ versions.remove(os.path.normpath(directory))
self.setVersions(versions)
def resetVersionList(self):
versions = set([])
if os.name == "nt":
import winreg_importer
- versions |= set(winreg_importer.getBertosDirs())
- versions |= set(self.versions())
- selected = self.projectInfo("SOURCES_PATH")
+ versions |= set([os.path.normpath(dir) for dir in winreg_importer.getBertosDirs()])
+ versions |= set([os.path.normpath(dir) for dir in self.versions()])
+ selected = self.projectInfo("BERTOS_PATH")
for directory in versions:
item = self.insertListElement(directory)
if selected and selected == directory:
latest_version_item = None
for index in range(self.pageContent.versionList.count()):
item = self.pageContent.versionList.item(index)
+ if not latest_version_item:
+ latest_version_item = item
version = item.text().split(" (")[0]
latest = latest_version_item.text().split(" (")[0]
if version != "UNKNOWN" and version > latest:
Return the path of the selected version.
"""
current = self.currentItem()
- return qvariant_converter.getString(current.data(Qt.UserRole))
+ if current:
+ return qvariant_converter.getString(current.data(Qt.UserRole))
+ else:
+ return None
def isDefaultVersion(self, version):
"""
import winreg_importer
if version in winreg_importer.getBertosDirs():
return True
- return False
\ No newline at end of file
+ return False
+