summaryrefslogtreecommitdiff
path: root/trunk/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/StateMachineImpl.java
diff options
context:
space:
mode:
authortkellner <tkellner@3a0b52a2-8410-0410-bc02-ff6273a87459>2012-10-01 08:30:43 +0000
committertkellner <tkellner@3a0b52a2-8410-0410-bc02-ff6273a87459>2012-10-01 08:30:43 +0000
commitdaf7891de6360b416deece201b342a3de9f52a07 (patch)
treed1f1abf0d4f3c2991c5cc090dc227c112fcf87ef /trunk/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/StateMachineImpl.java
parente48b7b84c057762ce8e8fa43d26814711752d399 (diff)
downloadpdf-over-daf7891de6360b416deece201b342a3de9f52a07.tar.gz
pdf-over-daf7891de6360b416deece201b342a3de9f52a07.tar.bz2
pdf-over-daf7891de6360b416deece201b342a3de9f52a07.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://svn.iaik.tugraz.at/svn/egiz/prj/current/12PDF-OVER-4.0@12539 3a0b52a2-8410-0410-bc02-ff6273a87459
Diffstat (limited to 'trunk/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/StateMachineImpl.java')
-rw-r--r--trunk/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/StateMachineImpl.java25
1 files changed, 20 insertions, 5 deletions
diff --git a/trunk/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/StateMachineImpl.java b/trunk/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/StateMachineImpl.java
index ece1cf7f..44ffd7f4 100644
--- a/trunk/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/StateMachineImpl.java
+++ b/trunk/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;
+ }
}