+ self.PB_Ok.setEnabled(True)
+ self.PB_Cancel.setEnabled(False)
+ exit_code = self.monExe.exitCode()
+ if exit_code == 0 and not self.anErrorOccured:
+ self.parent().enregistreResultat()
+ elif not self.hasBeenCanceled:
+ if os.path.exists(self.parent().fichierOut):
+ self.parent().enregistreResultat()
+ QMessageBox.critical(self, 'Computation ended in error',
+ 'A new mesh has been generated but with some errors.'+
+ '<br>Please, check the log message.')
+ else:
+ QMessageBox.critical(self, 'Computation failed',
+ 'The computation has failed.<br>Please, check the log message.')
+ pass
+
+ def errorOccured(self):
+ # for instance if the executable is not found
+ self.anErrorOccured = True
+ self.finished()
+
+ def cancelComputation(self):
+ self.hasBeenCanceled = True
+ self.monExe.kill()
+