Index: trunk/src/org/openstreetmap/josm/actions/AboutAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/AboutAction.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/AboutAction.java	(revision 12279)
@@ -110,6 +110,6 @@
 
         GuiHelper.prepareResizeableOptionPane(panel, panel.getPreferredSize());
-        int ret = new ExtendedDialog(Main.parent, tr("About JOSM..."), new String[] {tr("OK"), tr("Report bug")})
-            .setButtonIcons(new String[] {"ok", "bug"})
+        int ret = new ExtendedDialog(Main.parent, tr("About JOSM..."), tr("OK"), tr("Report bug"))
+            .setButtonIcons("ok", "bug")
             .setContent(panel, false)
             .showDialog().getValue();
Index: trunk/src/org/openstreetmap/josm/actions/AbstractMergeAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/AbstractMergeAction.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/AbstractMergeAction.java	(revision 12279)
@@ -114,6 +114,6 @@
             return targetLayers[0];
         }
-        ExtendedDialog ed = new ExtendedDialog(Main.parent, title, new String[] {buttonText, tr("Cancel")});
-        ed.setButtonIcons(new String[] {buttonIcon, "cancel"});
+        ExtendedDialog ed = new ExtendedDialog(Main.parent, title, buttonText, tr("Cancel"));
+        ed.setButtonIcons(buttonIcon, "cancel");
         ed.setContent(pnl);
         ed.showDialog();
Index: trunk/src/org/openstreetmap/josm/actions/AddImageryLayerAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/AddImageryLayerAction.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/AddImageryLayerAction.java	(revision 12279)
@@ -49,5 +49,5 @@
     static class SelectWmsLayersDialog extends ExtendedDialog {
         SelectWmsLayersDialog(WMSLayerTree tree, JComboBox<String> formats) {
-            super(Main.parent, tr("Select WMS layers"), new String[]{tr("Add layers"), tr("Cancel")});
+            super(Main.parent, tr("Select WMS layers"), tr("Add layers"), tr("Cancel"));
             final JScrollPane scrollPane = new JScrollPane(tree.getLayerTree());
             scrollPane.setPreferredSize(new Dimension(400, 400));
Index: trunk/src/org/openstreetmap/josm/actions/CombineWayAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/CombineWayAction.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/CombineWayAction.java	(revision 12279)
@@ -61,13 +61,13 @@
 
     protected static boolean confirmChangeDirectionOfWays() {
-        ExtendedDialog ed = new ExtendedDialog(Main.parent,
+        return new ExtendedDialog(Main.parent,
                 tr("Change directions?"),
-                new String[] {tr("Reverse and Combine"), tr("Cancel")});
-        ed.setButtonIcons(new String[] {"wayflip", "cancel"});
-        ed.setContent(tr("The ways can not be combined in their current directions.  "
-                + "Do you want to reverse some of them?"));
-        ed.toggleEnable("combineway-reverse");
-        ed.showDialog();
-        return ed.getValue() == 1;
+                tr("Reverse and Combine"), tr("Cancel"))
+            .setButtonIcons("wayflip", "cancel")
+            .setContent(tr("The ways can not be combined in their current directions.  "
+                + "Do you want to reverse some of them?"))
+            .toggleEnable("combineway-reverse")
+            .showDialog()
+            .getValue() == 1;
     }
 
Index: trunk/src/org/openstreetmap/josm/actions/HistoryInfoAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/HistoryInfoAction.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/HistoryInfoAction.java	(revision 12279)
@@ -58,6 +58,6 @@
          */
         public HistoryObjectIDDialog() {
-            super(Main.parent, tr("Show history"), new String[]{tr("Show history"), tr("Cancel")});
-            setButtonIcons(new String[]{"dialogs/history", "cancel"});
+            super(Main.parent, tr("Show history"), tr("Show history"), tr("Cancel"));
+            setButtonIcons("dialogs/history", "cancel");
             init();
         }
Index: trunk/src/org/openstreetmap/josm/actions/ImageryAdjustAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/ImageryAdjustAction.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/ImageryAdjustAction.java	(revision 12279)
@@ -217,5 +217,5 @@
                     new String[] {tr("OK"), tr("Cancel")},
                     false);
-            setButtonIcons(new String[] {"ok", "cancel"});
+            setButtonIcons("ok", "cancel");
             contentInsets = new Insets(10, 15, 5, 15);
             JPanel pnl = new JPanel(new GridBagLayout());
@@ -294,10 +294,10 @@
                     Main.parent,
                     tr("Overwrite"),
-                    new String[] {tr("Overwrite"), tr("Cancel")}
+                    tr("Overwrite"), tr("Cancel")
             ) { {
                 contentInsets = new Insets(10, 15, 10, 15);
             } };
             dialog.setContent(tr("Offset bookmark already exists. Overwrite?"));
-            dialog.setButtonIcons(new String[] {"ok.png", "cancel.png"});
+            dialog.setButtonIcons("ok", "cancel");
             dialog.setupDialog();
             dialog.setVisible(true);
Index: trunk/src/org/openstreetmap/josm/actions/MapRectifierWMSmenuAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/MapRectifierWMSmenuAction.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/MapRectifierWMSmenuAction.java	(revision 12279)
@@ -162,8 +162,7 @@
         ExtendedDialog diag = new ExtendedDialog(Main.parent,
                 tr("Add Rectified Image"),
-
-                new String[] {tr("Add Rectified Image"), tr("Cancel")});
-        diag.setContent(panel);
-        diag.setButtonIcons(new String[] {"OLmarker", "cancel"});
+                tr("Add Rectified Image"), tr("Cancel"))
+            .setContent(panel)
+            .setButtonIcons("OLmarker", "cancel");
 
         // This repeatedly shows the dialog in case there has been an error.
