Index: /applications/editors/josm/plugins/pdfimport/src/pdfimport/LoadPdfDialog.java
===================================================================
--- /applications/editors/josm/plugins/pdfimport/src/pdfimport/LoadPdfDialog.java	(revision 24059)
+++ /applications/editors/josm/plugins/pdfimport/src/pdfimport/LoadPdfDialog.java	(revision 24060)
@@ -15,4 +15,5 @@
 import java.io.FileInputStream;
 import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
 import java.io.IOException;
 import java.util.Collection;
@@ -46,5 +47,5 @@
 public class LoadPdfDialog extends JFrame {
 
-	private String fileName;
+	private File fileName;
 	private PathOptimizer data;
 	private final FilePlacement placement;
@@ -275,18 +276,19 @@
 
 	private void loadFilePressed() {
-		final java.io.File fileName = this.chooseFile();
-
-		if (fileName == null) {
+		final File newFileName = this.chooseFile();
+
+		if (newFileName == null) {
 			return;
 		}
+
+		this.removeLayer();
 
 		this.loadFileButton.setEnabled(false);
 		this.loadFileButton.setText(tr("Loading..."));
-
 
 		this.runAsBackgroundTask(
 				new Runnable() {
 					public void run() {
-						data = loadPDF(fileName);
+						data = loadPDF(newFileName);
 					}
 				},
@@ -295,9 +297,12 @@
 					public void actionPerformed(ActionEvent e) {
 						if (data!= null) {
+							LoadPdfDialog.this.placement.projection = null;
 							OsmBuilder.Mode mode = LoadPdfDialog.this.debugModeCheck.isSelected() ? OsmBuilder.Mode.Debug: OsmBuilder.Mode.Draft;
-							LoadPdfDialog.this.fileName = fileName.getAbsolutePath();
+							LoadPdfDialog.this.fileName = newFileName;
 							LoadPdfDialog.this.makeLayer(tr("PDF file preview"), mode);
 							LoadPdfDialog.this.loadFileButton.setText(tr("Loaded"));
 							LoadPdfDialog.this.loadFileButton.setEnabled(true);
+							LoadPdfDialog.this.loadPlacement();
+							LoadPdfDialog.this.setPlacement();
 						}
 					}
@@ -308,16 +313,19 @@
 	private void okPressed() {
 
-		boolean ok = this.loadTransformation();
+		boolean ok = this.parsePlacement();
 		if (!ok){
 			return;
 		}
 
+		this.savePlacement();
+
 		//rebuild layer with latest projection
 		this.makeLayer(tr("Imported PDF: ") + this.fileName, OsmBuilder.Mode.Final);
+
 		this.setVisible(false);
 	}
 
 	private void savePressed() {
-		boolean ok = this.loadTransformation();
+		boolean ok = this.parsePlacement();
 		if (!ok){
 			return;
@@ -329,4 +337,6 @@
 			return;
 		}
+
+		this.savePlacement();
 
 		//rebuild layer with latest projection
@@ -339,5 +349,5 @@
 	private void showPressed() {
 
-		boolean ok = this.loadTransformation();
+		boolean ok = this.parsePlacement();
 		if (!ok){
 			return;
@@ -532,19 +542,4 @@
 		data.splitLayersByPathKind();
 		data.finish();
-
-		//load saved transformation
-		File propertiesFile = new File(fileName.getAbsoluteFile()+ ".placement");
-		try {
-
-			if (propertiesFile.exists()){
-				Properties p = new Properties();
-				p.load(new FileInputStream(propertiesFile));
-				this.placement.fromProperties(p);
-				this.setTransformation();
-			}
-		}catch (Exception e){
-			e.printStackTrace();
-		}
-
 		return data;
 	}
@@ -552,5 +547,5 @@
 
 
-	private boolean loadTransformation() {
+	private boolean parsePlacement() {
 		Object selectedProjection = this.projectionCombo.getSelectedItem();
 
@@ -584,5 +579,5 @@
 	}
 
-	private void setTransformation() {
+	private void setPlacement() {
 
 		this.projectionCombo.setSelectedItem(placement.projection);
@@ -597,4 +592,32 @@
 	}
 
+
+	private void loadPlacement() {
+		//load saved transformation
+		File propertiesFile = new File(fileName.getAbsoluteFile()+ ".placement");
+		try {
+
+			if (propertiesFile.exists()){
+				Properties p = new Properties();
+				p.load(new FileInputStream(propertiesFile));
+				this.placement.fromProperties(p);
+			}
+		}catch (Exception e){
+			e.printStackTrace();
+		}
+	}
+
+	private void savePlacement(){
+		//load saved transformation
+		File propertiesFile = new File(fileName.getAbsoluteFile()+ ".placement");
+		try {
+			Properties p = this.placement.toProperties();
+			p.store(new FileOutputStream(propertiesFile), "PDF file placement on OSM");
+		} catch (Exception e){
+			e.printStackTrace();
+		}
+	}
+
+
 	private void makeLayer(String name, OsmBuilder.Mode mode) {
 		this.removeLayer();
