From e710a326314184f31cd50d4637959f44232a74ee Mon Sep 17 00:00:00 2001 From: tkellner Date: Wed, 10 Apr 2013 18:52:37 +0000 Subject: State Machine stuff git-svn-id: https://joinup.ec.europa.eu/svn/pdf-over/trunk@20 174cde9d-5d70-4d2a-aa98-46368bc2aaf7 --- .../gui/workflow/states/BKUSelectionState.java | 62 ++++++++++++++++++---- 1 file changed, 52 insertions(+), 10 deletions(-) (limited to 'pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/BKUSelectionState.java') diff --git a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/BKUSelectionState.java b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/BKUSelectionState.java index fdd160ac..2bd3361d 100644 --- a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/BKUSelectionState.java +++ b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/BKUSelectionState.java @@ -16,8 +16,11 @@ package at.asit.pdfover.gui.workflow.states; //Imports +import org.eclipse.swt.SWT; import org.slf4j.Logger; import org.slf4j.LoggerFactory; + +import at.asit.pdfover.gui.components.BKUSelectionComposite; import at.asit.pdfover.gui.workflow.Workflow; import at.asit.pdfover.gui.workflow.WorkflowState; @@ -26,26 +29,65 @@ import at.asit.pdfover.gui.workflow.WorkflowState; */ public class BKUSelectionState extends WorkflowState { + /** + * Enumeration of available BKU type + */ + public enum BKUS { + /** + * Local bku + */ + LOCAL, + + /** + * Mobile bku + */ + MOBILE, + + /** + * None bku + */ + NONE + } + /** * SFL4J Logger instance **/ @SuppressWarnings("unused") private static final Logger log = LoggerFactory.getLogger(BKUSelectionState.class); + private BKUSelectionComposite selectionComposite = null; + + private BKUSelectionComposite getSelectionComposite(Workflow workflow) { + if (this.selectionComposite == null) { + this.selectionComposite = new BKUSelectionComposite( + workflow.getComposite(), SWT.RESIZE, workflow); + } + + return this.selectionComposite; + } + @Override public void update(Workflow workflow) { - // TODO Auto-generated method stub - this.setNextState(state) - } + if(workflow.getSelectedBKU() == BKUS.NONE) { + BKUSelectionComposite selection = this + .getSelectionComposite(workflow); - /* (non-Javadoc) - * @see at.asit.pdfover.gui.workflow.WorkflowState#hideGUI() - */ - @Override - public void hideGUI() { - // TODO Auto-generated method stub + workflow.setTopControl(selection); + selection.layout(); + + workflow.setSelectedBKU(selection.getSelected()); + if(workflow.getSelectedBKU() == BKUS.NONE) { + this.setNextState(this); + return; + } + } + this.setNextState(new PrepareSigningState()); + } + + @Override + public String toString() { + return "BKUSelectionState"; } - } -- cgit v1.2.3