Index: /applications/editors/josm/plugins/piclayer/build.xml
===================================================================
--- /applications/editors/josm/plugins/piclayer/build.xml	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/build.xml	(revision 35027)
@@ -1,39 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
-
 <project name="PicLayer" default="dist" basedir=".">
-
     <property name="commit.message" value="[josm/PicLayer] - #12045 add ability to localize dialog titles"/>
-
     <!-- enter the *lowest* JOSM version this plugin is currently compatible with -->
-
-    <property name="plugin.main.version" value="11713"/>
-
-
-
+    <property name="plugin.main.version" value="14153"/>
+	
     <!-- Configure these properties (replace "..." accordingly).
-
          See https://josm.openstreetmap.de/wiki/DevelopersGuide/DevelopingPlugins
-
     -->
-
-    <property name="plugin.author" value="Tomasz Stelmach, Rebecca Schmidt"/>
-
+    <property name="plugin.author" value="Tomasz Stelmach"/>
     <property name="plugin.class" value="org.openstreetmap.josm.plugins.piclayer.PicLayerPlugin"/>
-
     <property name="plugin.description" value="This plugin allows to display any picture as a background in the editor and align it with the map."/>
-
     <property name="plugin.icon" value="images/layericon.png"/>
-
     <property name="plugin.link" value="https://josm.openstreetmap.de/wiki/Help/Plugin/PicLayer"/>
-
     <property name="plugin.canloadatruntime" value="true"/>
 
-
-
     <!-- ** include targets that all plugins have in common ** -->
-
     <import file="../build-common.xml"/>
 
-
-
 </project>
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/PicLayerPlugin.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/PicLayerPlugin.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/PicLayerPlugin.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/GenericPicTransformAction.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/GenericPicTransformAction.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/GenericPicTransformAction.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/LoadPictureCalibrationAction.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/LoadPictureCalibrationAction.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/LoadPictureCalibrationAction.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/LoadPictureCalibrationFromWorldAction.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/LoadPictureCalibrationFromWorldAction.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/LoadPictureCalibrationFromWorldAction.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/ResetCalibrationAction.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/ResetCalibrationAction.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/ResetCalibrationAction.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/SavePictureCalibrationAction.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/SavePictureCalibrationAction.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/SavePictureCalibrationAction.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/newlayer/NewLayerFromClipboardAction.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/newlayer/NewLayerFromClipboardAction.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/newlayer/NewLayerFromClipboardAction.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/newlayer/NewLayerFromFileAction.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/newlayer/NewLayerFromFileAction.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/newlayer/NewLayerFromFileAction.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/MovePictureAction.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/MovePictureAction.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/MovePictureAction.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/RotatePictureAction.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/RotatePictureAction.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/RotatePictureAction.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/ScaleXPictureAction.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/ScaleXPictureAction.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/ScaleXPictureAction.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/ScaleXYPictureAction.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/ScaleXYPictureAction.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/ScaleXYPictureAction.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/ScaleYPictureAction.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/ScaleYPictureAction.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/ScaleYPictureAction.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/affine/MovePointAction.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/affine/MovePointAction.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/affine/MovePointAction.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/affine/RemovePointAction.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/affine/RemovePointAction.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/affine/RemovePointAction.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/affine/TransformPointAction.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/affine/TransformPointAction.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/affine/TransformPointAction.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/autocalibrate/AutoCalibrateHandler.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/autocalibrate/AutoCalibrateHandler.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/autocalibrate/AutoCalibrateHandler.java	(revision 35027)
@@ -39,4 +39,5 @@
 import org.openstreetmap.josm.plugins.piclayer.gui.autocalibrate.ResultCheckView;
 import org.openstreetmap.josm.plugins.piclayer.layer.PicLayerAbstract;
+import org.openstreetmap.josm.tools.Logging;
 
 /**
@@ -115,5 +116,5 @@
 	*
 	*/