Index: trunk/src/org/openstreetmap/josm/actions/OpenLocationAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/OpenLocationAction.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/OpenLocationAction.java	(revision 12279)
@@ -65,5 +65,5 @@
         WhichTasksToPerformDialog(JList<DownloadTask> list) {
             super(Main.parent, tr("Which tasks to perform?"), new String[]{tr("Ok"), tr("Cancel")}, true);
-            setButtonIcons(new String[]{"ok", "cancel"});
+            setButtonIcons("ok", "cancel");
             final JPanel pane = new JPanel(new GridLayout(2, 1));
             pane.add(new JLabel(tr("Which tasks to perform?")));
@@ -138,15 +138,12 @@
         ExtendedDialog dialog = new ExtendedDialog(Main.parent,
                 tr("Download Location"),
-                new String[] {tr("Download URL"), tr("Cancel")}
-        );
-        dialog.setContent(all, false /* don't embedded content in JScrollpane  */);
-        dialog.setButtonIcons(new String[] {"download", "cancel"});
-        dialog.setToolTipTexts(new String[] {
+                tr("Download URL"), tr("Cancel"))
+            .setContent(all, false /* don't embedded content in JScrollpane  */)
+            .setButtonIcons("download", "cancel")
+            .setToolTipTexts(
                 tr("Start downloading data"),
-                tr("Close dialog and cancel downloading")
-        });
-        dialog.configureContextsensitiveHelp("/Action/OpenLocation", true /* show help button */);
-        dialog.showDialog();
-        if (dialog.getValue() == 1) {
+                tr("Close dialog and cancel downloading"))
+            .configureContextsensitiveHelp("/Action/OpenLocation", true /* show help button */);
+        if (dialog.showDialog().getValue() == 1) {
             USE_NEW_LAYER.put(layer.isSelected());
             remindUploadAddressHistory(uploadAddresses);
Index: trunk/src/org/openstreetmap/josm/actions/SaveAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/SaveAction.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/SaveAction.java	(revision 12279)
@@ -47,11 +47,8 @@
                     Main.parent,
                     tr("Overwrite"),
-                    new String[] {tr("Overwrite"), tr("Cancel")}
-            );
-            dialog.setButtonIcons(new String[] {"save_as", "cancel"});
-            dialog.setContent(tr("File {0} exists. Overwrite?", f.getName()));
-            dialog.showDialog();
-            int ret = dialog.getValue();
-            if (ret != 1) {
+                    tr("Overwrite"), tr("Cancel"))
+                .setButtonIcons("save_as", "cancel")
+                .setContent(tr("File {0} exists. Overwrite?", f.getName()));
+            if (dialog.showDialog().getValue() != 1) {
                 f = null;
             }
Index: trunk/src/org/openstreetmap/josm/actions/SaveActionBase.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/SaveActionBase.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/SaveActionBase.java	(revision 12279)
@@ -207,13 +207,12 @@
     public static boolean confirmOverwrite(File file) {
         if (file == null || file.exists()) {
-            ExtendedDialog dialog = new ExtendedDialog(
+            return new ExtendedDialog(
                     Main.parent,
                     tr("Overwrite"),
-                    new String[] {tr("Overwrite"), tr("Cancel")}
-            );
-            dialog.setContent(tr("File exists. Overwrite?"));
-            dialog.setButtonIcons(new String[] {"save_as", "cancel"});
-            dialog.showDialog();
-            return dialog.getValue() == 1;
+                    tr("Overwrite"), tr("Cancel"))
+                .setContent(tr("File exists. Overwrite?"))
+                .setButtonIcons("save_as", "cancel")
+                .showDialog()
+                .getValue() == 1;
         }
         return true;
Index: trunk/src/org/openstreetmap/josm/actions/SearchNotesDownloadAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/SearchNotesDownloadAction.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/SearchNotesDownloadAction.java	(revision 12279)
@@ -53,10 +53,8 @@
         contentPanel.add(searchTermBox, gc);
 
-        ExtendedDialog ed = new ExtendedDialog(Main.parent, tr("Search for notes"),
-                new String[] {tr("Search for notes"), tr("Cancel")});
-        ed.setContent(contentPanel);
-        ed.setButtonIcons(new String[] {"note_search", "cancel"});
-        ed.showDialog();
-        if (ed.getValue() != 1) {
+        ExtendedDialog ed = new ExtendedDialog(Main.parent, tr("Search for notes"), tr("Search for notes"), tr("Cancel"))
+            .setContent(contentPanel)
+            .setButtonIcons("note_search", "cancel");
+        if (ed.showDialog().getValue() != 1) {
             return;
         }
@@ -64,7 +62,7 @@
         String searchTerm = Optional.ofNullable(searchTermBox.getText()).orElse("").trim();
         if (searchTerm.isEmpty()) {
-            Notification notification = new Notification(tr("You must enter a search term"));
-            notification.setIcon(JOptionPane.WARNING_MESSAGE);
-            notification.show();
+            new Notification(tr("You must enter a search term"))
+                .setIcon(JOptionPane.WARNING_MESSAGE)
+                .show();
             return;
         }
Index: trunk/src/org/openstreetmap/josm/actions/SessionSaveAsAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/SessionSaveAsAction.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/SessionSaveAsAction.java	(revision 12279)
@@ -118,5 +118,5 @@
             fc = createAndOpenFileChooser(false, false, tr("Save session"), joz, JFileChooser.FILES_ONLY, "lastDirectory");
         } else {
-            fc = createAndOpenFileChooser(false, false, tr("Save session"), Arrays.asList(new FileFilter[]{jos, joz}), jos,
+            fc = createAndOpenFileChooser(false, false, tr("Save session"), Arrays.asList(jos, joz), jos,
                     JFileChooser.FILES_ONLY, "lastDirectory");
         }
@@ -188,7 +188,7 @@
          */
         public SessionSaveAsDialog() {
-            super(Main.parent, tr("Save Session"), new String[] {tr("Save As"), tr("Cancel")});
+            super(Main.parent, tr("Save Session"), tr("Save As"), tr("Cancel"));
             initialize();
-            setButtonIcons(new String[] {"save_as", "cancel"});
+            setButtonIcons("save_as", "cancel");
             setDefaultButton(1);
             setRememberWindowGeometry(getClass().getName() + ".geometry",
Index: trunk/src/org/openstreetmap/josm/actions/ShowStatusReportAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/ShowStatusReportAction.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/ShowStatusReportAction.java	(revision 12279)
@@ -291,6 +291,6 @@
         ExtendedDialog ed = new ExtendedDialog(Main.parent,
                 tr("Status Report"),
-                new String[] {tr("Copy to clipboard and close"), tr("Report bug"), tr("Close") });
-        ed.setButtonIcons(new String[] {"copy", "bug", "cancel" });
+                tr("Copy to clipboard and close"), tr("Report bug"), tr("Close"));
+        ed.setButtonIcons("copy", "bug", "cancel");
         ed.setContent(ta, false);
         ed.setMinimumSize(new Dimension(380, 200));
Index: trunk/src/org/openstreetmap/josm/actions/SplitWayAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/SplitWayAction.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/SplitWayAction.java	(revision 12279)
@@ -243,5 +243,5 @@
             configureList();
 
-            setButtonIcons(new String[]{"ok", "cancel"});
+            setButtonIcons("ok", "cancel");
             final JPanel pane = new JPanel(new GridBagLayout());
             pane.add(new JLabel(getTitle()), GBC.eol().fill(GBC.HORIZONTAL));
Index: trunk/src/org/openstreetmap/josm/actions/UnGlueAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/UnGlueAction.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/UnGlueAction.java	(revision 12279)
@@ -206,6 +206,6 @@
 
         private PropertiesMembershipDialog(boolean preselectNew, boolean queryTags, boolean queryMemberships) {
-            super(Main.parent, tr("Tags / Memberships"), new String[]{tr("Unglue"), tr("Cancel")});
-            setButtonIcons(new String[]{"unglueways", "cancel"});
+            super(Main.parent, tr("Tags / Memberships"), tr("Unglue"), tr("Cancel"));
+            setButtonIcons("unglueways", "cancel");
 
             final JPanel content = new JPanel(new GridBagLayout());
Index: trunk/src/org/openstreetmap/josm/actions/mapmode/SelectAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/mapmode/SelectAction.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/mapmode/SelectAction.java	(revision 12279)
@@ -869,6 +869,6 @@
             super(Main.parent,
                     tr("Move elements"),
-                    new String[]{tr("Move them"), tr("Undo move")});
-            setButtonIcons(new String[]{"reorder", "cancel"});
+                    tr("Move them"), tr("Undo move"));
+            setButtonIcons("reorder", "cancel");
             setCancelButton(2);
         }
Index: trunk/src/org/openstreetmap/josm/actions/search/SearchAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/search/SearchAction.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/search/SearchAction.java	(revision 12279)
@@ -340,7 +340,6 @@
                 Main.parent,
                 initialValues instanceof Filter ? tr("Filter") : tr("Search"),
-                        new String[] {
-                    initialValues instanceof Filter ? tr("Submit filter") : tr("Start Search"),
-                            tr("Cancel")}
+                initialValues instanceof Filter ? tr("Submit filter") : tr("Start Search"),
+                tr("Cancel")
         ) {
             @Override
@@ -368,11 +367,9 @@
             }
         };
-        dialog.setButtonIcons(new String[] {"dialogs/search", "cancel"});
+        dialog.setButtonIcons("dialogs/search", "cancel");
         dialog.configureContextsensitiveHelp("/Action/Search", true /* show help button */);
         dialog.setContent(p);
-        dialog.showDialog();
-        int result = dialog.getValue();
-
-        if (result != 1) return null;
+
+        if (dialog.showDialog().getValue() != 1) return null;
 
         // User pressed OK - let's perform the search
Index: trunk/src/org/openstreetmap/josm/actions/upload/RelationUploadOrderHook.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/upload/RelationUploadOrderHook.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/upload/RelationUploadOrderHook.java	(revision 12279)
@@ -80,8 +80,8 @@
                 Main.parent,
                 tr("Cycling dependencies"),
-                new String[] {tr("OK")}
+                tr("OK")
         );
         dialog.setContent(pnl, false /* don't embed in scroll pane */);
-        dialog.setButtonIcons(new String[] {"ok"});
+        dialog.setButtonIcons("ok");
         dialog.setRememberWindowGeometry(
                 getClass().getName() + ".geometry",
Index: trunk/src/org/openstreetmap/josm/actions/upload/ValidateUploadHook.java
===================================================================
--- trunk/src/org/openstreetmap/josm/actions/upload/ValidateUploadHook.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/actions/upload/ValidateUploadHook.java	(revision 12279)
@@ -141,10 +141,9 @@
         ExtendedDialog ed = new ExtendedDialog(Main.parent,
                 tr("Suspicious data found. Upload anyway?"),
-                new String[] {tr("Continue upload"), tr("Cancel")});
-        ed.setButtonIcons(new String[] {"ok.png", "cancel.png"});
-        ed.setContent(p);
-        ed.showDialog();
+                tr("Continue upload"), tr("Cancel"))
+            .setButtonIcons("ok", "cancel")
+            .setContent(p);
 
