Index: /applications/editors/josm/plugins/validator/build.xml
===================================================================
--- /applications/editors/josm/plugins/validator/build.xml	(revision 16787)
+++ /applications/editors/josm/plugins/validator/build.xml	(revision 16788)
@@ -26,5 +26,5 @@
                 <attribute name="Plugin-Description" value="An OSM data validator. It checks for problems in data, and provides fixes for the common ones. Spellcheck integrated for tag names."/>
                 <attribute name="Plugin-Link" value="http://wiki.openstreetmap.org/index.php/JOSM/Plugins/Validator"/>
-                <attribute name="Plugin-Mainversion" value="1815"/>
+                <attribute name="Plugin-Mainversion" value="1893"/>
                 <attribute name="Plugin-Version" value="${version.entry.commit.revision}"/>
             </manifest>
Index: /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/ErrorLayer.java
===================================================================
--- /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/ErrorLayer.java	(revision 16787)
+++ /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/ErrorLayer.java	(revision 16788)
@@ -112,6 +112,7 @@
     @Override
     public Component[] getMenuEntries() {
-        return new Component[] { new JMenuItem(new LayerListDialog.ShowHideLayerAction(this)),
-                new JMenuItem(new LayerListDialog.DeleteLayerAction(this)), new JSeparator(),
+        return new Component[] { new JMenuItem(LayerListDialog.getInstance().createShowHideLayerAction(this)),
+                new JMenuItem(LayerListDialog.getInstance().createDeleteLayerAction(this)), 
+                new JSeparator(),
                 new JMenuItem(new RenameLayerAction(null, this)), new JSeparator(),
                 new JMenuItem(new LayerListPopup.InfoAction(this)) };
Index: /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/GridLayer.java
===================================================================
--- /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/GridLayer.java	(revision 16787)
+++ /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/GridLayer.java	(revision 16788)
@@ -123,6 +123,6 @@
     {
         return new Component[]{
-                new JMenuItem(new LayerListDialog.ShowHideLayerAction(this)),
-                new JMenuItem(new LayerListDialog.DeleteLayerAction(this)),
+                new JMenuItem(LayerListDialog.getInstance().createShowHideLayerAction(this)),
+                new JMenuItem(LayerListDialog.getInstance().createDeleteLayerAction(this)),
                 new JSeparator(),
                 new JMenuItem(new RenameLayerAction(null, this)),
Index: /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/OSMValidatorPlugin.java
===================================================================
--- /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/OSMValidatorPlugin.java	(revision 16787)
+++ /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/OSMValidatorPlugin.java	(revision 16788)
@@ -31,4 +31,5 @@
 import org.openstreetmap.josm.data.projection.Mercator;
 import org.openstreetmap.josm.gui.MapFrame;
+import org.openstreetmap.josm.gui.OptionPaneUtil;
 import org.openstreetmap.josm.gui.layer.Layer;
 import org.openstreetmap.josm.gui.layer.OsmDataLayer;
@@ -275,10 +276,16 @@
             } catch (InvocationTargetException ite) {
                 ite.getCause().printStackTrace();
-                JOptionPane.showMessageDialog(null, tr("Error initializing test {0}:\n {1}", test.getClass()
-                        .getSimpleName(), ite.getCause().getMessage()));
+                OptionPaneUtil.showMessageDialog(Main.parent, 
+                		tr("Error initializing test {0}:\n {1}", test.getClass()
+                        .getSimpleName(), ite.getCause().getMessage()),
+                        tr("Error"),
+                        JOptionPane.ERROR_MESSAGE);
             } catch (Exception e) {
                 e.printStackTrace();
-                JOptionPane.showMessageDialog(null, tr("Error initializing test {0}:\n {1}", test.getClass()
-                        .getSimpleName(), e));
+                OptionPaneUtil.showMessageDialog(Main.parent, 
+                		tr("Error initializing test {0}:\n {1}", test.getClass()
+                        .getSimpleName(), e),
+                        tr("Error"),
+                        JOptionPane.ERROR_MESSAGE);
             }
         }
Index: /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/ValidateUploadHook.java
===================================================================
--- /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/ValidateUploadHook.java	(revision 16787)
+++ /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/ValidateUploadHook.java	(revision 16788)
@@ -16,4 +16,5 @@
 import org.openstreetmap.josm.data.osm.DataSet;
 import org.openstreetmap.josm.data.osm.OsmPrimitive;
+import org.openstreetmap.josm.gui.OptionPaneUtil;
 import org.openstreetmap.josm.plugins.validator.util.AgregatePrimitivesVisitor;
 import org.openstreetmap.josm.tools.GBC;
@@ -114,6 +115,6 @@
         p.add(new JScrollPane(errorPanel), GBC.eol());
 
-        int res  = JOptionPane.showConfirmDialog(Main.parent, p,
-        tr("Data with errors. Upload anyway?"), JOptionPane.YES_NO_OPTION);
+        int res  = OptionPaneUtil.showConfirmationDialog(Main.parent, p,
+        tr("Data with errors. Upload anyway?"), JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE);
         if(res == JOptionPane.NO_OPTION)
         {
Index: /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/ValidatorDialog.java
===================================================================
--- /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/ValidatorDialog.java	(revision 16787)
+++ /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/ValidatorDialog.java	(revision 16788)
@@ -33,4 +33,5 @@
 import org.openstreetmap.josm.data.osm.WaySegment;
 import org.openstreetmap.josm.data.osm.visitor.BoundingXYVisitor;
+import org.openstreetmap.josm.gui.OptionPaneUtil;
 import org.openstreetmap.josm.gui.SideButton;
 import org.openstreetmap.josm.gui.dialogs.ToggleDialog;
@@ -190,7 +191,7 @@
                 if (asked == JOptionPane.DEFAULT_OPTION) {
                     String[] a = new String[] { tr("Whole group"), tr("Single elements"), tr("Nothing") };
-                    asked = JOptionPane.showOptionDialog(Main.parent, tr("Ignore whole group or individual elements?"),
+                    asked = OptionPaneUtil.showOptionDialog(Main.parent, tr("Ignore whole group or individual elements?"),
                             tr("Ignoring elements"), JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.WARNING_MESSAGE,
-                            ImageProvider.get("dialogs", "delete"), a, a[1]);
+                            a, a[1]);
                 }
                 if (asked == JOptionPane.YES_NO_OPTION) {
Index: /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/tests/TagChecker.java
===================================================================
--- /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/tests/TagChecker.java	(revision 16787)
+++ /applications/editors/josm/plugins/validator/src/org/openstreetmap/josm/plugins/validator/tests/TagChecker.java	(revision 16788)
@@ -44,4 +44,5 @@
 import org.openstreetmap.josm.data.osm.Relation;
 import org.openstreetmap.josm.data.osm.Way;
+import org.openstreetmap.josm.gui.OptionPaneUtil;
 import org.openstreetmap.josm.gui.preferences.TaggingPresetPreference;
 import org.openstreetmap.josm.gui.tagging.TaggingPreset;
@@ -619,5 +620,10 @@
         addSrcButton.addActionListener(new ActionListener(){
             public void actionPerformed(ActionEvent e) {
-                String source = JOptionPane.showInputDialog(Main.parent, tr("TagChecker source"));
+                String source = OptionPaneUtil.showInputDialog(
+                		Main.parent, 
+                		tr("TagChecker source"),
+                		tr("TagChecker source"),
+                		JOptionPane.QUESTION_MESSAGE
+                		);
                 if (source != null)
                     ((DefaultListModel)Sources.getModel()).addElement(source);
@@ -639,5 +645,5 @@
                     if(Sources.getModel().getSize() == 0)
                     {
-                        String source = JOptionPane.showInputDialog(Main.parent, tr("TagChecker source"));
+                        String source = OptionPaneUtil.showInputDialog(Main.parent, tr("TagChecker source"), tr("TagChecker source"), JOptionPane.QUESTION_MESSAGE);
                         if (source != null)
                             ((DefaultListModel)Sources.getModel()).addElement(source);
@@ -645,9 +651,18 @@
                     else
                     {
-                        JOptionPane.showMessageDialog(Main.parent, tr("Please select the row to edit."));
+                        OptionPaneUtil.showMessageDialog(
+                        		Main.parent, 
+                        		tr("Please select the row to edit."),
+                        		tr("Information"),
+                        		JOptionPane.INFORMATION_MESSAGE
+                        		);
                     }
                 }
                 else {
-                    String source = JOptionPane.showInputDialog(Main.parent, tr("TagChecker source"), Sources.getSelectedValue());
+                	String source = (String)OptionPaneUtil.showInputDialog(Main.parent,
+                			tr("TagChecker source"),
+                			tr("TagChecker source"),
+                			JOptionPane.QUESTION_MESSAGE, null, null,
+                			Sources.getSelectedValue());
                     if (source != null)
                         ((DefaultListModel)Sources.getModel()).setElementAt(source, row);
@@ -661,5 +676,5 @@
             public void actionPerformed(ActionEvent e) {
                 if (Sources.getSelectedIndex() == -1)
-                    JOptionPane.showMessageDialog(Main.parent, tr("Please select the row to delete."));
+                    OptionPaneUtil.showMessageDialog(Main.parent, tr("Please select the row to delete."), tr("Information"), JOptionPane.QUESTION_MESSAGE);
                 else {
                     ((DefaultListModel)Sources.getModel()).remove(Sources.getSelectedIndex());
