2137 # create management directory if not present |
2137 # create management directory if not present |
2138 self.createProjectManagementDir() |
2138 self.createProjectManagementDir() |
2139 |
2139 |
2140 self.saveProject() |
2140 self.saveProject() |
2141 else: |
2141 else: |
2142 # create management directory if not present |
2142 try: |
2143 self.createProjectManagementDir() |
2143 # create management directory if not present |
|
2144 self.createProjectManagementDir() |
|
2145 except EnvironmentError: |
|
2146 E5MessageBox.critical( |
|
2147 self.ui, |
|
2148 self.tr("Create project management directory"), |
|
2149 self.tr( |
|
2150 "<p>The project directory <b>{0}</b> is not" |
|
2151 " writable.</p>") |
|
2152 .format(self.ppath)) |
|
2153 return |
2144 |
2154 |
2145 try: |
2155 try: |
2146 ms = os.path.join(self.ppath, self.pdata["MAINSCRIPT"][0]) |
2156 ms = os.path.join(self.ppath, self.pdata["MAINSCRIPT"][0]) |
2147 if not os.path.exists(ms): |
2157 if not os.path.exists(ms): |
2148 try: |
2158 try: |
2149 f = open(ms, "w") |
2159 f = open(ms, "w") |
2150 f.close() |
2160 f.close() |
2151 except IOError as err: |
2161 except EnvironmentError as err: |
2152 E5MessageBox.critical( |
2162 E5MessageBox.critical( |
2153 self.ui, |
2163 self.ui, |
2154 self.tr("Create main script"), |
2164 self.tr("Create main script"), |
2155 self.tr( |
2165 self.tr( |
2156 "<p>The mainscript <b>{0}</b> could not" |
2166 "<p>The mainscript <b>{0}</b> could not" |
2572 self.updateFileTypes() |
2582 self.updateFileTypes() |
2573 |
2583 |
2574 QApplication.restoreOverrideCursor() |
2584 QApplication.restoreOverrideCursor() |
2575 QApplication.processEvents() |
2585 QApplication.processEvents() |
2576 |
2586 |
2577 # create the management directory if not present |
2587 try: |
2578 self.createProjectManagementDir() |
2588 # create management directory if not present |
|
2589 self.createProjectManagementDir() |
|
2590 except EnvironmentError: |
|
2591 E5MessageBox.critical( |
|
2592 self.ui, |
|
2593 self.tr("Create project management directory"), |
|
2594 self.tr( |
|
2595 "<p>The project directory <b>{0}</b> is not" |
|
2596 " writable.</p>") |
|
2597 .format(self.ppath)) |
|
2598 return |
2579 |
2599 |
2580 # read a user specific project file |
2600 # read a user specific project file |
2581 self.__readUserProperties() |
2601 self.__readUserProperties() |
2582 |
2602 |
2583 QApplication.setOverrideCursor(QCursor(Qt.WaitCursor)) |
2603 QApplication.setOverrideCursor(QCursor(Qt.WaitCursor)) |
2770 self.menuSessionAct.setEnabled(ok) |
2790 self.menuSessionAct.setEnabled(ok) |
2771 self.projectClosedHooks.emit() |
2791 self.projectClosedHooks.emit() |
2772 self.projectClosed.emit() |
2792 self.projectClosed.emit() |
2773 self.projectOpenedHooks.emit() |
2793 self.projectOpenedHooks.emit() |
2774 self.projectOpened.emit() |
2794 self.projectOpened.emit() |
2775 return True |
2795 return ok |
2776 else: |
2796 else: |
2777 return False |
2797 return False |
2778 |
2798 |
2779 def checkDirty(self): |
2799 def checkDirty(self): |
2780 """ |
2800 """ |