Correct distraction error
[bertos.git] / wizard / BFolderPage.py
index 374b231da7c5ff8c8c96fac6487ca5bdc7a9313a..e1af7e3278f8db5cbdb00de0675b4f8f67b3ba10 100644 (file)
@@ -23,8 +23,12 @@ class BFolderPage(BWizardPage):
         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("~")
@@ -40,21 +44,30 @@ class BFolderPage(BWizardPage):
         self._setProjectPath()
     
     def _directoryChanged(self, directory):
-        self._destinationFolder = str(directory)
+        self._destinationFolder = 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)
+                self._destinationFolder += "/"
+            self.pageContent.projectPath.setText(QDir.toNativeSeparators(self._destinationFolder + self._projectName))
+            if os.path.exists(self._destinationFolder + self._projectName):
+                self.pageContent.warningLabel.setVisible(True)
+                self.pageContent.warningLabel.setText(self.tr("<font color='#FF0000'>Warning: the selected directory exists, \
+                    it will be destroyed with all contained subdirectories and files...</font>"))
+            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):