-        if (ed.getValue() != 1) {
+        if (ed.showDialog().getValue() != 1) {
             OsmValidator.initializeTests();
             OsmValidator.initializeErrorLayer();
Index: trunk/src/org/openstreetmap/josm/corrector/ReverseWayNoTagCorrector.java
===================================================================
--- trunk/src/org/openstreetmap/josm/corrector/ReverseWayNoTagCorrector.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/corrector/ReverseWayNoTagCorrector.java	(revision 12279)
@@ -36,5 +36,5 @@
      * Tags that imply a semantic meaning from the way direction and cannot be changed.
      */
-    private static final TagCollection directionalTags = new TagCollection(Arrays.asList(new Tag[]{
+    private static final TagCollection directionalTags = new TagCollection(Arrays.asList(
             new Tag("natural", "coastline"),
             new Tag("natural", "cliff"),
@@ -42,6 +42,6 @@
             new Tag("barrier", "kerb"),
             new Tag("barrier", "retaining_wall"),
-            new Tag("man_made", "embankment"),
-    }));
+            new Tag("man_made", "embankment")
+    ));
 
     /**
Index: trunk/src/org/openstreetmap/josm/data/cache/CacheEntryAttributes.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/cache/CacheEntryAttributes.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/data/cache/CacheEntryAttributes.java	(revision 12279)
@@ -30,5 +30,5 @@
     private static final String ERROR_MESSAGE = "errorMessage";
     // this contains all of the above
-    private static final Set<String> RESERVED_KEYS = new HashSet<>(Arrays.asList(new String[]{
+    private static final Set<String> RESERVED_KEYS = new HashSet<>(Arrays.asList(
         NO_TILE_AT_ZOOM,
         ETAG,
@@ -37,6 +37,5 @@
         HTTP_RESPONSE_CODE,
         ERROR_MESSAGE
-    }));
-
+    ));
 
     /**
Index: trunk/src/org/openstreetmap/josm/data/imagery/GetCapabilitiesParseHelper.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/imagery/GetCapabilitiesParseHelper.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/data/imagery/GetCapabilitiesParseHelper.java	(revision 12279)
@@ -177,8 +177,5 @@
             if (event == XMLStreamReader.START_ELEMENT && QN_OWS_CONSTRAINT.equals(reader.getName())
              && "GetEncoding".equals(reader.getAttributeValue("", "name"))) {
-                moveReaderToTag(reader, new QName[]{
-                        QN_OWS_ALLOWED_VALUES,
-                        QN_OWS_VALUE
-                });
+                moveReaderToTag(reader, QN_OWS_ALLOWED_VALUES, QN_OWS_VALUE);
                 return TransferMode.fromString(reader.getElementText());
             }
Index: trunk/src/org/openstreetmap/josm/data/imagery/WMTSTileSource.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/imagery/WMTSTileSource.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/data/imagery/WMTSTileSource.java	(revision 12279)
@@ -194,5 +194,5 @@
 
         SelectLayerDialog(Collection<Layer> layers) {
-            super(Main.parent, tr("Select WMTS layer"), new String[]{tr("Add layers"), tr("Cancel")});
+            super(Main.parent, tr("Select WMTS layer"), tr("Add layers"), tr("Cancel"));
             this.layers = groupLayersByNameAndTileMatrixSet(layers);
             //getLayersTable(layers, Main.getProjection())
@@ -464,5 +464,5 @@
                     } else if (QN_STYLE.equals(reader.getName()) &&
                             "true".equals(reader.getAttributeValue("", "isDefault"))) {
-                        if (GetCapabilitiesParseHelper.moveReaderToTag(reader, new QName[] {GetCapabilitiesParseHelper.QN_OWS_IDENTIFIER})) {
+                        if (GetCapabilitiesParseHelper.moveReaderToTag(reader, GetCapabilitiesParseHelper.QN_OWS_IDENTIFIER)) {
                             layer.style = reader.getElementText();
                             tagStack.push(reader.getName()); // keep tagStack in sync
@@ -636,9 +636,9 @@
                     GetCapabilitiesParseHelper.QN_OWS_OPERATION.equals(reader.getName()) &&
                     "GetTile".equals(reader.getAttributeValue("", "name")) &&
-                    GetCapabilitiesParseHelper.moveReaderToTag(reader, new QName[] {
+                    GetCapabilitiesParseHelper.moveReaderToTag(reader,
                             GetCapabilitiesParseHelper.QN_OWS_DCP,
                             GetCapabilitiesParseHelper.QN_OWS_HTTP,
-                            GetCapabilitiesParseHelper.QN_OWS_GET,
-                    })) {
+                            GetCapabilitiesParseHelper.QN_OWS_GET
+                    )) {
                 this.baseUrl = reader.getAttributeValue(GetCapabilitiesParseHelper.XLINK_NS_URL, "href");
                 this.transferMode = GetCapabilitiesParseHelper.getTransferMode(reader);
Index: trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/MapRendererFactory.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/MapRendererFactory.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/MapRendererFactory.java	(revision 12279)
@@ -303,5 +303,5 @@
     public AbstractMapRenderer createActiveRenderer(Graphics2D g, NavigatableComponent viewport, boolean isInactiveMode) {
         try {
-            Constructor<?> c = activeRenderer.getConstructor(new Class<?>[]{Graphics2D.class, NavigatableComponent.class, boolean.class});
+            Constructor<?> c = activeRenderer.getConstructor(Graphics2D.class, NavigatableComponent.class, boolean.class);
             return AbstractMapRenderer.class.cast(c.newInstance(g, viewport, isInactiveMode));
         } catch (InvocationTargetException e) {
Index: trunk/src/org/openstreetmap/josm/data/projection/datum/SevenParameterDatum.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/projection/datum/SevenParameterDatum.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/data/projection/datum/SevenParameterDatum.java	(revision 12279)
@@ -52,5 +52,5 @@
         double y = dy + xyz[1]*(1+s) + xyz[0]*rz - xyz[2]*rx;
         double z = dz + xyz[2]*(1+s) + xyz[1]*rx - xyz[0]*ry;
-        return Ellipsoid.WGS84.cart2LatLon(new double[] {x, y, z});
+        return Ellipsoid.WGS84.cart2LatLon(x, y, z);
     }
 
@@ -61,5 +61,5 @@
         double y = (1-s)*(-dy + xyz[1] + ((-dx+xyz[0])*(-rz) - (-dz+xyz[2])*(-rx)));
         double z = (1-s)*(-dz + xyz[2] + ((-dy+xyz[1])*(-rx) - (-dx+xyz[0])*(-ry)));
-        return this.ellps.cart2LatLon(new double[] {x, y, z});
+        return this.ellps.cart2LatLon(x, y, z);
     }
 }
Index: trunk/src/org/openstreetmap/josm/data/validation/tests/TagChecker.java
===================================================================
--- trunk/src/org/openstreetmap/josm/data/validation/tests/TagChecker.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/data/validation/tests/TagChecker.java	(revision 12279)
@@ -265,5 +265,5 @@
             // TODO directionKeys are no longer in OsmPrimitive (search pattern is used instead)
             for (String a : Main.pref.getCollection(ValidatorPreference.PREFIX + ".knownkeys",
-                    Arrays.asList(new String[]{"is_in", "int_ref", "fixme", "population"}))) {
+                    Arrays.asList("is_in", "int_ref", "fixme", "population"))) {
                 additionalPresetsValueData.putVoid(a);
             }
Index: trunk/src/org/openstreetmap/josm/gui/MainApplication.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/MainApplication.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/MainApplication.java	(revision 12279)
@@ -545,5 +545,5 @@
                             Main.parent,
                             tr("Unsaved osm data"),
-                            new String[] {tr("Restore"), tr("Cancel"), tr("Discard")}
+                            tr("Restore"), tr("Cancel"), tr("Discard")
                             );
                     dialog.setContent(
@@ -551,5 +551,5 @@
                                     "JOSM found {0} unsaved osm data layers. ", unsavedLayerFiles.size(), unsavedLayerFiles.size()) +
                                     tr("It looks like JOSM crashed last time. Would you like to restore the data?"));
-                    dialog.setButtonIcons(new String[] {"ok", "cancel", "dialogs/delete"});
+                    dialog.setButtonIcons("ok", "cancel", "dialogs/delete");
                     int selection = dialog.showDialog().getValue();
                     if (selection == 1) {
@@ -567,6 +567,6 @@
                 ExtendedDialog ed = new ExtendedDialog(
                         Main.parent, title,
-                        new String[]{tr("Change proxy settings"), tr("Cancel")});
-                ed.setButtonIcons(new String[]{"dialogs/settings", "cancel"}).setCancelButton(2);
+                        tr("Change proxy settings"), tr("Cancel"));
+                ed.setButtonIcons("dialogs/settings", "cancel").setCancelButton(2);
                 ed.setMinimumSize(new Dimension(460, 260));
                 ed.setIcon(JOptionPane.WARNING_MESSAGE);
Index: trunk/src/org/openstreetmap/josm/gui/NoteInputDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/NoteInputDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/NoteInputDialog.java	(revision 12279)
@@ -32,5 +32,5 @@
      */
     public NoteInputDialog(Component parent, String title, String buttonText) {
-        super(parent, title, new String[] {buttonText, tr("Cancel")});
+        super(parent, title, buttonText, tr("Cancel"));
     }
 
@@ -56,5 +56,5 @@
         contentPanel.add(scrollPane);
         setContent(contentPanel, false);
-        setButtonIcons(new Icon[] {icon, ImageProvider.get("cancel.png")});
+        setButtonIcons(icon, ImageProvider.get("cancel.png"));
 
         showDialog();
@@ -67,4 +67,3 @@
         return textArea.getText();
     }
-
 }
Index: trunk/src/org/openstreetmap/josm/gui/NoteSortDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/NoteSortDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/NoteSortDialog.java	(revision 12279)
@@ -33,5 +33,5 @@
      */
     public NoteSortDialog(Component parent, String title, String buttonText) {
-        super(parent, title, new String[] {buttonText, tr("Cancel")});
+        super(parent, title, buttonText, tr("Cancel"));
     }
 
Index: trunk/src/org/openstreetmap/josm/gui/conflict/pair/ComparePairType.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/conflict/pair/ComparePairType.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/conflict/pair/ComparePairType.java	(revision 12279)
@@ -17,15 +17,15 @@
      * compare my version of an {@link org.openstreetmap.josm.data.osm.OsmPrimitive} with their version
      */
-    MY_WITH_THEIR(tr("My with Their"), new ListRole[] {MY_ENTRIES, THEIR_ENTRIES}),
+    MY_WITH_THEIR(tr("My with Their"), MY_ENTRIES, THEIR_ENTRIES),
 
     /**
      * compare my version of an {@link org.openstreetmap.josm.data.osm.OsmPrimitive} with the merged version
      */
-    MY_WITH_MERGED(tr("My with Merged"), new ListRole[] {MY_ENTRIES, MERGED_ENTRIES}),
+    MY_WITH_MERGED(tr("My with Merged"), MY_ENTRIES, MERGED_ENTRIES),
 
     /**
      * compare their version of an {@link org.openstreetmap.josm.data.osm.OsmPrimitive} with the merged veresion
      */
-    THEIR_WITH_MERGED(tr("Their with Merged"), new ListRole[] {THEIR_ENTRIES, MERGED_ENTRIES});
+    THEIR_WITH_MERGED(tr("Their with Merged"), THEIR_ENTRIES, MERGED_ENTRIES);
 
     /** the localized display name */
