Index: /applications/editors/josm/plugins/toms/src/toms/dialogs/SmpDialogAction.java
===================================================================
--- /applications/editors/josm/plugins/toms/src/toms/dialogs/SmpDialogAction.java	(revision 23027)
+++ /applications/editors/josm/plugins/toms/src/toms/dialogs/SmpDialogAction.java	(revision 23028)
@@ -116,6 +116,8 @@
 	public JRadioButton rbM01RegionA = null;
 	public JRadioButton rbM01RegionB = null;
-	public JLabel lM01Icon01 = null;
-	public JLabel lM01Icon02 = null;
+	public JLabel lM01Icon = null;
+	public JLabel lM02Icon = null;
+	public JLabel lM03Icon = null;
+	public JLabel lM04Icon = null;
 	public JLabel lM01FireMark = null;
 	private JLabel lM01TypeOfMark = null;
@@ -499,13 +501,23 @@
 		if (pM01SeaMap == null) {
 
-			lM01Icon01 = new JLabel();
-			lM01Icon01.setBounds(new Rectangle(210, 30, 160, 200));
-			lM01Icon01.setIcon(null);
-			lM01Icon01.setText(""); //$NON-NLS-1$
-
-			lM01Icon02 = new JLabel();
-			lM01Icon02.setBounds(new Rectangle(210, 30, 160, 200));
-			lM01Icon02.setIcon(null);
-			lM01Icon02.setText(""); //$NON-NLS-1$
+			lM01Icon = new JLabel();
+			lM01Icon.setBounds(new Rectangle(210, 30, 150, 200));
+			lM01Icon.setIcon(null);
+			lM01Icon.setText(""); //$NON-NLS-1$
+
+			lM02Icon = new JLabel();
+			lM02Icon.setBounds(new Rectangle(210, 30, 150, 200));
+			lM02Icon.setIcon(null);
+			lM02Icon.setText(""); //$NON-NLS-1$
+
+			lM03Icon = new JLabel();
+			lM03Icon.setBounds(new Rectangle(210, -40, 150, 200));
+			lM03Icon.setIcon(null);
+			lM03Icon.setText(""); //$NON-NLS-1$
+
+			lM04Icon = new JLabel();
+			lM04Icon.setBounds(new Rectangle(210, 30, 150, 200));
+			lM04Icon.setIcon(null);
+			lM04Icon.setText(""); //$NON-NLS-1$
 
 			lM01FireMark = new JLabel();
@@ -653,6 +665,8 @@
 			pM01SeaMap.add(lM01Region, null);
 			pM01SeaMap.add(lM02Region, null);
-			pM01SeaMap.add(lM01Icon01, null);
-			pM01SeaMap.add(lM01Icon02, null);
+			pM01SeaMap.add(lM01Icon, null);
+			pM01SeaMap.add(lM02Icon, null);
+			pM01SeaMap.add(lM03Icon, null);
+			pM01SeaMap.add(lM04Icon, null);
 			pM01SeaMap.add(getCbM01TypeOfMark(), null);
 			pM01SeaMap.add(lM01TypeOfMark, null);
@@ -942,4 +956,10 @@
 			cM01Radar.setFont(new Font("Dialog", Font.PLAIN, 12)); //$NON-NLS-1$
 			cM01Radar.setText(Messages.getString("SmpDialogAction.169")); //$NON-NLS-1$
+			cM01Radar.addActionListener(new ActionListener() {
+				public void actionPerformed(ActionEvent e) {
+					buoy.setRadar(cM01Radar.isSelected());
+					buoy.paintSign();
+				}
+			});
 		}
 		return cM01Radar;
Index: /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/Buoy.java
===================================================================
--- /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/Buoy.java	(revision 23027)
+++ /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/Buoy.java	(revision 23028)
@@ -57,4 +57,24 @@
 		dlg.rbM01RegionA.setSelected(!region);
 		dlg.rbM01RegionB.setSelected(region);
+	}
+
+	private boolean Radar = false;
+
+	public boolean hasRadar() {
+		return Radar;
+	}
+
+	public void setRadar(boolean radar) {
+		Radar = radar;
+	}
+
+	private boolean Fog = false;
+
+	public boolean hasFog() {
+		return Fog;
+	}
+
+	public void setFog(boolean fog) {
+		Fog = fog;
 	}
 
