X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=wizard%2FBFolderPage.py;h=7de7fc73ff508bd430d87d926556436986d83301;hb=8b2b3759daf3222963cbb3cd4364fef556622e87;hp=f92b457743b4c47290ef9103a4836e6d3641fb5c;hpb=5869df5617befd9ae3812e60bc50bb531b2d6e42;p=bertos.git diff --git a/wizard/BFolderPage.py b/wizard/BFolderPage.py index f92b4577..7de7fc73 100644 --- a/wizard/BFolderPage.py +++ b/wizard/BFolderPage.py @@ -15,18 +15,24 @@ from PyQt4.QtGui import * from BWizardPage import * import bertos_utils +from const import * + class BFolderPage(BWizardPage): def __init__(self): - BWizardPage.__init__(self, "dir_select.ui") + BWizardPage.__init__(self, UI_LOCATION + "/dir_select.ui") self.setTitle(self.tr("Select the project name")) self._initializeAttributes() + self._setupUi() self._connectSignals() + def _setupUi(self): + self.pageContent.warningLabel.setVisible(False) + def _initializeAttributes(self): - self._projectName = "" - self._destinationFolder = os.path.expanduser("~") - self.pageContent.directoryEdit.setText(self._destinationFolder) + self._project_name = "" + self._destination_folder = os.path.expanduser("~") + self.pageContent.directoryEdit.setText(self._destination_folder) def _connectSignals(self): self.connect(self.pageContent.nameEdit, SIGNAL("textChanged(const QString)"), self._nameChanged) @@ -34,30 +40,39 @@ class BFolderPage(BWizardPage): self.connect(self.pageContent.directoryButton, SIGNAL("clicked()"), self._selectDirectory) def _nameChanged(self, name): - self._projectName = str(name).replace(" ", "_") + self._project_name = str(name).replace(" ", "_") self._setProjectPath() def _directoryChanged(self, directory): - self._destinationFolder = str(directory) + self._destination_folder = str(QDir.toNativeSeparators(directory)) self._setProjectPath() def _setProjectPath(self): - if self._destinationFolder != "" and self._projectName <> "": - if not self._destinationFolder.endswith(os.sep): - self._destinationFolder += os.sep - self.pageContent.projectPath.setText(self._destinationFolder + self._projectName + "/") + if self._destination_folder != "" and self._project_name <> "": + if not self._destination_folder.endswith(os.sep): + self._destination_folder += "/" + self.pageContent.projectPath.setText(QDir.toNativeSeparators(self._destination_folder + self._project_name)) + if os.path.exists(self._destination_folder + self._project_name): + self.pageContent.warningLabel.setVisible(True) + self.pageContent.warningLabel.setText(self.tr("Warning: the selected directory exists, \ + it will be destroyed with all contained subdirectories and files...")) + else: + self.pageContent.warningLabel.setVisible(False) + self.pageContent.warningLabel.setText("") else: self.pageContent.projectPath.setText("None") + self.pageContent.warningLabel.setVisible(False) + self.pageContent.warningLabel.setText("") self.emit(SIGNAL("completeChanged()")) def _selectDirectory(self): directory = unicode(QFileDialog.getExistingDirectory(self, self.tr("Open Directory"), "", QFileDialog.ShowDirsOnly)) - if len(directory) == "": + if len(directory) > 0: self.pageContent.directoryEdit.setText(directory) def isComplete(self): if self.pageContent.projectPath.text() != "None": - self._projectInfoStore("PROJECT_PATH", self.pageContent.projectPath.text()) + self._projectInfoStore("PROJECT_PATH", unicode(self.pageContent.projectPath.text())) return True else: return False \ No newline at end of file