Index: trunk/src/org/openstreetmap/josm/gui/datatransfer/importers/PrimitiveDataPaster.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/datatransfer/importers/PrimitiveDataPaster.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/datatransfer/importers/PrimitiveDataPaster.java	(revision 12279)
@@ -136,6 +136,6 @@
     private static boolean confirmDeleteIncomplete() {
         ExtendedDialog ed = new ExtendedDialog(Main.parent, tr("Delete incomplete members?"),
-                new String[] {tr("Paste without incomplete members"), tr("Cancel")});
-        ed.setButtonIcons(new String[] {"dialogs/relation/deletemembers", "cancel"});
+                tr("Paste without incomplete members"), tr("Cancel"));
+        ed.setButtonIcons("dialogs/relation/deletemembers", "cancel");
         ed.setContent(tr(
                 "The copied data contains incomplete objects.  " + "When pasting the incomplete objects are removed.  "
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/ChangesetDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/ChangesetDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/ChangesetDialog.java	(revision 12279)
@@ -211,5 +211,5 @@
         lstInActiveDataLayer.addMouseListener(popupMenuLauncher);
 
-        createLayout(pnl, false, Arrays.asList(new SideButton[] {
+        createLayout(pnl, false, Arrays.asList(
             new SideButton(selectObjectsAction, false),
             new SideButton(readChangesetAction, false),
@@ -217,5 +217,5 @@
             new SideButton(showChangesetInfoAction, false),
             new SideButton(new LaunchChangesetManagerAction(), false)
-        }));
+        ));
     }
 
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/CommandStackDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/CommandStackDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/CommandStackDialog.java	(revision 12279)
@@ -127,9 +127,9 @@
         wireUpdateEnabledStateUpdater(redoAction, redoTree);
 
-        scrollPane = (JScrollPane) createLayout(treesPanel, true, Arrays.asList(new SideButton[] {
+        scrollPane = (JScrollPane) createLayout(treesPanel, true, Arrays.asList(
             new SideButton(selectAction),
             new SideButton(undoAction),
             new SideButton(redoAction)
-        }));
+        ));
 
         InputMapUtils.addEnterAction(undoTree, selectAndZoomAction);
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/ConflictDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/ConflictDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/ConflictDialog.java	(revision 12279)
@@ -135,7 +135,5 @@
         addListSelectionListener(actSelect);
 
-        createLayout(lstConflicts, true, Arrays.asList(new SideButton[] {
-            btnResolve, btnSelect
-        }));
+        createLayout(lstConflicts, true, Arrays.asList(btnResolve, btnSelect));
 
         popupMenuHandler.addAction(Main.main.menu.autoScaleActions.get("conflict"));
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/ConflictResolutionDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/ConflictResolutionDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/ConflictResolutionDialog.java	(revision 12279)
@@ -45,5 +45,5 @@
     public ConflictResolutionDialog(Component parent) {
         // We define our own actions, but need to give a hint about number of buttons
-        super(parent, tr("Resolve conflicts"), new String[] {null, null, null});
+        super(parent, tr("Resolve conflicts"), null, null, null);
         setDefaultButton(1);
         setCancelButton(2);
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/FilterDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/FilterDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/FilterDialog.java	(revision 12279)
@@ -239,7 +239,7 @@
         });
 
-        createLayout(userTable, true, Arrays.asList(new SideButton[] {
+        createLayout(userTable, true, Arrays.asList(
                 addButton, editButton, deleteButton, upButton, downButton
-        }));
+        ));
     }
 
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/InspectPrimitiveDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/InspectPrimitiveDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/InspectPrimitiveDialog.java	(revision 12279)
@@ -62,5 +62,5 @@
      */
     public InspectPrimitiveDialog(final Collection<OsmPrimitive> primitives, OsmDataLayer layer) {
-        super(Main.parent, tr("Advanced object info"), new String[] {tr("Close")});
+        super(Main.parent, tr("Advanced object info"), tr("Close"));
         this.primitives = new ArrayList<>(primitives);
         this.layer = layer;
@@ -68,5 +68,5 @@
                 WindowGeometry.centerInWindow(Main.parent, new Dimension(750, 550)));
 
-        setButtonIcons(new String[]{"ok.png"});
+        setButtonIcons("ok");
         final JTabbedPane tabs = new JTabbedPane();
 
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/LatLonDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/LatLonDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/LatLonDialog.java	(revision 12279)
@@ -156,6 +156,6 @@
 
     public LatLonDialog(Component parent, String title, String help) {
-        super(parent, title, new String[] {tr("Ok"), tr("Cancel")});
-        setButtonIcons(new String[] {"ok", "cancel"});
+        super(parent, title, tr("Ok"), tr("Cancel"));
+        setButtonIcons("ok", "cancel");
         configureContextsensitiveHelp(help, true);
 
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/LayerListPopup.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/LayerListPopup.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/LayerListPopup.java	(revision 12279)
@@ -51,6 +51,6 @@
                 ExtendedDialog ed = new ExtendedDialog(
                         Main.parent, tr("Information about layer"),
-                        new String[] {tr("OK")});
-                ed.setButtonIcons(new String[] {"ok"});
+                        tr("OK"));
+                ed.setButtonIcons("ok");
                 ed.setIcon(JOptionPane.INFORMATION_MESSAGE);
                 ed.setContent((Component) object);
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/LogShowDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/LogShowDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/LogShowDialog.java	(revision 12279)
@@ -30,6 +30,6 @@
      */
     public LogShowDialog(String title, String msg, String log) {
-        super(Main.parent, title, new String[] {tr("OK")});
-        setButtonIcons(new String[] {"ok.png"});
+        super(Main.parent, title, tr("OK"));
+        setButtonIcons("ok");
         setContent(build(msg, log));
     }
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/MapPaintDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/MapPaintDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/MapPaintDialog.java	(revision 12279)
@@ -535,7 +535,7 @@
                 return;
             final StyleSource s = model.getRow(sel);
-            ExtendedDialog info = new ExtendedDialog(Main.parent, tr("Map Style info"), new String[] {tr("Close")});
+            ExtendedDialog info = new ExtendedDialog(Main.parent, tr("Map Style info"), tr("Close"));
             info.setPreferredSize(new Dimension(600, 400));
-            info.setButtonIcons(new String[] {"ok.png"});
+            info.setButtonIcons("ok");
 
             final JTabbedPane tabs = new JTabbedPane();
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/MenuItemSearchDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/MenuItemSearchDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/MenuItemSearchDialog.java	(revision 12279)
@@ -27,5 +27,5 @@
 
     private MenuItemSearchDialog(MainMenu menu) {
-        super(Main.parent, tr("Search menu items"), new String[]{tr("Select"), tr("Cancel")});
+        super(Main.parent, tr("Search menu items"), tr("Select"), tr("Cancel"));
         this.selector = new Selector(menu);
         this.selector.setDblClickListener(e -> buttonAction(0, null));
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/NotesDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/NotesDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/NotesDialog.java	(revision 12279)
@@ -107,5 +107,5 @@
         pane.add(new JScrollPane(displayList), BorderLayout.CENTER);
 
-        createLayout(pane, false, Arrays.asList(new SideButton[]{
+        createLayout(pane, false, Arrays.asList(
                 new SideButton(downloadNotesInViewAction, false),
                 new SideButton(newAction, false),
@@ -115,5 +115,5 @@
                 new SideButton(sortAction, false),
                 new SideButton(openInBrowserAction, false),
-                new SideButton(uploadAction, false)}));
+                new SideButton(uploadAction, false)));
         updateButtonStates();
     }
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/RelationListDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/RelationListDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/RelationListDialog.java	(revision 12279)
@@ -163,5 +163,5 @@
         recentRelationsAction = new RecentRelationsAction(editButton);
 
-        createLayout(pane, false, Arrays.asList(new SideButton[]{
+        createLayout(pane, false, Arrays.asList(
                 new SideButton(newAction, false),
                 editButton,
@@ -169,5 +169,5 @@
                 new SideButton(deleteRelationsAction, false),
                 new SideButton(selectRelationAction, false)
-        }));
+        ));
 
         InputMapUtils.unassignCtrlShiftUpDown(displaylist, JComponent.WHEN_FOCUSED);
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/SelectionListDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/SelectionListDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/SelectionListDialog.java	(revision 12279)
@@ -132,7 +132,7 @@
         searchButton.createArrow(e -> SearchPopupMenu.launch(searchButton));
 
-        createLayout(lstPrimitives, true, Arrays.asList(new SideButton[] {
+        createLayout(lstPrimitives, true, Arrays.asList(
             selectButton, searchButton, new SideButton(actShowHistory)
-        }));
+        ));
     }
 
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/UserListDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/UserListDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/UserListDialog.java	(revision 12279)
@@ -97,8 +97,8 @@
         userTable.getSelectionModel().addListSelectionListener(showUserInfoAction);
 
-        createLayout(userTable, true, Arrays.asList(new SideButton[] {
+        createLayout(userTable, true, Arrays.asList(
             new SideButton(selectionUsersPrimitivesAction),
             new SideButton(showUserInfoAction)
-        }));
+        ));
     }
 
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PropertiesDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PropertiesDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PropertiesDialog.java	(revision 12279)
@@ -1014,11 +1014,10 @@
             ExtendedDialog ed = new ExtendedDialog(Main.parent,
                     tr("Change relation"),
-                    new String[] {tr("Delete from relation"), tr("Cancel")});
-            ed.setButtonIcons(new String[] {"dialogs/delete", "cancel"});
+                    tr("Delete from relation"), tr("Cancel"));
+            ed.setButtonIcons("dialogs/delete", "cancel");
             ed.setContent(tr("Really delete selection from relation {0}?", cur.getDisplayName(DefaultNameFormatter.getInstance())));
             ed.toggleEnable(DELETE_FROM_RELATION_PREF);
-            ed.showDialog();
-
-            if (ed.getValue() != 1)
+
+            if (ed.showDialog().getValue() != 1)
                 return;
 