-	private class HelpButtonListener implements ActionListener {
+	private static class HelpButtonListener implements ActionListener {
 		@Override
 		public void actionPerformed(ActionEvent e) {
@@ -176,8 +177,8 @@
 			// calibrate
 			callCalibrator();
-			mainWindow.setVisible(false);
 			currentPicLayer.clearDrawReferencePoints();
 			currentPicLayer.invalidate();
 			MainApplication.getLayerManager().setActiveLayer(currentPicLayer);
+			mainWindow.setVisible(false);
 			// let user check calibration
 			ResultCheckView checkView = new ResultCheckView();
@@ -233,6 +234,5 @@
 	    @Override
 	    public void propertyChange(PropertyChangeEvent event) {
-	    	String propName = event.getPropertyName();
-	    	int size = Integer.parseInt(propName.replaceAll("\\D", ""));
+	    	int size = (int) event.getNewValue();
 	    	if(currentPicLayer.getTransformer().getLatLonOriginPoints() != null) {
 	    		originPointList.clear();
@@ -256,6 +256,5 @@
 	    @Override
 	    public void propertyChange(PropertyChangeEvent event) {
-	    	String propName = event.getPropertyName();
-	    	int size = Integer.parseInt(propName.replaceAll("\\D", ""));
+	    	int size = (int) event.getNewValue();
 	        mainWindow.setReferencePoints(referencePointList);
 
@@ -517,5 +516,5 @@
 			translatedPoint = currentPicLayer.transformPoint(new Point2D.Double(en.getInViewX(), en.getInViewY()));
 		} catch (NoninvertibleTransformException e) {
-			e.printStackTrace();
+			Logging.error(e);
 		}
 
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/autocalibrate/AutoCalibratePictureAction.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/autocalibrate/AutoCalibratePictureAction.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/autocalibrate/AutoCalibratePictureAction.java	(revision 35027)
@@ -47,5 +47,5 @@
 		currentLayer = (PicLayerAbstract) MainApplication.getLayerManager().getActiveLayer();
 
-		if(currentLayer != null && currentLayer instanceof PicLayerAbstract) {
+		if(currentLayer != null) {
 			calibrationHandler.prepare(currentLayer);
 			calibrationWindow = calibrationHandler.getMainWindow();
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/autocalibrate/AutoCalibrator.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/autocalibrate/AutoCalibrator.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/autocalibrate/AutoCalibrator.java	(revision 35027)
@@ -13,4 +13,5 @@
 import org.openstreetmap.josm.plugins.piclayer.gui.autocalibrate.CalibrationErrorView;
 import org.openstreetmap.josm.plugins.piclayer.layer.PicLayerAbstract;
+import org.openstreetmap.josm.tools.Logging;
 
 
@@ -181,5 +182,5 @@
 			translatedPoint = currentLayer.transformPoint(new Point2D.Double(en.getInViewX(), en.getInViewY()));
 		} catch (NoninvertibleTransformException e) {
-			e.printStackTrace();
+			Logging.error(e);
 		}
 
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/autocalibrate/helper/ObservableArrayList.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/autocalibrate/helper/ObservableArrayList.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/actions/transform/autocalibrate/helper/ObservableArrayList.java	(revision 35027)
@@ -5,6 +5,4 @@
 import java.util.ArrayList;
 import java.util.Collection;
-
-import javafx.beans.property.SimpleIntegerProperty;
 
 /**
@@ -15,23 +13,16 @@
 public class ObservableArrayList<E> extends ArrayList<E>{
 
-    private SimpleIntegerProperty sizeProperty;
-    protected PropertyChangeSupport propertyChangeSupport;
+	private PropertyChangeSupport changes = new PropertyChangeSupport(this);
 
 	public ObservableArrayList() {
 		super();
-		propertyChangeSupport = new PropertyChangeSupport(this);
-	    sizeProperty = new SimpleIntegerProperty(0);
 	}
 
-	public ObservableArrayList(int initialCapacity) {
-		super(initialCapacity);
-		propertyChangeSupport = new PropertyChangeSupport(this);
-	    sizeProperty = new SimpleIntegerProperty(0);
+	public ObservableArrayList(int cap) {
+		super(cap);
 	}
 
 	public ObservableArrayList(Collection<? extends E> c) {
 		super(c);
-		propertyChangeSupport = new PropertyChangeSupport(this);
-	    sizeProperty = new SimpleIntegerProperty(0);
 	}
 
@@ -39,48 +30,61 @@
 	@Override
 	public boolean add(E e) {
-		boolean returnValue = super.add(e);
-        sizeProperty.set(size());
-        propertyChangeSupport.firePropertyChange(sizeProperty.toString(), false, true);
-        return returnValue;
+		int oldSize = super.size();
+		if(super.add(e)) {
+			changes.firePropertyChange("size", oldSize, super.size());
+			return true;
+		};
+		return false;
 	}
 
+
     @Override
-    public void add(int index, E element) {
-        super.add(index, element);
-        sizeProperty.set(size());
-        propertyChangeSupport.firePropertyChange(sizeProperty.toString(), false, true);
+	public void add(int index, E element) {
+    	int oldSize = super.size();
+    	super.add(index, element);
+    	changes.firePropertyChange("size", oldSize, super.size());
     }
 
     @Override
-    public E remove(int index) {
-        E returnValue = super.remove(index);
-        sizeProperty.set(size());
-        propertyChangeSupport.firePropertyChange(sizeProperty.toString(), false, true);
-        return returnValue;
+	public boolean addAll(Collection<? extends E> c) {
+    	int oldSize = super.size();
+		if(super.addAll(c)) {
+			changes.firePropertyChange("size", oldSize, super.size());
+			return true;
+		};
+		return false;
     }
 
     @Override
-	public void clear() {
-    	super.clear();
-    	sizeProperty.set(size());
-    	propertyChangeSupport.firePropertyChange(sizeProperty.toString(), false, true);
+	public E remove(int index) {
+    	int oldSize = super.size();
+        E removed = super.remove(index);
+    	changes.firePropertyChange("size", oldSize, super.size());
+    	return removed;
     }
 
     @Override
-    public boolean remove(Object o) {
-        boolean returnValue = super.remove(o);
-        if(returnValue){
-            sizeProperty.set(size());
-            propertyChangeSupport.firePropertyChange(sizeProperty.toString(), false, true);
-        }
-        return returnValue;
+	public boolean remove(Object o) {
+    	int oldSize = super.size();
+    	if(super.remove(o)) {
+    		changes.firePropertyChange("size", oldSize, super.size());
+    		return true;
+    	}
+    	return false;
+    }
+
+	@Override
+	public void clear() {
+		int oldSize = super.size();
+    	super.clear();
+    	changes.firePropertyChange("size", oldSize, super.size());
     }
 
 	public void addPropertyChangeListener(PropertyChangeListener listener) {
-        propertyChangeSupport.addPropertyChangeListener(listener);
+        changes.addPropertyChangeListener(listener);
     }
 
 	public void removePropertyChangeListener(PropertyChangeListener listener) {
-        propertyChangeSupport.removePropertyChangeListener(listener);
+        changes.removePropertyChangeListener(listener);
     }
 
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/command/TransformCommand.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/command/TransformCommand.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/command/TransformCommand.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/CalibrationFileFilter.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/CalibrationFileFilter.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/CalibrationFileFilter.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/PicLayerAbstract.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/PicLayerAbstract.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/PicLayerAbstract.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/PicLayerFromClipboard.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/PicLayerFromClipboard.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/PicLayerFromClipboard.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/PicLayerFromFile.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/PicLayerFromFile.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/PicLayerFromFile.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/PicLayerFromKML.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/PicLayerFromKML.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/PicLayerFromKML.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/kml/KMLGroundOverlay.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/kml/KMLGroundOverlay.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/kml/KMLGroundOverlay.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/kml/KMLReader.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/kml/KMLReader.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/layer/kml/KMLReader.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/transform/Matrix3D.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/transform/Matrix3D.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/transform/Matrix3D.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/transform/NoSolutionException.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/transform/NoSolutionException.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/transform/NoSolutionException.java	(revision 35027)
Index: /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/transform/PictureTransform.java
===================================================================
--- /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/transform/PictureTransform.java	(revision 35026)
+++ /applications/editors/josm/plugins/piclayer/src/org/openstreetmap/josm/plugins/piclayer/transform/PictureTransform.java	(revision 35027)