@@ -258,6 +278,8 @@
 		}
 
-		dlg.lM01Icon01.setIcon(null);
-		dlg.lM01Icon02.setIcon(null);
+		dlg.lM01Icon.setIcon(null);
+		dlg.lM02Icon.setIcon(null);
+		dlg.lM03Icon.setIcon(null);
+		dlg.lM04Icon.setIcon(null);
 	}
 
@@ -326,6 +348,8 @@
 		setRegion(Main.pref.get("tomsplugin.IALA").equals("B"));
 
-		dlg.lM01Icon01.setIcon(null);
-		dlg.lM01Icon02.setIcon(null);
+		dlg.lM01Icon.setIcon(null);
+		dlg.lM02Icon.setIcon(null);
+		dlg.lM03Icon.setIcon(null);
+		dlg.lM04Icon.setIcon(null);
 
 		dlg.rbM01RegionA.setEnabled(false);
@@ -347,4 +371,5 @@
 		dlg.cM01Radar.setSelected(false);
 		dlg.cM01Radar.setVisible(false);
+		setRadar(false);
 		dlg.cM01Racon.setSelected(false);
 		dlg.cM01Racon.setVisible(false);
@@ -364,4 +389,5 @@
 		dlg.tfM01FogPeriod.setVisible(false);
 		dlg.lM01FogPeriod.setVisible(false);
+		setFog(false);
 		dlg.cM01Fired.setSelected(false);
 		dlg.cM01Fired.setVisible(false);
Index: /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyCard.java
===================================================================
--- /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyCard.java	(revision 23027)
+++ /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyCard.java	(revision 23028)
@@ -191,5 +191,7 @@
 
 		dlg.sM01StatusBar.setText(getErrMsg());
-		dlg.lM01Icon02.setIcon(null);
+		dlg.lM02Icon.setIcon(null);
+		dlg.lM03Icon.setIcon(null);
+		dlg.lM04Icon.setIcon(null);
 
 		dlg.tfM01Name.setEnabled(true);
@@ -199,4 +201,6 @@
 		dlg.cM01TopMark.setVisible(true);
 		dlg.cM01TopMark.setEnabled(false);
+		dlg.cM01Radar.setEnabled(true);
+		dlg.cM01Radar.setVisible(true);
 		dlg.cM01Fired.setEnabled(true);
 		dlg.cM01Fired.setVisible(true);
