Index: /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelChr.java
===================================================================
--- /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelChr.java	(revision 26561)
+++ /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelChr.java	(revision 26562)
@@ -28,10 +28,7 @@
 	public JToggleButton veryQuickButton = new JToggleButton(new ImageIcon(getClass().getResource("/images/VeryQuickButton.png")));
 	public JToggleButton ultraQuickButton = new JToggleButton(new ImageIcon(getClass().getResource("/images/UltraQuickButton.png")));
-	public JToggleButton interruptedQuickButton = new JToggleButton(new ImageIcon(getClass().getResource(
-			"/images/InterruptedQuickButton.png")));
-	public JToggleButton interruptedVeryQuickButton = new JToggleButton(new ImageIcon(getClass().getResource(
-			"/images/InterruptedVeryQuickButton.png")));
-	public JToggleButton interruptedUltraQuickButton = new JToggleButton(new ImageIcon(getClass().getResource(
-			"/images/InterruptedUltraQuickButton.png")));
+	public JToggleButton interruptedQuickButton = new JToggleButton(new ImageIcon(getClass().getResource("/images/InterruptedQuickButton.png")));
+	public JToggleButton interruptedVeryQuickButton = new JToggleButton(new ImageIcon(getClass().getResource("/images/InterruptedVeryQuickButton.png")));
+	public JToggleButton interruptedUltraQuickButton = new JToggleButton(new ImageIcon(getClass().getResource("/images/InterruptedUltraQuickButton.png")));
 	public JToggleButton isophasedButton = new JToggleButton(new ImageIcon(getClass().getResource("/images/IsophasedButton.png")));
 	public JToggleButton occultingButton = new JToggleButton(new ImageIcon(getClass().getResource("/images/OccultingButton.png")));
Index: /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelCol.java
===================================================================
--- /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelCol.java	(revision 26561)
+++ /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelCol.java	(revision 26562)
@@ -28,5 +28,5 @@
 	public JRadioButton violetButton = new JRadioButton(new ImageIcon(getClass().getResource("/images/VioletButton.png")));
 	public JRadioButton blackButton = new JRadioButton(new ImageIcon(getClass().getResource("/images/BlackButton.png")));
