Project/Project.py

changeset 4041
f31399df3082
parent 4021
195a471c327b
child 4050
c8594f4f1b71
--- a/Project/Project.py	Thu Jan 15 19:46:27 2015 +0100
+++ b/Project/Project.py	Fri Jan 16 19:43:56 2015 +0100
@@ -2144,8 +2144,18 @@
                 
                 self.saveProject()
             else:
-                # create management directory if not present
-                self.createProjectManagementDir()
+                try:
+                    # create management directory if not present
+                    self.createProjectManagementDir()
+                except EnvironmentError:
+                    E5MessageBox.critical(
+                        self.ui,
+                        self.tr("Create project management directory"),
+                        self.tr(
+                            "<p>The project directory <b>{0}</b> is not"
+                            " writable.</p>")
+                        .format(self.ppath))
+                    return
                 
                 try:
                     ms = os.path.join(self.ppath, self.pdata["MAINSCRIPT"][0])
@@ -2153,7 +2163,7 @@
                         try:
                             f = open(ms, "w")
                             f.close()
-                        except IOError as err:
+                        except EnvironmentError as err:
                             E5MessageBox.critical(
                                 self.ui,
                                 self.tr("Create main script"),
@@ -2579,8 +2589,18 @@
                     QApplication.restoreOverrideCursor()
                     QApplication.processEvents()
                     
-                    # create the management directory if not present
-                    self.createProjectManagementDir()
+                    try:
+                        # create management directory if not present
+                        self.createProjectManagementDir()
+                    except EnvironmentError:
+                        E5MessageBox.critical(
+                            self.ui,
+                            self.tr("Create project management directory"),
+                            self.tr(
+                                "<p>The project directory <b>{0}</b> is not"
+                                " writable.</p>")
+                            .format(self.ppath))
+                        return
                     
                     # read a user specific project file
                     self.__readUserProperties()
@@ -2777,7 +2797,7 @@
             self.projectClosed.emit()
             self.projectOpenedHooks.emit()
             self.projectOpened.emit()
-            return True
+            return ok
         else:
             return False
     

eric ide

mercurial