@@ -248,8 +252,12 @@
 		if (!image.equals("/images/Cardinal")) {
 			image += ".png";
-			dlg.lM01Icon01.setIcon(new ImageIcon(getClass().getResource(image)));
+			dlg.lM01Icon.setIcon(new ImageIcon(getClass().getResource(image)));
+			
+			if (hasRadar()) {
+				dlg.lM03Icon.setIcon(new ImageIcon(getClass().getResource("/images/Radar_Reflector.png")));
+			}
 			
 			if (isFired()) {
-				dlg.lM01Icon02.setIcon(new ImageIcon(getClass().getResource("/images/Light_White_120.png")));
+				dlg.lM02Icon.setIcon(new ImageIcon(getClass().getResource("/images/Light_White_120.png")));
 
 				if (getLightChar() != "") {
@@ -277,5 +285,5 @@
 
 		} else
-			dlg.lM01Icon01.setIcon(null);
+			dlg.lM01Icon.setIcon(null);
 	}
 
Index: /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyIsol.java
===================================================================
--- /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyIsol.java	(revision 23027)
+++ /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyIsol.java	(revision 23028)
@@ -23,5 +23,5 @@
 		keys = node.getKeys();
 		setNode(node);
-		
+
 		resetMask();
 
@@ -85,5 +85,5 @@
 		if (keys.containsKey("seamark:topmark:shape")
 				|| keys.containsKey("seamark:topmark:colour")) {
-				setTopMark(true);
+			setTopMark(true);
 		}
 
@@ -109,5 +109,7 @@
 
 		dlg.sM01StatusBar.setText(getErrMsg());
-		dlg.lM01Icon02.setIcon(null);
+		dlg.lM02Icon.setIcon(null);
+		dlg.lM03Icon.setIcon(null);
+		dlg.lM04Icon.setIcon(null);
 
 		dlg.tfM01Name.setEnabled(true);
@@ -115,4 +117,6 @@
 		dlg.cM01TopMark.setEnabled(false);
 		dlg.cM01TopMark.setVisible(false);
+		dlg.cM01Radar.setEnabled(true);
+		dlg.cM01Radar.setVisible(true);
 		dlg.cM01Fired.setEnabled(true);
 
@@ -140,7 +144,13 @@
 		if (!image.equals("/images/Cardinal")) {
 			image += ".png";
-			dlg.lM01Icon01.setIcon(new ImageIcon(getClass().getResource(image)));
+			dlg.lM01Icon.setIcon(new ImageIcon(getClass().getResource(image)));
+
+			if (hasRadar()) {
+				dlg.lM03Icon.setIcon(new ImageIcon(getClass().getResource("/images/Radar_Reflector.png")));
+			}
+			
 			if (isFired()) {
-				dlg.lM01Icon02.setIcon(new ImageIcon(getClass().getResource("/images/Light_White_120.png")));
+				dlg.lM02Icon.setIcon(new ImageIcon(getClass().getResource(
+						"/images/Light_White_120.png")));
 				if (getLightChar() != "") {
 					String c;
@@ -153,5 +163,5 @@
 			}
 		} else
-			dlg.lM01Icon01.setIcon(null);
+			dlg.lM01Icon.setIcon(null);
 	}
 
Index: /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyLat.java
===================================================================
--- /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyLat.java	(revision 23027)
+++ /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyLat.java	(revision 23028)
@@ -348,5 +348,7 @@
 
 		dlg.sM01StatusBar.setText(getErrMsg());
-		dlg.lM01Icon02.setIcon(null);
+		dlg.lM02Icon.setIcon(null);
+		dlg.lM03Icon.setIcon(null);
+		dlg.lM04Icon.setIcon(null);
 
 		dlg.tfM01Name.setEnabled(true);
@@ -354,4 +356,6 @@
 		dlg.cM01TopMark.setEnabled(true);
 		dlg.cM01TopMark.setVisible(true);
+		dlg.cM01Radar.setEnabled(true);
+		dlg.cM01Radar.setVisible(true);
 		dlg.cM01Fired.setEnabled(true);
 
@@ -585,12 +589,16 @@
 			}
 			image += ".png";
-			dlg.lM01Icon01.setIcon(new ImageIcon(getClass().getResource(image)));
-
+			dlg.lM01Icon.setIcon(new ImageIcon(getClass().getResource(image)));
+
+			if (hasRadar()) {
+				dlg.lM03Icon.setIcon(new ImageIcon(getClass().getResource("/images/Radar_Reflector.png")));
+			}
+			
 			if (isFired())
 				if (getLightColour().equals("R"))