-	private EnumMap<Col, JRadioButton> colours = new EnumMap<Col, JRadioButton>(Col.class);
+	public EnumMap<Col, JRadioButton> colours = new EnumMap<Col, JRadioButton>(Col.class);
 	private ActionListener alColour = new ActionListener() {
 		public void actionPerformed(java.awt.event.ActionEvent e) {
Index: /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelMain.java
===================================================================
--- /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelMain.java	(revision 26561)
+++ /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelMain.java	(revision 26562)
@@ -52,14 +52,14 @@
 		dlg = dia;
 		panelChan = new PanelChan(dlg);
-		panelChan.setBounds(new Rectangle(65, 0, 165, 160));
+		panelChan.setBounds(new Rectangle(65, 0, 180, 160));
 		panelChan.setVisible(false);
 		panelHaz = new PanelHaz(dlg);
-		panelHaz.setBounds(new Rectangle(65, 0, 165, 160));
+		panelHaz.setBounds(new Rectangle(65, 0, 180, 160));
 		panelHaz.setVisible(false);
 		panelSpec = new PanelSpec(dlg);
-		panelSpec.setBounds(new Rectangle(65, 0, 165, 160));
+		panelSpec.setBounds(new Rectangle(65, 0, 180, 160));
 		panelSpec.setVisible(false);
 		panelLights = new PanelLights(dlg);
-		panelLights.setBounds(new Rectangle(65, 0, 165, 160));
+		panelLights.setBounds(new Rectangle(65, 0, 180, 160));
 		panelLights.setVisible(false);
 		panelMore = new PanelMore(dlg);
@@ -80,17 +80,17 @@
 
 		shapeIcon = new JLabel();
-		shapeIcon.setBounds(new Rectangle(250, 0, 150, 185));
+		shapeIcon.setBounds(new Rectangle(235, 0, 150, 185));
 		this.add(shapeIcon, null);
 		lightIcon = new JLabel();
-		lightIcon.setBounds(new Rectangle(250, 0, 150, 185));
+		lightIcon.setBounds(new Rectangle(235, 0, 150, 185));
 		this.add(lightIcon, null);
 		topIcon = new JLabel();
-		topIcon.setBounds(new Rectangle(250, 0, 150, 185));
+		topIcon.setBounds(new Rectangle(235, 0, 150, 185));
 		this.add(topIcon, null);
 		radarIcon = new JLabel();
-		radarIcon.setBounds(new Rectangle(250, 0, 150, 185));
+		radarIcon.setBounds(new Rectangle(235, 0, 150, 185));
 		this.add(radarIcon, null);
 		fogIcon = new JLabel();
-		fogIcon.setBounds(new Rectangle(250, 0, 150, 185));
+		fogIcon.setBounds(new Rectangle(235, 0, 150, 185));
 		this.add(fogIcon, null);
 
@@ -138,4 +138,6 @@
 							panelSpec.clearSelections();
 							panelSpec.panelCol.yellowButton.doClick();
+						} else {
+							panelSpec.panelCol.colours.get(dlg.mark.getColour(Ent.BODY, 0)).doClick();
 						}
 						if (panelSpec.shapes.containsKey(dlg.mark.getShape())) {
@@ -258,5 +260,5 @@
 
 		moreButton = new JButton();
-		moreButton.setBounds(new Rectangle(357, 145, 38, 15));
+		moreButton.setBounds(new Rectangle(350, 145, 40, 15));
 		moreButton.setMargin(new Insets(0, 0, 0, 0));
 		moreButton.setText("v v v");
Index: /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelSpec.java
===================================================================
--- /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelSpec.java	(revision 26561)
+++ /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelSpec.java	(revision 26562)
@@ -3,5 +3,7 @@
 import java.awt.*;
 import java.awt.event.*;
+
 import javax.swing.*;
+
 import java.util.*;
 
@@ -13,4 +15,11 @@
 
 	private OSeaMAction dlg;
+	public JLabel categoryLabel;
+	public JComboBox categoryBox;
+	private ActionListener alCategoryBox = new ActionListener() {
+		public void actionPerformed(java.awt.event.ActionEvent e) {
+		}
+	};
+
 	public ButtonGroup shapeButtons = new ButtonGroup();
 	public JRadioButton pillarButton = new JRadioButton(new ImageIcon(getClass().getResource("/images/PillarButton.png")));
@@ -55,15 +64,35 @@
 		this.add(panelCol, null);
 		this.add(getShapeButton(pillarButton, 35, 0, 34, 32, "Pillar", Shp.PILLAR, Obj.BOYSPP), null);
-		this.add(getShapeButton(sparButton, 35, 32, 34, 32, "Spar", Shp.SPAR, Obj.BOYSPP), null);
-		this.add(getShapeButton(canButton, 35, 64, 34, 32, "Can", Shp.CAN, Obj.BOYSPP), null);
-		this.add(getShapeButton(coneButton, 35, 96, 34, 32, "Cone", Shp.CONE, Obj.BOYSPP), null);
-		this.add(getShapeButton(sphereButton, 70, 0, 34, 32, "Sphere", Shp.SPHERE, Obj.BOYSPP), null);
+		this.add(getShapeButton(sparButton, 70, 0, 34, 32, "Spar", Shp.SPAR, Obj.BOYSPP), null);
+		this.add(getShapeButton(canButton, 105, 0, 34, 32, "Can", Shp.CAN, Obj.BOYSPP), null);
+		this.add(getShapeButton(coneButton, 140, 0, 34, 32, "Cone", Shp.CONE, Obj.BOYSPP), null);
+		this.add(getShapeButton(sphereButton, 35, 32, 34, 32, "Sphere", Shp.SPHERE, Obj.BOYSPP), null);
 		this.add(getShapeButton(barrelButton, 70, 32, 34, 32, "Barrel", Shp.BARREL, Obj.BOYSPP), null);
-		this.add(getShapeButton(superButton, 70, 64, 34, 32, "Super", Shp.SUPER, Obj.BOYSPP), null);
-		this.add(getShapeButton(floatButton, 70, 96, 34, 32, "Float", Shp.FLOAT, Obj.LITFLT), null);
-		this.add(getShapeButton(beaconButton, 105, 0, 34, 32, "Beacon", Shp.BEACON, Obj.BCNSPP), null);
-		this.add(getShapeButton(towerButton, 105, 32, 34, 32, "Tower", Shp.TOWER, Obj.BCNSPP), null);
+		this.add(getShapeButton(superButton, 105, 32, 34, 32, "Super", Shp.SUPER, Obj.BOYSPP), null);
+		this.add(getShapeButton(floatButton, 140, 32, 34, 32, "Float", Shp.FLOAT, Obj.LITFLT), null);
+		this.add(getShapeButton(beaconButton, 35, 64, 34, 32, "Beacon", Shp.BEACON, Obj.BCNSPP), null);
+		this.add(getShapeButton(towerButton, 70, 64, 34, 32, "Tower", Shp.TOWER, Obj.BCNSPP), null);
 		this.add(getShapeButton(stakeButton, 105, 64, 34, 32, "Stake", Shp.STAKE, Obj.BCNSPP), null);
-		this.add(getShapeButton(cairnButton, 105, 96, 34, 32, "Cairn", Shp.CAIRN, Obj.BCNSPP), null);
+		this.add(getShapeButton(cairnButton, 140, 64, 34, 32, "Cairn", Shp.CAIRN, Obj.BCNSPP), null);
+
+		categoryLabel = new JLabel(Messages.getString("Category"), SwingConstants.CENTER);
+		categoryLabel.setBounds(new Rectangle(35, 100, 140, 20));
+		this.add(categoryLabel, null);
+		categoryBox = new JComboBox();
+		categoryBox.setBounds(new Rectangle(35, 120, 140, 20));
+		this.add(categoryBox, null);
+		categoryBox.addActionListener(alCategoryBox);
+		categoryBox.addItem(Messages.getString("NoneSpecified"));
+		categoryBox.addItem(Messages.getString("General"));
+		categoryBox.addItem(Messages.getString("ChannelSeparation"));
+		categoryBox.addItem(Messages.getString("EntryProhibited"));
+		categoryBox.addItem(Messages.getString("Yachting"));
+		categoryBox.addItem(Messages.getString("Diving"));
+		categoryBox.addItem(Messages.getString("Anchorage"));
+		categoryBox.addItem(Messages.getString("Pipeline"));
+		categoryBox.addItem(Messages.getString("SpeedLimit"));
+		categoryBox.addItem(Messages.getString("FerryCrossing"));
+		categoryBox.addItem(Messages.getString("FoulGround"));
+		categoryBox.addItem(Messages.getString("UnknownPurpose"));
 	}
 
