Index: applications/editors/josm/plugins/wmsplugin/src/wmsplugin/WMSLayer.java
===================================================================
--- applications/editors/josm/plugins/wmsplugin/src/wmsplugin/WMSLayer.java	(revision 10645)
+++ applications/editors/josm/plugins/wmsplugin/src/wmsplugin/WMSLayer.java	(revision 10646)
@@ -21,4 +21,5 @@
 import javax.swing.ImageIcon;
 import javax.swing.JFileChooser;
+import javax.swing.JCheckBoxMenuItem;
 import javax.swing.JMenuItem;
 import javax.swing.JOptionPane;
@@ -51,5 +52,4 @@
 
 	public int messageNum = 5; //limit for messages per layer
-	protected boolean started = true;
 	protected boolean stopAfterPaint = false;
 	protected int ImageSize = 500;
@@ -59,4 +59,5 @@
 	protected double pixelPerDegree;
 	protected GeorefImage[][] images = new GeorefImage[dax][day];
+        JCheckBoxMenuItem startstop = new JCheckBoxMenuItem(tr("Automatic downloading"), true);
 
 	protected String baseURL;
@@ -84,9 +85,9 @@
 		if (baseURL == null) return;
 		//set resolution
-		if(started || Math.round(pixelPerDegree/10000) != Math.round(_pixelPerDegree/10000))
+		if(startstop.isSelected() || Math.round(pixelPerDegree/10000) != Math.round(_pixelPerDegree/10000))
 			initializeImages();
 		pixelPerDegree = _pixelPerDegree;
-		if(!started)stopAfterPaint = true;
-		started = true;
+		if(!startstop.isSelected()) stopAfterPaint = true;
+		startstop.setSelected(true);
 	}
 
@@ -96,5 +97,5 @@
 
 	@Override public String getToolTipText() {
-		if(started)
+		if(startstop.isSelected())
 			return tr("WMS layer ({0}), automaticaly downloading in zoom {1}", name, Math.round(pixelPerDegree/10000));
 		else
@@ -132,5 +133,5 @@
 
 
-		if( !started || (pixelPerDegree / (mv.getWidth() / (b.max.lon() - b.min.lon())) > minZoom) ){ //don't download when it's too outzoomed
+		if( !startstop.isSelected() || (pixelPerDegree / (mv.getWidth() / (b.max.lon() - b.min.lon())) > minZoom) ){ //don't download when it's too outzoomed
 			for(int x = 0; x<dax; ++x)
 				for(int y = 0; y<day; ++y){
@@ -151,5 +152,5 @@
 		}
 		if(stopAfterPaint){
-			started = false;
+			startstop.setSelected(false);
 			stopAfterPaint = false;
 		}
@@ -177,6 +178,5 @@
 				new JMenuItem(new SaveWmsAction()),
 				new JSeparator(),
-				new JMenuItem(new StartWmsAction()),
-				new JMenuItem(new StopWmsAction()),
+				startstop,
 				new JSeparator(),
 				new JMenuItem(new LayerListPopup.InfoAction(this))};
@@ -250,5 +250,5 @@
 				ois.close();
 				fis.close();
-				started = false;
+				startstop.setSelected(false);
 			}
 			catch (Exception ex) {
@@ -261,22 +261,4 @@
 				return;
 			}
-		}
-	}
-
-	public class StartWmsAction extends AbstractAction {
-		public StartWmsAction() {
-			super(tr("Start automatic downloading"), null);
-		}
-		public void actionPerformed(ActionEvent ev) {
-			started = true;
-		}
-	}
-
-	public class StopWmsAction extends AbstractAction {
-		public StopWmsAction() {
-			super(tr("Stop automatic downloading"), null);
-		}
-		public void actionPerformed(ActionEvent ev) {
-			started = false;
 		}
 	}