-					dlg.lM01Icon02.setIcon(new ImageIcon(getClass().getResource(
+					dlg.lM02Icon.setIcon(new ImageIcon(getClass().getResource(
 							"/images/Light_Red_120.png")));
 				else
-					dlg.lM01Icon02.setIcon(new ImageIcon(getClass().getResource(
+					dlg.lM02Icon.setIcon(new ImageIcon(getClass().getResource(
 							"/images/Light_Green_120.png")));
 			if (getLightChar() != "") {
@@ -607,5 +615,5 @@
 
 		} else
-			dlg.lM01Icon01.setIcon(null);
+			dlg.lM01Icon.setIcon(null);
 	}
 
Index: /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyNota.java
===================================================================
--- /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyNota.java	(revision 23027)
+++ /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoyNota.java	(revision 23028)
@@ -50,25 +50,21 @@
 
 		dlg.sM01StatusBar.setText(getErrMsg());
-
-		dlg.tfM01Name.setEnabled(true);
-		dlg.tfM01Name.setText(getName());
-		dlg.cM01Fired.setSelected(true);
-		dlg.cM01Fired.setEnabled(false);
-		dlg.cM01TopMark.setVisible(false);
-		dlg.cM01TopMark.setSelected(false);
+		dlg.lM02Icon.setIcon(null);
+		dlg.lM03Icon.setIcon(null);
+		dlg.lM04Icon.setIcon(null);
 
 		switch (getStyleIndex()) {
 		case SeaMark.LIGHT_HOUSE:
-			dlg.lM01Icon01.setIcon(new ImageIcon(getClass().getResource(
+			dlg.lM01Icon.setIcon(new ImageIcon(getClass().getResource(
 					"/images/Light_House.png")));
 			break;
 
 		case SeaMark.LIGHT_MAJOR:
-			dlg.lM01Icon01.setIcon(new ImageIcon(getClass().getResource(
+			dlg.lM01Icon.setIcon(new ImageIcon(getClass().getResource(
 					"/images/Light_Major.png")));
 			break;
 
 		case SeaMark.LIGHT_MINOR:
-			dlg.lM01Icon01.setIcon(new ImageIcon(getClass().getResource(
+			dlg.lM01Icon.setIcon(new ImageIcon(getClass().getResource(
 					"/images/Light_Minor.png")));
 			break;
Index: /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoySaw.java
===================================================================
--- /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoySaw.java	(revision 23027)
+++ /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoySaw.java	(revision 23028)
@@ -106,5 +106,7 @@
 
 		dlg.sM01StatusBar.setText(getErrMsg());
-		dlg.lM01Icon02.setIcon(null);
+		dlg.lM02Icon.setIcon(null);
+		dlg.lM03Icon.setIcon(null);
+		dlg.lM04Icon.setIcon(null);
 
 		dlg.tfM01Name.setEnabled(true);
@@ -112,4 +114,6 @@
 		dlg.cM01TopMark.setEnabled(true);
 		dlg.cM01TopMark.setVisible(true);
+		dlg.cM01Radar.setEnabled(true);
+		dlg.cM01Radar.setVisible(true);
 		dlg.cM01Fired.setEnabled(true);
 
@@ -137,11 +141,15 @@
 		if (!image.equals("/images/Safe_Water")) {
 			image += ".png";
-			dlg.lM01Icon01.setIcon(new ImageIcon(getClass().getResource(image)));
+			dlg.lM01Icon.setIcon(new ImageIcon(getClass().getResource(image)));
 
 			if (hasTopMark())
 				image += "_Sphere";
 
+			if (hasRadar()) {
+				dlg.lM03Icon.setIcon(new ImageIcon(getClass().getResource("/images/Radar_Reflector.png")));
+			}
+			
 			if (isFired()) {
-				dlg.lM01Icon02.setIcon(new ImageIcon(getClass().getResource("/images/Light_White_120.png")));
+				dlg.lM02Icon.setIcon(new ImageIcon(getClass().getResource("/images/Light_White_120.png")));
 				if (getLightChar() != "") {
 					String c;
@@ -155,5 +163,5 @@
 			}
 		} else
-			dlg.lM01Icon01.setIcon(null);
+			dlg.lM01Icon.setIcon(null);
 	}
 
Index: /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoySpec.java
===================================================================
--- /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoySpec.java	(revision 23027)
+++ /applications/editors/josm/plugins/toms/src/toms/seamarks/buoys/BuoySpec.java	(revision 23028)
@@ -143,5 +143,7 @@
 
 		dlg.sM01StatusBar.setText(getErrMsg());
-		dlg.lM01Icon02.setIcon(null);
+		dlg.lM02Icon.setIcon(null);
+		dlg.lM03Icon.setIcon(null);
+		dlg.lM04Icon.setIcon(null);
 
 		dlg.tfM01Name.setEnabled(true);
@@ -186,8 +188,12 @@
 				image += "_CrossY";
 			image += ".png";
-			dlg.lM01Icon01.setIcon(new ImageIcon(getClass().getResource(image)));
-
+			dlg.lM01Icon.setIcon(new ImageIcon(getClass().getResource(image)));
+
+			if (hasRadar()) {
+				dlg.lM03Icon.setIcon(new ImageIcon(getClass().getResource("/images/Radar_Reflector.png")));
+			}
+			
 			if (isFired()) {
-				dlg.lM01Icon02.setIcon(new ImageIcon(getClass().getResource(
+				dlg.lM02Icon.setIcon(new ImageIcon(getClass().getResource(
 						"/images/Light_White_120.png")));
 				if (getLightChar() != "") {
@@ -202,5 +208,5 @@
 			}
 		} else
-			dlg.lM01Icon01.setIcon(null);
+			dlg.lM01Icon.setIcon(null);
 	}
 
