X-Git-Url: https://codewiz.org/gitweb?a=blobdiff_plain;f=wizard%2FBFinalPage.py;h=020b5a58a61ed7eb3b6b1a42c49508c792a76d9b;hb=d9fdfbea6ecefc528ec1e4d8152a544227598c3b;hp=3f1a9e02d6359dbe0d91a26abc6872702106084a;hpb=df3bd7f742da8c015304fa21e01eb966ff76a089;p=bertos.git diff --git a/wizard/BFinalPage.py b/wizard/BFinalPage.py index 3f1a9e02..020b5a58 100644 --- a/wizard/BFinalPage.py +++ b/wizard/BFinalPage.py @@ -54,12 +54,26 @@ class BFinalPage(BWizardPage): ## Overloaded BWizardPage methods ## def reloadData(self): + self.setVisible(False) """ Overload of the BWizardPage reloadData method. """ - QApplication.instance().setOverrideCursor(Qt.WaitCursor) - bertos_utils.createBertosProject(self.project()) - QApplication.instance().restoreOverrideCursor() + try: + QApplication.instance().setOverrideCursor(Qt.WaitCursor) + try: + # This operation can throw WindowsError, if the directory is + # locked. + self.project.createBertosProject() + except OSError, e: + QMessageBox.critical( + self, + self.tr("Error removing destination directory"), + self.tr("Error removing the destination directory. This directory or a file in it is in use by another user or application.\nClose the application which is using the directory and retry.")) + self.wizard().back() + return + finally: + QApplication.instance().restoreOverrideCursor() + self.setVisible(True) self._plugin_dict = {} if os.name == "nt": output = self.projectInfo("OUTPUT")