summaryrefslogtreecommitdiff
path: root/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/StateMachineImpl.java
diff options
context:
space:
mode:
authortkellner <tkellner@174cde9d-5d70-4d2a-aa98-46368bc2aaf7>2013-04-10 18:57:50 +0000
committertkellner <tkellner@174cde9d-5d70-4d2a-aa98-46368bc2aaf7>2013-04-10 18:57:50 +0000
commit0708bf4d1e1a9046c82c221170b3dd3709e71141 (patch)
tree386515c4dc318da9b466580301e39164ea8eea65 /pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/StateMachineImpl.java
parentfdc0f9a9dfc7dabdc96bb830a079a353f160395c (diff)
downloadpdf-over-0708bf4d1e1a9046c82c221170b3dd3709e71141.tar.gz
pdf-over-0708bf4d1e1a9046c82c221170b3dd3709e71141.tar.bz2
pdf-over-0708bf4d1e1a9046c82c221170b3dd3709e71141.zip
Removed Error State and replaced it with ErrorDialog
To get a stable user experience in case of an error. ErrorDialog was improved to let the user decide if he wants to retry an action. git-svn-id: https://joinup.ec.europa.eu/svn/pdf-over/trunk@58 174cde9d-5d70-4d2a-aa98-46368bc2aaf7
Diffstat (limited to 'pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/StateMachineImpl.java')
-rw-r--r--pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/StateMachineImpl.java25
1 files changed, 20 insertions, 5 deletions
diff --git a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/StateMachineImpl.java b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/StateMachineImpl.java
index ece1cf7f..44ffd7f4 100644
--- a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/StateMachineImpl.java
+++ b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/StateMachineImpl.java
@@ -18,7 +18,7 @@ package at.asit.pdfover.gui.workflow;
//Imports
import java.lang.reflect.Constructor;
-import org.eclipse.swt.SWTException;
+import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
@@ -26,7 +26,7 @@ import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import at.asit.pdfover.gui.MainWindow;
-import at.asit.pdfover.gui.workflow.states.ErrorState;
+import at.asit.pdfover.gui.controls.ErrorDialog;
import at.asit.pdfover.gui.workflow.states.PrepareConfigurationState;
import at.asit.pdfover.gui.workflow.states.State;
@@ -86,9 +86,12 @@ public class StateMachineImpl implements StateMachine, GUIProvider {
current.run();
} catch (Exception e) {
log.error("StateMachine update: ", e); //$NON-NLS-1$
- ErrorState errorState = new ErrorState(this);
- errorState.setException(e);
- jumpToState(errorState);
+ ErrorDialog errorState = new ErrorDialog(this.getMainShell(),
+ SWT.NONE, "Unexpected Error", e, false);
+ //errorState.setException(e);
+ //jumpToState(errorState);
+ errorState.open();
+ this.exit();
}
if (this.exit) {
@@ -355,4 +358,16 @@ public class StateMachineImpl implements StateMachine, GUIProvider {
public ConfigManipulator getConfigManipulator() {
return this.configProvider;
}
+
+ /* (non-Javadoc)
+ * @see at.asit.pdfover.gui.workflow.GUIProvider#getMainShell()
+ */
+ @Override
+ public Shell getMainShell() {
+ if(this.shell == null) {
+ this.createMainWindow();
+ }
+
+ return this.shell;
+ }
}