Index: trunk/src/org/openstreetmap/josm/gui/dialogs/properties/TagEditHelper.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/dialogs/properties/TagEditHelper.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/dialogs/properties/TagEditHelper.java	(revision 12279)
@@ -376,15 +376,13 @@
      */
     private static boolean warnOverwriteKey(String action, String togglePref) {
-        ExtendedDialog ed = new ExtendedDialog(
+        return new ExtendedDialog(
                 Main.parent,
                 tr("Overwrite key"),
-                new String[]{tr("Replace"), tr("Cancel")});
-        ed.setButtonIcons(new String[]{"purge", "cancel"});
-        ed.setContent(action+'\n'+ tr("The new key is already used, overwrite values?"));
-        ed.setCancelButton(2);
-        ed.toggleEnable(togglePref);
-        ed.showDialog();
-
-        return ed.getValue() == 1;
+                tr("Replace"), tr("Cancel"))
+            .setButtonIcons("purge", "cancel")
+            .setContent(action+'\n'+ tr("The new key is already used, overwrite values?"))
+            .setCancelButton(2)
+            .toggleEnable(togglePref)
+            .showDialog().getValue() == 1;
     }
 
@@ -416,6 +414,6 @@
 
         protected EditTagDialog(String key, Map<String, Integer> map, final boolean initialFocusOnKey) {
-            super(Main.parent, trn("Change value?", "Change values?", map.size()), new String[] {tr("OK"), tr("Cancel")});
-            setButtonIcons(new String[] {"ok", "cancel"});
+            super(Main.parent, trn("Change value?", "Change values?", map.size()), tr("OK"), tr("Cancel"));
+            setButtonIcons("ok", "cancel");
             setCancelButton(2);
             configureContextsensitiveHelp("/Dialog/EditValue", true /* show help button */);
@@ -679,6 +677,6 @@
 
         protected AddTagsDialog() {
-            super(Main.parent, tr("Add value?"), new String[] {tr("OK"), tr("Cancel")});
-            setButtonIcons(new String[] {"ok", "cancel"});
+            super(Main.parent, tr("Add value?"), tr("OK"), tr("Cancel"));
+            setButtonIcons("ok", "cancel");
             setCancelButton(2);
             configureContextsensitiveHelp("/Dialog/AddValue", true /* show help button */);
Index: trunk/src/org/openstreetmap/josm/gui/download/DownloadObjectDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/download/DownloadObjectDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/download/DownloadObjectDialog.java	(revision 12279)
@@ -40,11 +40,11 @@
      */
     public DownloadObjectDialog(Component parent) {
-        super(parent, tr("Download object"), new String[]{tr("Download object"), tr("Cancel")});
+        super(parent, tr("Download object"), tr("Download object"), tr("Cancel"));
         init();
-        setButtonIcons(new String[]{"download", "cancel"});
-        setToolTipTexts(new String[]{
+        setButtonIcons("download", "cancel");
+        setToolTipTexts(
                 tr("Start downloading"),
                 tr("Close dialog and cancel downloading")
-        });
+        );
         configureContextsensitiveHelp("/Action/DownloadObject", true /* show help button */);
     }
Index: trunk/src/org/openstreetmap/josm/gui/io/DownloadPrimitivesWithReferrersTask.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/io/DownloadPrimitivesWithReferrersTask.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/io/DownloadPrimitivesWithReferrersTask.java	(revision 12279)
@@ -218,6 +218,6 @@
                 Main.parent,
                 title,
-                new String[] {tr("Ok")})
-        .setButtonIcons(new String[] {"ok"})
+                tr("Ok"))
+        .setButtonIcons("ok")
         .setIcon(msgType)
         .setContent(p, false);
Index: trunk/src/org/openstreetmap/josm/gui/layer/AbstractTileSourceLayer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/AbstractTileSourceLayer.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/layer/AbstractTileSourceLayer.java	(revision 12279)
@@ -429,5 +429,5 @@
             Tile clickedTile = clickedTileHolder.getTile();
             if (clickedTile != null) {
-                ExtendedDialog ed = new ExtendedDialog(Main.parent, tr("Tile Info"), new String[]{tr("OK")});
+                ExtendedDialog ed = new ExtendedDialog(Main.parent, tr("Tile Info"), tr("OK"));
                 JPanel panel = new JPanel(new GridBagLayout());
                 Rectangle2D displaySize = coordinateConverter.getRectangleForTile(clickedTile);
Index: trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java	(revision 12279)
@@ -659,5 +659,5 @@
     @Override public Action[] getMenuEntries() {
         List<Action> actions = new ArrayList<>();
-        actions.addAll(Arrays.asList(new Action[]{
+        actions.addAll(Arrays.asList(
                 LayerListDialog.getInstance().createActivateLayerAction(this),
                 LayerListDialog.getInstance().createShowHideLayerAction(),
@@ -667,21 +667,20 @@
                 LayerListDialog.getInstance().createDuplicateLayerAction(this),
                 new LayerSaveAction(this),
-                new LayerSaveAsAction(this),
-        }));
+                new LayerSaveAsAction(this)));
         if (ExpertToggleAction.isExpert()) {
-            actions.addAll(Arrays.asList(new Action[]{
+            actions.addAll(Arrays.asList(
                     new LayerGpxExportAction(this),
-                    new ConvertToGpxLayerAction()}));
-        }
-        actions.addAll(Arrays.asList(new Action[]{
+                    new ConvertToGpxLayerAction()));
+        }
+        actions.addAll(Arrays.asList(
                 SeparatorLayerAction.INSTANCE,
-                new RenameLayerAction(getAssociatedFile(), this)}));
+                new RenameLayerAction(getAssociatedFile(), this)));
         if (ExpertToggleAction.isExpert()) {
             actions.add(new ToggleUploadDiscouragedLayerAction(this));
         }
-        actions.addAll(Arrays.asList(new Action[]{
+        actions.addAll(Arrays.asList(
                 new ConsistencyTestAction(),
                 SeparatorLayerAction.INSTANCE,
-                new LayerListPopup.InfoAction(this)}));
+                new LayerListPopup.InfoAction(this)));
         return actions.toArray(new Action[actions.size()]);
     }
@@ -1054,12 +1053,11 @@
                 return 2;
             }
-            ExtendedDialog dialog = new ExtendedDialog(
+            return new ExtendedDialog(
                     Main.parent,
                     tr("Empty document"),
-                    new String[] {tr("Save anyway"), tr("Cancel")}
-            );
-            dialog.setContent(tr("The document contains no data."));
-            dialog.setButtonIcons(new String[] {"save", "cancel"});
-            return dialog.showDialog().getValue();
+                    tr("Save anyway"), tr("Cancel"))
+                .setContent(tr("The document contains no data."))
+                .setButtonIcons("save", "cancel")
+                .showDialog().getValue();
         })) {
             return false;
@@ -1068,14 +1066,13 @@
         ConflictCollection conflictsCol = getConflicts();
         return conflictsCol == null || conflictsCol.isEmpty() || 1 == GuiHelper.runInEDTAndWaitAndReturn(() -> {
-            ExtendedDialog dialog = new ExtendedDialog(
+            return new ExtendedDialog(
                     Main.parent,
                     /* I18N: Display title of the window showing conflicts */
                     tr("Conflicts"),
-                    new String[] {tr("Reject Conflicts and Save"), tr("Cancel")}
-            );
-            dialog.setContent(
-                    tr("There are unresolved conflicts. Conflicts will not be saved and handled as if you rejected all. Continue?"));
-            dialog.setButtonIcons(new String[] {"save", "cancel"});
-            return dialog.showDialog().getValue();
+                    tr("Reject Conflicts and Save"), tr("Cancel"))
+                .setContent(
+                    tr("There are unresolved conflicts. Conflicts will not be saved and handled as if you rejected all. Continue?"))
+                .setButtonIcons("save", "cancel")
+                .showDialog().getValue();
         });
     }
Index: trunk/src/org/openstreetmap/josm/gui/layer/geoimage/CorrelateGpxWithImages.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/geoimage/CorrelateGpxWithImages.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/layer/geoimage/CorrelateGpxWithImages.java	(revision 12279)
@@ -142,7 +142,7 @@
                         Main.parent,
                         tr("Correlate images with GPX track"),
-                        new String[] {tr("OK"), tr("Try Again")}).
+                        tr("OK"), tr("Try Again")).
                         setContent(tr("No images could be matched!")).
-                        setButtonIcons(new String[] {"ok", "dialogs/refresh"}).
+                        setButtonIcons("ok", "dialogs/refresh").
                         showDialog().getValue() == 2)
                 return AGAIN;
@@ -732,5 +732,5 @@
             );
             syncDialog.setContent(panelTf, false);
-            syncDialog.setButtonIcons(new String[] {"ok", "cancel"});
+            syncDialog.setButtonIcons("ok", "cancel");
             syncDialog.setupDialog();
             outerPanel.add(syncDialog.getContentPane(), BorderLayout.PAGE_START);
@@ -955,6 +955,6 @@
             new ExtendedDialog(Main.parent,
                     tr("Adjust timezone and offset"),
-                    new String[] {tr("Close")}).
-                    setContent(p).setButtonIcons(new String[] {"ok"}).showDialog();
+                    tr("Close")).
+                    setContent(p).setButtonIcons("ok").showDialog();
         }
     }
Index: trunk/src/org/openstreetmap/josm/gui/layer/geoimage/GeoImageLayer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/geoimage/GeoImageLayer.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/layer/geoimage/GeoImageLayer.java	(revision 12279)
@@ -719,6 +719,6 @@
                     Main.parent,
                     tr("Delete image file from disk"),
