2142 # create management directory if not present |
2142 # create management directory if not present |
2143 self.createProjectManagementDir() |
2143 self.createProjectManagementDir() |
2144 |
2144 |
2145 self.saveProject() |
2145 self.saveProject() |
2146 else: |
2146 else: |
2147 # create management directory if not present |
2147 try: |
2148 self.createProjectManagementDir() |
2148 # create management directory if not present |
|
2149 self.createProjectManagementDir() |
|
2150 except EnvironmentError: |
|
2151 E5MessageBox.critical( |
|
2152 self.ui, |
|
2153 self.tr("Create project management directory"), |
|
2154 self.tr( |
|
2155 "<p>The project directory <b>{0}</b> is not" |
|
2156 " writable.</p>") |
|
2157 .format(self.ppath)) |
|
2158 return |
2149 |
2159 |
2150 try: |
2160 try: |
2151 ms = os.path.join(self.ppath, self.pdata["MAINSCRIPT"][0]) |
2161 ms = os.path.join(self.ppath, self.pdata["MAINSCRIPT"][0]) |
2152 if not os.path.exists(ms): |
2162 if not os.path.exists(ms): |
2153 try: |
2163 try: |
2154 f = open(ms, "w") |
2164 f = open(ms, "w") |
2155 f.close() |
2165 f.close() |
2156 except IOError as err: |
2166 except EnvironmentError as err: |
2157 E5MessageBox.critical( |
2167 E5MessageBox.critical( |
2158 self.ui, |
2168 self.ui, |
2159 self.tr("Create main script"), |
2169 self.tr("Create main script"), |
2160 self.tr( |
2170 self.tr( |
2161 "<p>The mainscript <b>{0}</b> could not" |
2171 "<p>The mainscript <b>{0}</b> could not" |
2577 self.updateFileTypes() |
2587 self.updateFileTypes() |
2578 |
2588 |
2579 QApplication.restoreOverrideCursor() |
2589 QApplication.restoreOverrideCursor() |
2580 QApplication.processEvents() |
2590 QApplication.processEvents() |
2581 |
2591 |
2582 # create the management directory if not present |
2592 try: |
2583 self.createProjectManagementDir() |
2593 # create management directory if not present |
|
2594 self.createProjectManagementDir() |
|
2595 except EnvironmentError: |
|
2596 E5MessageBox.critical( |
|
2597 self.ui, |
|
2598 self.tr("Create project management directory"), |
|
2599 self.tr( |
|
2600 "<p>The project directory <b>{0}</b> is not" |
|
2601 " writable.</p>") |
|
2602 .format(self.ppath)) |
|
2603 return |
2584 |
2604 |
2585 # read a user specific project file |
2605 # read a user specific project file |
2586 self.__readUserProperties() |
2606 self.__readUserProperties() |
2587 |
2607 |
2588 QApplication.setOverrideCursor(QCursor(Qt.WaitCursor)) |
2608 QApplication.setOverrideCursor(QCursor(Qt.WaitCursor)) |
2775 self.menuSessionAct.setEnabled(ok) |
2795 self.menuSessionAct.setEnabled(ok) |
2776 self.projectClosedHooks.emit() |
2796 self.projectClosedHooks.emit() |
2777 self.projectClosed.emit() |
2797 self.projectClosed.emit() |
2778 self.projectOpenedHooks.emit() |
2798 self.projectOpenedHooks.emit() |
2779 self.projectOpened.emit() |
2799 self.projectOpened.emit() |
2780 return True |
2800 return ok |
2781 else: |
2801 else: |
2782 return False |
2802 return False |
2783 |
2803 |
2784 def checkDirty(self): |
2804 def checkDirty(self): |
2785 """ |
2805 """ |