Index: /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelLit.java
===================================================================
--- /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelLit.java	(revision 27117)
+++ /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelLit.java	(revision 27118)
@@ -298,6 +298,7 @@
 		rangeBox.setText((String)dlg.mark.getLightAtt(Att.RNG, 0));
 		orientationBox.setText((String)dlg.mark.getLightAtt(Att.ORT, 0));
+		orientationBox.setVisible(dlg.mark.getLightAtt(Att.LIT, 0) == Lit.DIR);
 		multipleBox.setText((String)dlg.mark.getLightAtt(Att.MLT, 0));
-		visibilityBox.setSelectedIndex(0);
+		multipleBox.setVisible((dlg.mark.getLightAtt(Att.LIT, 0) == Lit.VERT) || (dlg.mark.getLightAtt(Att.LIT, 0) == Lit.HORIZ));
 		for (Vis vis : visibilities.keySet()) {
 			int item = visibilities.get(vis);
@@ -305,5 +306,4 @@
 				visibilityBox.setSelectedIndex(item);
 		}
-		categoryBox.setSelectedIndex(0);
 		for (Lit lit : categories.keySet()) {
 			int item = categories.get(lit);
@@ -311,5 +311,4 @@
 				categoryBox.setSelectedIndex(item);
 		}
-		exhibitionBox.setSelectedIndex(0);
 		for (Exh exh : exhibitions.keySet()) {
 			int item = exhibitions.get(exh);
Index: /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelMore.java
===================================================================
--- /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelMore.java	(revision 27117)
+++ /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelMore.java	(revision 27118)
@@ -310,5 +310,4 @@
 		sourceBox.setText(dlg.mark.getSource());
 		infoBox.setText(dlg.mark.getInfo());
-		statusBox.setSelectedIndex(0);
 		for (Sts sts : statuses.keySet()) {
 			int item = statuses.get(sts);
@@ -316,5 +315,4 @@
 				statusBox.setSelectedIndex(item);
 		}
-		constrBox.setSelectedIndex(0);
 		for (Cns cns : constructions.keySet()) {
 			int item = constructions.get(cns);
@@ -322,5 +320,4 @@
 				constrBox.setSelectedIndex(item);
 		}
-		conBox.setSelectedIndex(0);
 		for (Con con : conspicuities.keySet()) {
 			int item = conspicuities.get(con);
@@ -328,5 +325,4 @@
 				conBox.setSelectedIndex(item);
 		}
-		reflBox.setSelectedIndex(0);
 		for (Con con : reflectivities.keySet()) {
 			int item = reflectivities.get(con);
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 27117)
+++ /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/panels/PanelSpec.java	(revision 27118)
@@ -142,5 +142,4 @@
 				button.setBorderPainted(false);
 		}
-		categoryBox.setSelectedIndex(0);
 		for (Cat cat : categories.keySet()) {
 			int item = categories.get(cat);
Index: /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/seamarks/SeaMark.java
===================================================================
--- /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/seamarks/SeaMark.java	(revision 27117)
+++ /applications/editors/josm/plugins/smed/plugs/oseam/src/oseam/seamarks/SeaMark.java	(revision 27118)
@@ -1377,12 +1377,12 @@
 			}
 			if (keys.containsKey("seamark:light" + secStr + ":character")) {
-				String c = keys.get("seamark:light" + secStr + ":character");
-				if (c.contains("(") && c.contains(")")) {
-					int i1 = c.indexOf("(");
-					int i2 = c.indexOf(")");
-					setLightAtt(Att.GRP, i, c.substring((i1+1), i2));
-					c = c.substring(0, i1) + c.substring((i2+1), c.length());
-					}
-				setLightAtt(Att.CHR, i, c);
+				str = keys.get("seamark:light" + secStr + ":character");
+				if (str.contains("(") && str.contains(")")) {
+					int i1 = str.indexOf("(");
+					int i2 = str.indexOf(")");
+					setLightAtt(Att.GRP, i, str.substring((i1+1), i2));
+					str = str.substring(0, i1) + str.substring((i2+1), str.length());
+					}
+				setLightAtt(Att.CHR, i, str);
 			}
 			if (keys.containsKey("seamark:light" + secStr + ":group"))
@@ -1423,5 +1423,6 @@
 				setLightAtt(Att.ORT, i, keys.get("seamark:light" + secStr + ":orientation"));
 			if (keys.containsKey("seamark:light" + secStr + ":multiple"))
-				setLightAtt(Att.HGT, i, keys.get("seamark:light" + secStr + ":multiple"));
+				setLightAtt(Att.MLT, i, keys.get("seamark:light" + secStr + ":multiple"));
+			
 			if (sectors.size() == i)
 				break;