-                    new String[] {tr("Cancel"), tr("Delete")})
-            .setButtonIcons(new String[] {"cancel", "dialogs/delete"})
+                    tr("Cancel"), tr("Delete"))
+            .setButtonIcons("cancel", "dialogs/delete")
             .setContent(new JLabel(tr("<html><h3>Delete the file {0} from disk?<p>The image file will be permanently lost!</h3></html>",
                     toDelete.getFile().getName()), ImageProvider.get("dialogs/geoimage/deletefromdisk"), SwingConstants.LEFT))
Index: trunk/src/org/openstreetmap/josm/gui/layer/gpx/ChooseTrackVisibilityAction.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/gpx/ChooseTrackVisibilityAction.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/layer/gpx/ChooseTrackVisibilityAction.java	(revision 12279)
@@ -265,6 +265,6 @@
             // build dialog
             ExtendedDialog ed = new ExtendedDialog(Main.parent, tr("Set track visibility for {0}", layer.getName()),
-                    new String[]{tr("Show all"), tr("Show selected only"), tr("Cancel")});
-            ed.setButtonIcons(new String[]{"eye", "dialogs/filter", "cancel"});
+                    tr("Show all"), tr("Show selected only"), tr("Cancel"));
+            ed.setButtonIcons("eye", "dialogs/filter", "cancel");
             ed.setContent(msg, false);
             ed.setDefaultButton(2);
Index: trunk/src/org/openstreetmap/josm/gui/preferences/SourceEditor.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/SourceEditor.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/SourceEditor.java	(revision 12279)
@@ -44,5 +44,4 @@
 import javax.swing.DefaultListModel;
 import javax.swing.DefaultListSelectionModel;
-import javax.swing.Icon;
 import javax.swing.ImageIcon;
 import javax.swing.JButton;
@@ -916,5 +915,5 @@
          */
         public EditSourceEntryDialog(Component parent, String title, SourceEntry e) {
-            super(parent, title, new String[] {tr("Ok"), tr("Cancel")});
+            super(parent, title, tr("Ok"), tr("Cancel"));
 
             JPanel p = new JPanel(new GridBagLayout());
@@ -942,5 +941,5 @@
                 p.add(cbActive, GBC.eol().insets(15, 0, 5, 0));
             }
-            setButtonIcons(new String[] {"ok", "cancel"});
+            setButtonIcons("ok", "cancel");
             setContent(p);
 
@@ -1191,13 +1190,13 @@
                 }
                 if (!messages.isEmpty()) {
-                    ExtendedDialog dlg = new ExtendedDialog(Main.parent, tr("Warning"), new String[] {tr("Cancel"), tr("Continue anyway")});
-                    dlg.setButtonIcons(new Icon[] {
+                    ExtendedDialog dlg = new ExtendedDialog(Main.parent, tr("Warning"), tr("Cancel"), tr("Continue anyway"));
+                    dlg.setButtonIcons(
                         ImageProvider.get("cancel"),
                         new ImageProvider("ok").setMaxSize(ImageSizes.LARGEICON).addOverlay(
                                 new ImageOverlay(new ImageProvider("warning-small"), 0.5, 0.5, 1.0, 1.0)).get()
-                    });
-                    dlg.setToolTipTexts(new String[] {
+                    );
+                    dlg.setToolTipTexts(
                         tr("Cancel and return to the previous dialog"),
-                        tr("Ignore warning and install style anyway")});
+                        tr("Ignore warning and install style anyway"));
                     dlg.setContent("<html>" + tr("Some entries have unmet dependencies:") +
                             "<br>" + Utils.join("<br>", messages) + "</html>");
Index: trunk/src/org/openstreetmap/josm/gui/preferences/advanced/AbstractListEditor.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/advanced/AbstractListEditor.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/advanced/AbstractListEditor.java	(revision 12279)
@@ -29,7 +29,7 @@
      */
     public AbstractListEditor(Component parent, String title, PrefEntry entry) {
-        super(parent, title, new String[] {tr("OK"), tr("Cancel")});
+        super(parent, title, tr("OK"), tr("Cancel"));
         this.entry = entry;
-        setButtonIcons(new String[] {"ok.png", "cancel.png"});
+        setButtonIcons("ok.png", "cancel.png");
         setRememberWindowGeometry(getClass().getName() + ".geometry", WindowGeometry.centerInWindow(parent, new Dimension(500, 350)));
     }
Index: trunk/src/org/openstreetmap/josm/gui/preferences/advanced/PreferencesTable.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/advanced/PreferencesTable.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/advanced/PreferencesTable.java	(revision 12279)
@@ -220,6 +220,6 @@
 
     private static boolean askAddSetting(JComponent gui, JPanel p) {
-        return new ExtendedDialog(gui, tr("Add setting"), new String[] {tr("OK"), tr("Cancel")})
-                .setContent(p).setButtonIcons(new String[] {"ok.png", "cancel.png"}).showDialog().getValue() == 1;
+        return new ExtendedDialog(gui, tr("Add setting"), tr("OK"), tr("Cancel"))
+                .setContent(p).setButtonIcons("ok.png", "cancel.png").showDialog().getValue() == 1;
     }
 
Index: trunk/src/org/openstreetmap/josm/gui/preferences/advanced/StringEditor.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/advanced/StringEditor.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/advanced/StringEditor.java	(revision 12279)
@@ -30,7 +30,7 @@
      */
     public StringEditor(final JComponent gui, PrefEntry entry, StringSetting setting) {
-        super(gui, tr("Change string setting"), new String[] {tr("OK"), tr("Cancel")});
+        super(gui, tr("Change string setting"), tr("OK"), tr("Cancel"));
         this.entry = entry;
-        setButtonIcons(new String[] {"ok.png", "cancel.png"});
+        setButtonIcons("ok", "cancel");
         setContent(build(setting.getValue() == null ? "" : setting.getValue()));
     }
Index: trunk/src/org/openstreetmap/josm/gui/preferences/imagery/AddImageryDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/imagery/AddImageryDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/imagery/AddImageryDialog.java	(revision 12279)
@@ -22,6 +22,6 @@
      */
     public AddImageryDialog(Component parent, AddImageryPanel panel) {
-        super(parent, tr("Add Imagery URL"), new String[] {tr("OK"), tr("Cancel")});
-        setButtonIcons(new String[] {"ok", "cancel"});
+        super(parent, tr("Add Imagery URL"), tr("OK"), tr("Cancel"));
+        setButtonIcons("ok", "cancel");
         setCancelButton(2);
         configureContextsensitiveHelp("/Dialog/AddImagery", true /* show help button */);
Index: trunk/src/org/openstreetmap/josm/gui/preferences/map/MapPaintPreference.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/map/MapPaintPreference.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/map/MapPaintPreference.java	(revision 12279)
@@ -266,5 +266,5 @@
             defPL2.description = tr("the main Potlatch 2 style");
 
-            return Arrays.asList(new ExtendedSourceEntry[] {defJosmMapcss, defPL2});
+            return Arrays.asList(defJosmMapcss, defPL2);
         }
 
Index: trunk/src/org/openstreetmap/josm/gui/preferences/map/TaggingPresetPreference.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/preferences/map/TaggingPresetPreference.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/preferences/map/TaggingPresetPreference.java	(revision 12279)
@@ -60,5 +60,5 @@
                             Main.warn(e, tr("Could not read tagging preset source: {0}", source));
                             ExtendedDialog ed = new ExtendedDialog(Main.parent, tr("Error"),
-                                    new String[] {tr("Yes"), tr("No"), tr("Cancel")});
+                                    tr("Yes"), tr("No"), tr("Cancel"));
                             ed.setContent(tr("Could not read tagging preset source: {0}\nDo you want to keep it?", source));
                             switch (ed.showDialog().getValue()) {
Index: trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPreset.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPreset.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPreset.java	(revision 12279)
@@ -435,7 +435,7 @@
             contentInsets = new Insets(10, 5, 0, 5);
             if (showNewRelation) {
-                setButtonIcons(new String[] {"ok", "dialogs/addrelation", "cancel" });
+                setButtonIcons("ok", "dialogs/addrelation", "cancel");
             } else {
-                setButtonIcons(new String[] {"ok", "cancel" });
+                setButtonIcons("ok", "cancel");
             }
             setContent(content);
Index: trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetSearchDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetSearchDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetSearchDialog.java	(revision 12279)
@@ -32,5 +32,5 @@
 
     private TaggingPresetSearchDialog() {
-        super(Main.parent, tr("Presets"), new String[] {tr("Select"), tr("Cancel")});
+        super(Main.parent, tr("Presets"), tr("Select"), tr("Cancel"));
         selector = new TaggingPresetSelector(true, true);
         setContent(selector, false);
Index: trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetSearchPrimitiveDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetSearchPrimitiveDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetSearchPrimitiveDialog.java	(revision 12279)
@@ -66,5 +66,5 @@
 
     TaggingPresetSearchPrimitiveDialog() {
-        super(Main.parent, tr("Presets"), new String[] {tr("Search"), tr("Cancel")});
+        super(Main.parent, tr("Presets"), tr("Search"), tr("Cancel"));
         selector = new TaggingPresetSelector(false, false);
         setContent(selector, false);
@@ -86,5 +86,4 @@
             TaggingPreset preset = selector.getSelectedPresetAndUpdateClassification();
             if (preset != null) {
-
                 final Set<OsmPrimitive> matching = new HashSet<>(Main.getLayerManager().getEditDataSet().getPrimitives(preset));
                 Main.getLayerManager().getEditDataSet().setSelected(matching);
Index: trunk/src/org/openstreetmap/josm/gui/util/GuiHelper.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/util/GuiHelper.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/gui/util/GuiHelper.java	(revision 12279)
@@ -33,5 +33,4 @@
 
 import javax.swing.GrayFilter;
-import javax.swing.Icon;
 import javax.swing.ImageIcon;
 import javax.swing.JComponent;
@@ -197,13 +196,11 @@
     public static boolean warnUser(String title, String content, ImageIcon baseActionIcon, String continueToolTip) {
         ExtendedDialog dlg = new ExtendedDialog(Main.parent,
-                title, new String[] {tr("Cancel"), tr("Continue")});
+                title, tr("Cancel"), tr("Continue"));
         dlg.setContent(content);
-        dlg.setButtonIcons(new Icon[] {
+        dlg.setButtonIcons(
                     new ImageProvider("cancel").setMaxSize(ImageSizes.LARGEICON).get(),
                     new ImageProvider("upload").setMaxSize(ImageSizes.LARGEICON).addOverlay(
-                            new ImageOverlay(new ImageProvider("warning-small"), 0.5, 0.5, 1.0, 1.0)).get()});
-        dlg.setToolTipTexts(new String[] {
-                tr("Cancel"),
-                continueToolTip});
+                            new ImageOverlay(new ImageProvider("warning-small"), 0.5, 0.5, 1.0, 1.0)).get());
+        dlg.setToolTipTexts(tr("Cancel"), continueToolTip);
         dlg.setIcon(JOptionPane.WARNING_MESSAGE);
         dlg.setCancelButton(1);
@@ -227,6 +224,6 @@
         p.add(sp, GBC.eol().fill(GBC.BOTH));
 
-        ExtendedDialog ed = new ExtendedDialog(parent, title, new String[] {tr("OK")});
-        ed.setButtonIcons(new String[] {"ok.png"});
+        ExtendedDialog ed = new ExtendedDialog(parent, title, tr("OK"));
+        ed.setButtonIcons("ok");
         ed.setContent(p);
         ed.showDialog();
Index: trunk/src/org/openstreetmap/josm/io/DefaultProxySelector.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/DefaultProxySelector.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/io/DefaultProxySelector.java	(revision 12279)
@@ -146,5 +146,5 @@
         proxyExceptions = new HashSet<>(
             Main.pref.getCollection(ProxyPreferencesPanel.PROXY_EXCEPTIONS,
-                    Arrays.asList(new String[]{"localhost", IPV4_LOOPBACK, IPV6_LOOPBACK}))
+                    Arrays.asList("localhost", IPV4_LOOPBACK, IPV6_LOOPBACK))
         );
     }
Index: trunk/src/org/openstreetmap/josm/io/GpxExporter.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/GpxExporter.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/io/GpxExporter.java	(revision 12279)
@@ -148,10 +148,9 @@
         ExtendedDialog ed = new ExtendedDialog(Main.parent,
                 tr("Export options"),
-                new String[] {tr("Export and Save"), tr("Cancel")});
-        ed.setButtonIcons(new String[] {"exportgpx", "cancel"});
-        ed.setContent(p);
-        ed.showDialog();
-
-        if (ed.getValue() != 1) {
+                tr("Export and Save"), tr("Cancel"))
+            .setButtonIcons("exportgpx", "cancel")
+            .setContent(p);
+
+        if (ed.showDialog().getValue() != 1) {
             setCanceled(true);
             return;
Index: trunk/src/org/openstreetmap/josm/io/imagery/ImageryReader.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/imagery/ImageryReader.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/io/imagery/ImageryReader.java	(revision 12279)
@@ -171,11 +171,11 @@
                 break;
             case MIRROR:
-                if (Arrays.asList(new String[] {
+                if (Arrays.asList(
                         "type",
                         "url",
                         MIN_ZOOM,
                         MAX_ZOOM,
-                        TILE_SIZE,
-                }).contains(qName)) {
+                        TILE_SIZE
+                ).contains(qName)) {
                     newState = State.MIRROR_ATTRIBUTE;
                     lang = atts.getValue("lang");
@@ -186,5 +186,5 @@
                 break;
             case ENTRY:
-                if (Arrays.asList(new String[] {
+                if (Arrays.asList(
                         "name",
                         "id",
@@ -207,6 +207,6 @@
                         "date",
                         TILE_SIZE,
-                        "valid-georeference",
-                }).contains(qName)) {
+                        "valid-georeference"
+                ).contains(qName)) {
                     newState = State.ENTRY_ATTRIBUTE;
                     lang = atts.getValue("lang");
Index: trunk/src/org/openstreetmap/josm/io/remotecontrol/AddTagsDialog.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/remotecontrol/AddTagsDialog.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/io/remotecontrol/AddTagsDialog.java	(revision 12279)
@@ -140,5 +140,5 @@
                 false,
                 true);
-        setToolTipTexts(new String[]{tr("Add checked tags to selected objects"), tr("Shift+Enter: Add all tags to selected objects"), ""});
+        setToolTipTexts(tr("Add checked tags to selected objects"), tr("Shift+Enter: Add all tags to selected objects"), "");
 
         this.sender = senderName;
Index: trunk/src/org/openstreetmap/josm/io/session/SessionReader.java
===================================================================
--- trunk/src/org/openstreetmap/josm/io/session/SessionReader.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/io/session/SessionReader.java	(revision 12279)
@@ -567,11 +567,9 @@
                             Main.parent,
                             title,
-                            new String[] {tr("Cancel"), tr("Skip layer and continue")}
-                            );
-                    dlg.setButtonIcons(new String[] {"cancel", "dialogs/next"});
-                    dlg.setIcon(icon);
-                    dlg.setContent(message);
-                    dlg.showDialog();
-                    cancel = dlg.getValue() != 2;
+                            tr("Cancel"), tr("Skip layer and continue"))
+                        .setButtonIcons("cancel", "dialogs/next")
+                        .setIcon(icon)
+                        .setContent(message);
+                    cancel = dlg.showDialog().getValue() != 2;
                 });
             } catch (InvocationTargetException | InterruptedException ex) {
Index: trunk/src/org/openstreetmap/josm/plugins/PluginDownloadTask.java
===================================================================
--- trunk/src/org/openstreetmap/josm/plugins/PluginDownloadTask.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/plugins/PluginDownloadTask.java	(revision 12279)
@@ -107,13 +107,9 @@
                     progressMonitor.getWindowParent(),
                     tr("Skip download"),
-                    new String[] {
-                        tr("Download Plugin"),
-                        tr("Skip Download") }
+                    tr("Download Plugin"), tr("Skip Download")
             );
             dialog.setContent(tr("JOSM version {0} required for plugin {1}.", pi.mainversion, pi.name));
