summaryrefslogtreecommitdiff
path: root/pdf-over-gui/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'pdf-over-gui/src/main')
-rw-r--r--pdf-over-gui/src/main/java/at/asit/pdfover/gui/composites/PositioningComposite.java39
-rw-r--r--pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/PositioningState.java22
2 files changed, 48 insertions, 13 deletions
diff --git a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/composites/PositioningComposite.java b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/composites/PositioningComposite.java
index da18bb49..559c6b26 100644
--- a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/composites/PositioningComposite.java
+++ b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/composites/PositioningComposite.java
@@ -16,12 +16,17 @@
package at.asit.pdfover.gui.composites;
// Imports
+import java.io.File;
+import java.io.IOException;
+
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
-import org.eclipse.swt.widgets.Label;
+import org.icepdf.core.exceptions.PDFException;
+import org.icepdf.core.exceptions.PDFSecurityException;
import at.asit.pdfover.gui.workflow.states.State;
import at.asit.pdfover.signator.SignaturePosition;
@@ -32,6 +37,22 @@ import at.asit.pdfover.signator.SignaturePosition;
*/
public class PositioningComposite extends StateComposite {
+ private PDFViewerComposite viewer = null;
+
+ /**
+ * Set the PDF Document to display
+ * @param document document to display
+ * @throws PDFException Error parsing PDF document
+ * @throws PDFSecurityException Error decrypting PDF document (not supported)
+ * @throws IOException I/O Error
+ */
+ public void displayDocument(File document) throws PDFException, PDFSecurityException, IOException {
+ if (this.viewer == null)
+ this.viewer = new PDFViewerComposite(this, SWT.EMBEDDED | SWT.NO_BACKGROUND, document);
+ else
+ this.viewer.setDocument(document);
+ }
+
/**
* Selection listener when position was fixed
*/
@@ -76,16 +97,12 @@ public class PositioningComposite extends StateComposite {
*/
public PositioningComposite(Composite parent, int style, State state) {
super(parent, style, state);
-
-
- Label test = new Label(this, SWT.NATIVE);
- test.setBounds(10, 20, 100, 30);
- test.setText("POSITIONING ---- TODO!!");
-
- Button btn_position = new Button(this, SWT.NATIVE | SWT.RESIZE);
- btn_position.setBounds(10, 50, 100, 30);
- btn_position.setText("FAKE Position");
- btn_position.addSelectionListener(new PositionSelectedListener());
+ this.setLayout(new FillLayout());
+
+// Button btn_position = new Button(this, SWT.NATIVE | SWT.RESIZE);
+// btn_position.setBounds(10, 50, 100, 30);
+// btn_position.setText("FAKE Position");
+// btn_position.addSelectionListener(new PositionSelectedListener());
}
@Override
diff --git a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/PositioningState.java b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/PositioningState.java
index 1d98ae18..1c45b2b5 100644
--- a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/PositioningState.java
+++ b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/states/PositioningState.java
@@ -16,7 +16,11 @@
package at.asit.pdfover.gui.workflow.states;
//Imports
+import java.io.IOException;
+
import org.eclipse.swt.SWT;
+import org.icepdf.core.exceptions.PDFException;
+import org.icepdf.core.exceptions.PDFSecurityException;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -47,10 +51,12 @@ public class PositioningState extends State {
private PositioningComposite positionComposite = null;
- private PositioningComposite getPositioningComposite() {
+ private PositioningComposite getPositioningComposite() throws PDFException, PDFSecurityException, IOException {
if (this.positionComposite == null) {
this.positionComposite =
this.stateMachine.getGUIProvider().createComposite(PositioningComposite.class, SWT.RESIZE, this);
+ log.debug("Displaying " + stateMachine.getStatus().getDocument());
+ this.positionComposite.displayDocument(this.stateMachine.getStatus().getDocument());
}
return this.positionComposite;
@@ -67,7 +73,19 @@ public class PositioningState extends State {
if(status.getSignaturePosition() == null) {
- PositioningComposite position = this.getPositioningComposite();
+ PositioningComposite position = null;
+ try {
+ position = this.getPositioningComposite();
+ } catch (PDFException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (PDFSecurityException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ } catch (IOException e) {
+ // TODO Auto-generated catch block
+ e.printStackTrace();
+ }
this.stateMachine.getGUIProvider().display(position);