Index: applications/editors/josm/plugins/pt_assistant/src/org/openstreetmap/josm/plugins/pt_assistant/actions/PTWizardAction.java
===================================================================
--- applications/editors/josm/plugins/pt_assistant/src/org/openstreetmap/josm/plugins/pt_assistant/actions/PTWizardAction.java	(revision 34228)
+++ applications/editors/josm/plugins/pt_assistant/src/org/openstreetmap/josm/plugins/pt_assistant/actions/PTWizardAction.java	(revision 34229)
@@ -32,4 +32,5 @@
 import javax.swing.JCheckBox;
 import javax.swing.JLabel;
+import javax.swing.JOptionPane;
 import javax.swing.JPanel;
 import javax.swing.JScrollPane;
@@ -46,4 +47,5 @@
 import org.openstreetmap.josm.gui.MainApplication;
 import org.openstreetmap.josm.gui.MainMenu;
+import org.openstreetmap.josm.gui.Notification;
 import org.openstreetmap.josm.gui.download.UserQueryList.SelectorItem;
 import org.openstreetmap.josm.gui.io.CustomConfigurator;
@@ -58,4 +60,5 @@
 
 	public boolean noDialogBox;
+	private int closeCheck = 0;
 	/**
      * Constructs a new {@code PTWizardAction}
@@ -97,4 +100,9 @@
 		} else {
 			action = true;
+			String pages = Main.pref.get("pt_assistant.wizard.pages");
+			if (pages.isEmpty()) {
+				readPreferencesFromXML();
+				addDefaultValues();
+			}
 		}
 
@@ -104,20 +112,19 @@
 	        panel.setBorder(BorderFactory.createEmptyBorder(0,10,10,10));
 
-	        ExtendedDialog ed = new ExtendedDialog(Main.parent,
-	                tr("PT Wizard"),
-	                tr("OK"), tr("Close"));
-	        ed.setPreferredSize(new Dimension(250, 300));
-	        ed.setButtonIcons("ok", "cancel");
+	        DoubleSplitDialog dsd = new DoubleSplitDialog();
+	        dsd.setPreferredSize(new Dimension(250, 300));
+	        dsd.setButtonIcons("ok", "cancel");
 	        JScrollPane scrollPanel = new JScrollPane(panel);
-	        ed.setContent(scrollPanel, false);
-    		    ed.setUndecorated(true);
-
+	        dsd.setContent(scrollPanel, false);
 	        nextAct(0, panel);
-
 	        String pages = Main.pref.get("pt_assistant.wizard.pages");
-
+	        int lastCheck = -1;
 	        try {
 	        		for(int i=1;i<=Integer.parseInt(pages)+1;i++) {
-	        			ExtendedDialog dialog = ed.showDialog();
+	        			if (lastCheck == closeCheck)
+		        			return;
+	        			else
+	        				lastCheck = closeCheck;
+	        			ExtendedDialog dialog = dsd.showDialog();
 	        			switch (dialog.getValue()) {
 	        				case 1: nextAct(i, panel); break;
@@ -136,4 +143,6 @@
 		try {
 			CachedFile cf = getCachedFile();
+			if (cf == null)
+				return;
 			List<String> lines = new ArrayList<>();
 			try (BufferedReader in = cf.getContentReader()){
@@ -166,6 +175,11 @@
 
 	@SuppressWarnings("resource")
-    public CachedFile getCachedFile() throws IOException {
-        return new CachedFile("https://josm.openstreetmap.de/wiki/Plugin/PT_Assistant/Wizard?format=txt").setHttpAccept("text");
+    public CachedFile getCachedFile() {
+		try {
+			return new CachedFile("https://josm.openstreetmap.de/wiki/Plugin/PT_Assistant/Wizard?format=txt").setHttpAccept("text");
+		} catch (Exception e) {
+			new Notification(tr("Unable to connect to https://josm.openstreetmap.de/wiki/Plugin/PT_Assistant/Wizard")).setIcon(JOptionPane.WARNING_MESSAGE).show();
+		}
+		return null;
     }
 
@@ -357,5 +371,4 @@
         panel.add(new JLabel("<html><br></html>"),GBC.eol().fill(GBC.HORIZONTAL));
         panel.add(checkBoxPanel, GBC.eol().fill(GBC.HORIZONTAL));
-
 	}
 
@@ -633,3 +646,18 @@
 	    }
 	}
+
+    private class DoubleSplitDialog extends ExtendedDialog {
+
+		public DoubleSplitDialog() {
+			super(Main.parent, tr("PT Wizard"), new String[] { tr("Ok"), tr("Cancel") },
+					true);
+		}
+
+		@Override
+		protected void buttonAction(int buttonIndex, ActionEvent evt) {
+			closeCheck++;
+			super.buttonAction(buttonIndex, evt);
+		}
+
+    }
 }