-            dialog.setButtonIcons(new String[] {"download", "cancel"});
-            dialog.showDialog();
-            int answer = dialog.getValue();
-            if (answer != 1)
+            dialog.setButtonIcons("download", "cancel");
+            if (dialog.showDialog().getValue() != 1)
                 throw new PluginDownloadException(tr("Download skipped"));
         }
@@ -126,6 +122,5 @@
             URL url = new URL(pi.downloadlink);
             synchronized (this) {
-                downloadConnection = HttpClient.create(url)
-                        .setAccept(PLUGIN_MIME_TYPES);
+                downloadConnection = HttpClient.create(url).setAccept(PLUGIN_MIME_TYPES);
                 downloadConnection.connect();
             }
Index: trunk/src/org/openstreetmap/josm/plugins/PluginHandler.java
===================================================================
--- trunk/src/org/openstreetmap/josm/plugins/PluginHandler.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/plugins/PluginHandler.java	(revision 12279)
@@ -86,5 +86,5 @@
         String inCore = tr("integrated into main program");
 
-        DEPRECATED_PLUGINS = Arrays.asList(new DeprecatedPlugin[] {
+        DEPRECATED_PLUGINS = Arrays.asList(
             new DeprecatedPlugin("mappaint", inCore),
             new DeprecatedPlugin("unglueplugin", inCore),
@@ -136,6 +136,6 @@
             new DeprecatedPlugin("proj4j", inCore),
             new DeprecatedPlugin("OpenStreetView", tr("replaced by new {0} plugin", "OpenStreetCam")),
-            new DeprecatedPlugin("imageryadjust", inCore),
-        });
+            new DeprecatedPlugin("imageryadjust", inCore)
+        );
     }
 
Index: trunk/src/org/openstreetmap/josm/tools/PlatformHook.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/PlatformHook.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/tools/PlatformHook.java	(revision 12279)
@@ -257,8 +257,8 @@
                 Main.parent,
                 tr("Outdated Java version"),
