From 45b3417659761a96335605e588faf62a8a5a18c3 Mon Sep 17 00:00:00 2001 From: Jakob Heher Date: Thu, 7 Jul 2022 15:44:04 +0200 Subject: auto positioning cleanup --- .../workflow/config/ConfigurationDataInMemory.java | 3 +- .../gui/workflow/config/ConfigurationManager.java | 83 ++++------------------ 2 files changed, 13 insertions(+), 73 deletions(-) (limited to 'pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/config') diff --git a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/config/ConfigurationDataInMemory.java b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/config/ConfigurationDataInMemory.java index 382cc744..f536ebb4 100644 --- a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/config/ConfigurationDataInMemory.java +++ b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/config/ConfigurationDataInMemory.java @@ -34,7 +34,6 @@ import at.asit.pdfover.gui.bku.mobile.MobileBKUs; import at.asit.pdfover.gui.exceptions.InvalidEmblemFile; import at.asit.pdfover.gui.exceptions.InvalidPortException; import at.asit.pdfover.signator.BKUs; -import at.asit.pdfover.signator.SignaturePosition; /** * Implementation of the configuration container @@ -141,7 +140,7 @@ public class ConfigurationDataInMemory { protected boolean mobileBKUBase64 = false; /** Holds the default signature position */ - public SignaturePosition defaultSignaturePosition = null; + public boolean autoPositionSignature = false; /** Keystore signing options */ public Boolean keystoreEnabled = null; diff --git a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/config/ConfigurationManager.java b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/config/ConfigurationManager.java index 414f89de..44e328bb 100644 --- a/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/config/ConfigurationManager.java +++ b/pdf-over-gui/src/main/java/at/asit/pdfover/gui/workflow/config/ConfigurationManager.java @@ -22,8 +22,6 @@ import java.io.FileOutputStream; import java.io.IOException; import java.util.Locale; import java.util.Properties; -import java.util.regex.Matcher; -import java.util.regex.Pattern; import at.asit.pdfover.commons.Profile; import org.eclipse.swt.graphics.Point; @@ -37,9 +35,6 @@ import at.asit.pdfover.gui.exceptions.InvalidPortException; import at.asit.pdfover.gui.utils.LocaleSerializer; import at.asit.pdfover.commons.Messages; import at.asit.pdfover.signator.BKUs; -import at.asit.pdfover.signator.SignaturePosition; - -// TODO: review which properties use the overlay in this file (also: remove unneeded setters/getters, maybe template impl for overlays?) /** * Implementation of the configuration provider and manipulator @@ -224,53 +219,8 @@ public class ConfigurationManager { this.configuration.mainWindowSize = new Point(width, height); // Set Signature Position - String signaturePosition = diskConfig.getProperty(Constants.CFG_SIGNATURE_POSITION); - SignaturePosition position = null; - if (signaturePosition != null && !signaturePosition.trim().isEmpty()) { - signaturePosition = signaturePosition.trim().toLowerCase(); - - Pattern pattern = Pattern.compile("(x=(\\d\\.?\\d?);y=(\\d\\.?\\d?);p=(\\d))|(auto)|(x=(\\d\\.?\\d?);y=(\\d\\.?\\d?))"); - Matcher matcher = pattern.matcher(signaturePosition); - if (matcher.matches()) { - if (matcher.groupCount() == 8) { - if (matcher.group(1) != null) { - // we have format: x=..;y=..;p=... - try { - // group 2 = x value - float x = Float.parseFloat(matcher.group(2)); - - // group 3 = y value - float y = Float.parseFloat(matcher.group(3)); - - // group 4 = p value - int p = Integer.parseInt(matcher.group(3)); - - position = new SignaturePosition(x, y, p); - } catch (NumberFormatException ex) { - log.error( - "Signature Position read from config failed: Not a valid number", ex); - } - } else if (matcher.group(5) != null) { - // we have format auto - position = new SignaturePosition(); - } else if (matcher.group(6) != null) { - // we have format x=...;y=...; - // group 7 = x value - float x = Float.parseFloat(matcher.group(7)); - - // group 8 = y value - float y = Float.parseFloat(matcher.group(8)); - - position = new SignaturePosition(x, y); - } - } else { - log.error("Signature Position read from config failed: wrong group Count!"); - } - } else { - log.error("Signature Position read from config failed: not matching string"); - } - } - setDefaultSignaturePosition(position); + String signaturePositionStr = diskConfig.getProperty(Constants.CFG_SIGNATURE_POSITION); + setAutoPositionSignature(signaturePositionStr != null && signaturePositionStr.trim().equals("auto")); //Set keystore stuff String keystoreEnabled = diskConfig.getProperty(Constants.CFG_KEYSTORE_ENABLED); @@ -350,16 +300,10 @@ public class ConfigurationManager { if (getSignaturePdfACompat()) props.setProperty(Constants.CFG_SIGNATURE_PDFA_COMPAT, Constants.TRUE); - SignaturePosition pos = getDefaultSignaturePositionPersistent(); - if (pos == null) { + if (!getAutoPositionSignaturePersistent()) props.setProperty(Constants.CFG_SIGNATURE_POSITION, ""); - } else if (pos.useAutoPositioning()) { + else props.setProperty(Constants.CFG_SIGNATURE_POSITION, "auto"); - } else { - props.setProperty(Constants.CFG_SIGNATURE_POSITION, - String.format((Locale) null, "x=%f;y=%f;p=%d", - pos.getX(), pos.getY(), pos.getPage())); - } String mobileBKUURL = getMobileBKUURL(); if (!mobileBKUURL.equals(Constants.DEFAULT_MOBILE_BKU_URL)) @@ -435,23 +379,20 @@ public class ConfigurationManager { return this.configuration.defaultBKU; } - public void setDefaultSignaturePosition(SignaturePosition signaturePosition) { - this.configuration.defaultSignaturePosition = signaturePosition; + public void setAutoPositionSignature(boolean state) { + this.configuration.autoPositionSignature = state; } - public void setDefaultSignaturePositionOverlay(SignaturePosition signaturePosition) { - this.configurationOverlay.defaultSignaturePosition = signaturePosition; + public void setAutoPositionSignatureOverlay() { + this.configurationOverlay.autoPositionSignature = true; } - public SignaturePosition getDefaultSignaturePosition() { - SignaturePosition position = this.configurationOverlay.defaultSignaturePosition; - if (position == null) - position = getDefaultSignaturePositionPersistent(); - return position; + public boolean getAutoPositionSignature() { + return this.configurationOverlay.autoPositionSignature || getAutoPositionSignaturePersistent(); } - public SignaturePosition getDefaultSignaturePositionPersistent() { - return this.configuration.defaultSignaturePosition; + public boolean getAutoPositionSignaturePersistent() { + return this.configuration.autoPositionSignature; } public void setPlaceholderTransparency(int transparency) { -- cgit v1.2.3