diff options
Diffstat (limited to 'pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/BKUSelectionState.java')
-rw-r--r-- | pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/BKUSelectionState.java | 62 |
1 files changed, 52 insertions, 10 deletions
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; @@ -27,25 +30,64 @@ 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"; } - } |