-                new String[]{tr("OK"), tr("Update Java"), tr("Cancel")});
+                tr("OK"), tr("Update Java"), tr("Cancel"));
         // Check if the dialog has not already been permanently hidden by user
         if (!ed.toggleEnable("askUpdateJava"+updVersion).toggleCheckState()) {
-            ed.setButtonIcons(new String[]{"ok", "java", "cancel"}).setCancelButton(3);
+            ed.setButtonIcons("ok", "java", "cancel").setCancelButton(3);
             ed.setMinimumSize(new Dimension(480, 300));
             ed.setIcon(JOptionPane.WARNING_MESSAGE);
Index: trunk/src/org/openstreetmap/josm/tools/PlatformHookOsx.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/PlatformHookOsx.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/tools/PlatformHookOsx.java	(revision 12279)
@@ -130,5 +130,5 @@
             Class<?> eawtFullScreenUtilities = Class.forName("com.apple.eawt.FullScreenUtilities");
             eawtFullScreenUtilities.getDeclaredMethod("setWindowCanFullScreen",
-                    new Class[]{Window.class, boolean.class}).invoke(eawtFullScreenUtilities, window, Boolean.TRUE);
+                    Window.class, boolean.class).invoke(eawtFullScreenUtilities, window, Boolean.TRUE);
         } catch (ReflectiveOperationException | SecurityException | IllegalArgumentException e) {
             Main.warn("Failed to register with OSX: " + e);
Index: trunk/src/org/openstreetmap/josm/tools/Shortcut.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/Shortcut.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/tools/Shortcut.java	(revision 12279)
@@ -183,7 +183,7 @@
 
     private void saveDefault() {
-        Main.pref.getCollection("shortcut.entry."+shortText, Arrays.asList(new String[]{longText,
-        String.valueOf(requestedKey), String.valueOf(requestedGroup), String.valueOf(requestedKey),
-        String.valueOf(getGroupModifier(requestedGroup)), String.valueOf(true), String.valueOf(false)}));
+        Main.pref.getCollection("shortcut.entry."+shortText, Arrays.asList(longText,
+            String.valueOf(requestedKey), String.valueOf(requestedGroup), String.valueOf(requestedKey),
+            String.valueOf(getGroupModifier(requestedGroup)), String.valueOf(true), String.valueOf(false)));
     }
 
@@ -193,7 +193,7 @@
             return Main.pref.putCollection("shortcut.entry."+shortText, null);
         } else {
-            return Main.pref.putCollection("shortcut.entry."+shortText, Arrays.asList(new String[]{longText,
-            String.valueOf(requestedKey), String.valueOf(requestedGroup), String.valueOf(assignedKey),
-            String.valueOf(assignedModifier), String.valueOf(assignedDefault), String.valueOf(assignedUser)}));
+            return Main.pref.putCollection("shortcut.entry."+shortText, Arrays.asList(longText,
+                String.valueOf(requestedKey), String.valueOf(requestedGroup), String.valueOf(assignedKey),
+                String.valueOf(assignedModifier), String.valueOf(assignedDefault), String.valueOf(assignedUser)));
         }
     }
Index: trunk/src/org/openstreetmap/josm/tools/TextTagParser.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/TextTagParser.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/tools/TextTagParser.java	(revision 12279)
@@ -281,6 +281,6 @@
                     Main.parent,
                     tr("Do you want to paste these tags?"),
-                    new String[]{tr("Ok"), tr("Cancel"), tr("Clear buffer"), tr("Ignore warnings")});
-        ed.setButtonIcons(new String[]{"ok", "cancel", "dialogs/delete", "pastetags"});
+                    tr("Ok"), tr("Cancel"), tr("Clear buffer"), tr("Ignore warnings"));
+        ed.setButtonIcons("ok", "cancel", "dialogs/delete", "pastetags");
         ed.setContent("<html><b>"+text + "</b><br/><br/><div width=\"300px\">"+XmlWriter.encode(data, true)+"</html>");
         ed.setDefaultButton(2);
@@ -314,18 +314,16 @@
                     Main.parent,
                     tr("Warning"),
-                    new String[]{tr("Ok"), tr("Clear buffer")});
-
-        ed.setButtonIcons(new String[]{"ok", "dialogs/delete"});
-
-        ed.setContent(p);
-        ed.setDefaultButton(1);
-        ed.setCancelButton(1);
-        ed.setIcon(JOptionPane.WARNING_MESSAGE);
-        ed.toggleEnable("tags.paste.cleanbadbuffer");
+                    tr("Ok"), tr("Clear buffer"))
+            .setButtonIcons("ok", "dialogs/delete")
+            .setContent(p)
+            .setDefaultButton(1)
+            .setCancelButton(1)
+            .setIcon(JOptionPane.WARNING_MESSAGE)
+            .toggleEnable("tags.paste.cleanbadbuffer");
+
         ed.showDialog();
 
-        int r = ed.getValue();
         // clean clipboard if user asked
-        if (r == 2) ClipboardUtils.copyString("");
+        if (ed.getValue() == 2) ClipboardUtils.copyString("");
     }
 }
Index: trunk/src/org/openstreetmap/josm/tools/WinRegistry.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/WinRegistry.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/tools/WinRegistry.java	(revision 12279)
@@ -137,11 +137,10 @@
     private static String readString(Preferences root, int hkey, String key, String value)
             throws IllegalAccessException, InvocationTargetException {
-        int[] handles = (int[]) regOpenKey.invoke(root,
-                new Object[] { Integer.valueOf(hkey), toCstr(key), Integer.valueOf(KEY_READ) });
+        int[] handles = (int[]) regOpenKey.invoke(root, Integer.valueOf(hkey), toCstr(key), Integer.valueOf(KEY_READ));
         if (handles[1] != REG_SUCCESS) {
             return null;
         }
-        byte[] valb = (byte[]) regQueryValueEx.invoke(root, new Object[] { Integer.valueOf(handles[0]), toCstr(value) });
-        regCloseKey.invoke(root, new Object[] { Integer.valueOf(handles[0]) });
+        byte[] valb = (byte[]) regQueryValueEx.invoke(root, Integer.valueOf(handles[0]), toCstr(value));
+        regCloseKey.invoke(root, Integer.valueOf(handles[0]));
         return (valb != null ? new String(valb, StandardCharsets.UTF_8).trim() : null);
     }
@@ -150,20 +149,18 @@
             throws IllegalAccessException, InvocationTargetException {
         HashMap<String, String> results = new HashMap<>();
-        int[] handles = (int[]) regOpenKey.invoke(root,
-                new Object[] { Integer.valueOf(hkey), toCstr(key), Integer.valueOf(KEY_READ) });
+        int[] handles = (int[]) regOpenKey.invoke(root, Integer.valueOf(hkey), toCstr(key), Integer.valueOf(KEY_READ));
         if (handles[1] != REG_SUCCESS) {
             return null;
         }
-        int[] info = (int[]) regQueryInfoKey.invoke(root, new Object[] { Integer.valueOf(handles[0]) });
+        int[] info = (int[]) regQueryInfoKey.invoke(root, Integer.valueOf(handles[0]));
 
         int count = info[0]; // count
         int maxlen = info[3]; // value length max
         for (int index = 0; index < count; index++) {
-            byte[] name = (byte[]) regEnumValue.invoke(root,
-                    new Object[] { Integer.valueOf(handles[0]), Integer.valueOf(index), Integer.valueOf(maxlen + 1) });
+            byte[] name = (byte[]) regEnumValue.invoke(root, Integer.valueOf(handles[0]), Integer.valueOf(index), Integer.valueOf(maxlen + 1));
             String value = readString(hkey, key, new String(name, StandardCharsets.UTF_8));
             results.put(new String(name, StandardCharsets.UTF_8).trim(), value);
         }
-        regCloseKey.invoke(root, new Object[] { Integer.valueOf(handles[0]) });
+        regCloseKey.invoke(root, Integer.valueOf(handles[0]));
         return results;
     }
@@ -172,19 +169,17 @@
             throws IllegalAccessException, InvocationTargetException {
         List<String> results = new ArrayList<>();
-        int[] handles = (int[]) regOpenKey.invoke(root,
-                new Object[] { Integer.valueOf(hkey), toCstr(key), Integer.valueOf(KEY_READ) });
+        int[] handles = (int[]) regOpenKey.invoke(root, Integer.valueOf(hkey), toCstr(key), Integer.valueOf(KEY_READ));
         if (handles[1] != REG_SUCCESS) {
             return Collections.emptyList();
         }
-        int[] info = (int[]) regQueryInfoKey.invoke(root, new Object[] { Integer.valueOf(handles[0]) });
+        int[] info = (int[]) regQueryInfoKey.invoke(root, Integer.valueOf(handles[0]));
 
         int count = info[0]; // Fix: info[2] was being used here with wrong results. Suggested by davenpcj, confirmed by Petrucio
         int maxlen = info[3]; // value length max
         for (int index = 0; index < count; index++) {
-            byte[] name = (byte[]) regEnumKeyEx.invoke(root,
-                    new Object[] { Integer.valueOf(handles[0]), Integer.valueOf(index), Integer.valueOf(maxlen + 1) });
+            byte[] name = (byte[]) regEnumKeyEx.invoke(root, Integer.valueOf(handles[0]), Integer.valueOf(index), Integer.valueOf(maxlen + 1));
             results.add(new String(name, StandardCharsets.UTF_8).trim());
         }
-        regCloseKey.invoke(root, new Object[] { Integer.valueOf(handles[0]) });
+        regCloseKey.invoke(root, Integer.valueOf(handles[0]));
         return results;
     }
Index: trunk/src/org/openstreetmap/josm/tools/XmlObjectParser.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/XmlObjectParser.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/tools/XmlObjectParser.java	(revision 12279)
@@ -153,5 +153,5 @@
                     Method m = entry.getMethod(fieldName);
                     if (m != null) {
-                        m.invoke(c, new Object[]{getValueForClass(m.getParameterTypes()[0], value)});
+                        m.invoke(c, getValueForClass(m.getParameterTypes()[0], value));
                     }
                 }
Index: trunk/src/org/openstreetmap/josm/tools/template_engine/Tokenizer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/tools/template_engine/Tokenizer.java	(revision 12278)
+++ trunk/src/org/openstreetmap/josm/tools/template_engine/Tokenizer.java	(revision 12279)
@@ -43,5 +43,5 @@
     public enum TokenType { CONDITION_START, VARIABLE_START, CONTEXT_SWITCH_START, END, PIPE, APOSTROPHE, TEXT, EOF }
 
-    private final Set<Character> specialCharaters = new HashSet<>(Arrays.asList(new Character[] {'$', '?', '{', '}', '|', '\'', '!'}));
+    private final Set<Character> specialCharaters = new HashSet<>(Arrays.asList('$', '?', '{', '}', '|', '\'', '!'));
 
     private final String template;
