X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=wizard%2FBFolderPage.py;h=7caf4382cfeb31795eb14293028bde91a9c51938;hb=77aa97eefef82a41e7bb5a8c4713016c700a6c54;hp=9eda8b717661dacfc915f0aee84f04791b7eea62;hpb=df3bd7f742da8c015304fa21e01eb966ff76a089;p=bertos.git diff --git a/wizard/BFolderPage.py b/wizard/BFolderPage.py index 9eda8b71..7caf4382 100644 --- a/wizard/BFolderPage.py +++ b/wizard/BFolderPage.py @@ -39,6 +39,9 @@ from PyQt4.QtGui import * from BWizardPage import * import bertos_utils +from BVersionPage import BVersionPage +from BBoardPage import BBoardPage + from const import * class BFolderPage(BWizardPage): @@ -61,9 +64,17 @@ class BFolderPage(BWizardPage): self.setDefaultFolder(self._destination_folder) if self.pageContent.projectPath.text() != "None": self.setProjectInfo("PROJECT_PATH", unicode(self.pageContent.projectPath.text())) + self.setProjectInfo("PROJECT_NAME", os.path.basename(unicode(self.pageContent.projectPath.text()))) return True else: return False + + def nextId(self): + """ + Overload of the QWizardPage nextId method. + """ + return self.wizard().pageIndex(self.next_page) + #### @@ -91,14 +102,24 @@ class BFolderPage(BWizardPage): """ Slot called when the project name is changed manually by the user. """ - self._project_name = str(name).replace(" ", "_") + try: + name = unicode(name).encode("ascii") + except UnicodeEncodeError: + name = self._project_name + self.pageContent.nameEdit.setText(name) + self._project_name = unicode(name).replace(" ", "_") self.setProjectPath() def directoryChanged(self, directory): """ Slot called when the project folder is changed manually by the user. """ - self._destination_folder = str(QDir.toNativeSeparators(directory)) + try: + directory = unicode(directory).encode("ascii") + except UnicodeEncodeError: + directory = self._destination_folder + self.pageContent.directoryEdit.setText(directory) + self._destination_folder = directory self.setProjectPath() def selectDirectory(self): @@ -107,9 +128,19 @@ class BFolderPage(BWizardPage): """ directory = unicode(QFileDialog.getExistingDirectory(self, self.tr("Open Directory"), self.pageContent.directoryEdit.text(), QFileDialog.ShowDirsOnly)) if len(directory) > 0: - self.pageContent.directoryEdit.setText(directory) + self.pageContent.directoryEdit.setText(QDir.toNativeSeparators(directory)) #### + + @property + def next_page(self): + """ + Contains the next page class. + """ + if self.pageContent.customButton.isChecked(): + return BVersionPage + else: + return BBoardPage def initializeAttributes(self): """