Don't permit to use non ascii character in destination directory field.
[bertos.git] / wizard / BFolderPage.py
index 9eda8b717661dacfc915f0aee84f04791b7eea62..0014a886056c0efa138bd630a85275de9fbe0ecb 100644 (file)
@@ -91,14 +91,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,7 +117,7 @@ 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))
 
     ####