Changeset 14153 in josm for trunk/src/org/openstreetmap


Ignore:
Timestamp:
2018-08-13T02:18:54+02:00 (6 years ago)
Author:
Don-vip
Message:

see #15229 - deprecate Main.parent and Main itself

Location:
trunk/src/org/openstreetmap/josm
Files:
188 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/Main.java

    r14150 r14153  
    1313import org.openstreetmap.josm.data.projection.ProjectionChangeListener;
    1414import org.openstreetmap.josm.data.projection.ProjectionRegistry;
     15import org.openstreetmap.josm.gui.MainApplication;
    1516import org.openstreetmap.josm.io.FileWatcher;
    1617import org.openstreetmap.josm.io.NetworkManager;
     
    2526 * Abstract class holding various static global variables and methods used in large parts of JOSM application.
    2627 * @since 98
     28 * @deprecated Not needed anymore
    2729 */
     30@Deprecated
    2831public abstract class Main implements IOsmDataManager {
    2932
    3033    /**
    3134     * Global parent component for all dialogs and message boxes
    32      */
     35     * @deprecated Use {@link MainApplication#getMainFrame}
     36     */
     37    @Deprecated
    3338    public static Component parent;
    3439
  • trunk/src/org/openstreetmap/josm/actions/AboutAction.java

    r14119 r14153  
    2424import javax.swing.JTextArea;
    2525
    26 import org.openstreetmap.josm.Main;
    2726import org.openstreetmap.josm.data.Version;
    2827import org.openstreetmap.josm.gui.ExtendedDialog;
     
    136135
    137136        GuiHelper.prepareResizeableOptionPane(panel, panel.getPreferredSize());
    138         int ret = new ExtendedDialog(Main.parent, tr("About JOSM..."), tr("OK"), tr("Report bug"))
     137        int ret = new ExtendedDialog(MainApplication.getMainFrame(), tr("About JOSM..."), tr("OK"), tr("Report bug"))
    139138            .setButtonIcons("ok", "bug")
    140139            .setContent(panel, false)
  • trunk/src/org/openstreetmap/josm/actions/AbstractInfoAction.java

    r13954 r14153  
    1212import javax.swing.JOptionPane;
    1313
    14 import org.openstreetmap.josm.Main;
    1514import org.openstreetmap.josm.data.notes.Note;
    1615import org.openstreetmap.josm.data.osm.IPrimitive;
     
    8887        };
    8988        return 0 == HelpAwareOptionPane.showOptionDialog(
    90                 Main.parent,
     89                MainApplication.getMainFrame(),
    9190                new StringBuilder(msg).insert(0, "<html>").append("</html>").toString(),
    9291                tr("Warning"),
     
    114113        if (primitivesToShow.isEmpty() && noteToShow == null) {
    115114            JOptionPane.showMessageDialog(
    116                     Main.parent,
     115                    MainApplication.getMainFrame(),
    117116                    tr("Please select at least one already uploaded node, way, or relation."),
    118117                    tr("Warning"),
  • trunk/src/org/openstreetmap/josm/actions/AbstractMergeAction.java

    r13206 r14153  
    1515import javax.swing.JPanel;
    1616
    17 import org.openstreetmap.josm.Main;
    1817import org.openstreetmap.josm.gui.ExtendedDialog;
     18import org.openstreetmap.josm.gui.MainApplication;
    1919import org.openstreetmap.josm.gui.layer.Layer;
    2020import org.openstreetmap.josm.gui.widgets.JosmComboBox;
     
    114114            return targetLayers[0];
    115115        }
    116         ExtendedDialog ed = new ExtendedDialog(Main.parent, title, buttonText, tr("Cancel"));
     116        ExtendedDialog ed = new ExtendedDialog(MainApplication.getMainFrame(), title, buttonText, tr("Cancel"));
    117117        ed.setButtonIcons(buttonIcon, "cancel");
    118118        ed.setContent(pnl);
     
    132132                Utils.escapeReservedCharactersHTML(sourceLayer.getName()));
    133133        if (!GraphicsEnvironment.isHeadless()) {
    134             JOptionPane.showMessageDialog(Main.parent, message, tr("No target layers"), JOptionPane.WARNING_MESSAGE);
     134            JOptionPane.showMessageDialog(MainApplication.getMainFrame(), message, tr("No target layers"), JOptionPane.WARNING_MESSAGE);
    135135        }
    136136    }
  • trunk/src/org/openstreetmap/josm/actions/AddImageryLayerAction.java

    r13897 r14153  
    2121import javax.swing.JScrollPane;
    2222
    23 import org.openstreetmap.josm.Main;
    2423import org.openstreetmap.josm.data.imagery.DefaultLayer;
    2524import org.openstreetmap.josm.data.imagery.ImageryInfo;
     
    3029import org.openstreetmap.josm.data.imagery.WMTSTileSource.WMTSGetCapabilitiesException;
    3130import org.openstreetmap.josm.gui.ExtendedDialog;
     31import org.openstreetmap.josm.gui.MainApplication;
    3232import org.openstreetmap.josm.gui.layer.AlignImageryPanel;
    3333import org.openstreetmap.josm.gui.layer.ImageryLayer;
     
    5252    static class SelectWmsLayersDialog extends ExtendedDialog {
    5353        SelectWmsLayersDialog(WMSLayerTree tree, JComboBox<String> formats) {
    54             super(Main.parent, tr("Select WMS layers"), tr("Add layers"), tr("Cancel"));
     54            super(MainApplication.getMainFrame(), tr("Select WMS layers"), tr("Add layers"), tr("Cancel"));
    5555            final JScrollPane scrollPane = new JScrollPane(tree.getLayerTree());
    5656            scrollPane.setPreferredSize(new Dimension(400, 400));
     
    155155            } else {
    156156                Logging.error(ex);
    157                 JOptionPane.showMessageDialog(Main.parent, ex.getMessage(), tr("Error"), JOptionPane.ERROR_MESSAGE);
     157                JOptionPane.showMessageDialog(MainApplication.getMainFrame(), ex.getMessage(), tr("Error"), JOptionPane.ERROR_MESSAGE);
    158158                if (layer != null) {
    159159                    getLayerManager().removeLayer(layer);
     
    184184
    185185            if (!GraphicsEnvironment.isHeadless()) {
    186                 ExtendedDialog dialog = new ExtendedDialog(Main.parent, tr("Select WMS layers"), tr("Add layers"), tr("Cancel"));
     186                ExtendedDialog dialog = new ExtendedDialog(MainApplication.getMainFrame(),
     187                        tr("Select WMS layers"), tr("Add layers"), tr("Cancel"));
    187188                final JScrollPane scrollPane = new JScrollPane(tree.getLayerTree());
    188189                scrollPane.setPreferredSize(new Dimension(400, 400));
     
    227228    private static void handleException(Exception ex, String uiMessage, String uiTitle, String logMessage) {
    228229        if (!GraphicsEnvironment.isHeadless()) {
    229             JOptionPane.showMessageDialog(Main.parent, uiMessage, uiTitle, JOptionPane.ERROR_MESSAGE);
     230            JOptionPane.showMessageDialog(MainApplication.getMainFrame(), uiMessage, uiTitle, JOptionPane.ERROR_MESSAGE);
    230231        }
    231232        Logging.log(Logging.LEVEL_ERROR, logMessage, ex);
  • trunk/src/org/openstreetmap/josm/actions/AddNodeAction.java

    r14134 r14153  
    99import java.util.Collections;
    1010
    11 import org.openstreetmap.josm.Main;
    1211import org.openstreetmap.josm.command.AddCommand;
    1312import org.openstreetmap.josm.data.UndoRedoHandler;
     
    4443            return;
    4544
    46         LatLonDialog dialog = new LatLonDialog(Main.parent, tr("Add Node..."), ht("/Action/AddNode"));
     45        LatLonDialog dialog = new LatLonDialog(MainApplication.getMainFrame(), tr("Add Node..."), ht("/Action/AddNode"));
    4746
    4847        if (textLatLon != null) {
  • trunk/src/org/openstreetmap/josm/actions/AutoScaleAction.java

    r13955 r14153  
    2121import javax.swing.event.TreeSelectionListener;
    2222
    23 import org.openstreetmap.josm.Main;
    2423import org.openstreetmap.josm.data.Bounds;
    2524import org.openstreetmap.josm.data.DataSource;
     
    8584        if (sel.isEmpty()) {
    8685            JOptionPane.showMessageDialog(
    87                     Main.parent,
     86                    MainApplication.getMainFrame(),
    8887                    tr("Nothing selected to zoom to."),
    8988                    tr("Information"),
     
    303302        if (sel.isEmpty()) {
    304303            JOptionPane.showMessageDialog(
    305                     Main.parent,
     304                    MainApplication.getMainFrame(),
    306305                    "selection".equals(mode) ? tr("Nothing selected to zoom to.") : tr("No conflicts to zoom to"),
    307306                    tr("Information"),
  • trunk/src/org/openstreetmap/josm/actions/CloseChangesetAction.java

    r14121 r14153  
    1414import javax.swing.SwingUtilities;
    1515
    16 import org.openstreetmap.josm.Main;
    1716import org.openstreetmap.josm.data.osm.Changeset;
    1817import org.openstreetmap.josm.data.osm.ChangesetCache;
     
    6665        if (openChangesets.isEmpty()) {
    6766            JOptionPane.showMessageDialog(
    68                     Main.parent,
     67                    MainApplication.getMainFrame(),
    6968                    tr("There are no open changesets"),
    7069                    tr("No open changesets"),
  • trunk/src/org/openstreetmap/josm/actions/CombineWayAction.java

    r14134 r14153  
    1919import javax.swing.JOptionPane;
    2020
    21 import org.openstreetmap.josm.Main;
    2221import org.openstreetmap.josm.command.ChangeCommand;
    2322import org.openstreetmap.josm.command.Command;
     
    3534import org.openstreetmap.josm.data.preferences.BooleanProperty;
    3635import org.openstreetmap.josm.gui.ExtendedDialog;
     36import org.openstreetmap.josm.gui.MainApplication;
    3737import org.openstreetmap.josm.gui.Notification;
    3838import org.openstreetmap.josm.gui.conflict.tags.CombinePrimitiveResolverDialog;
     
    6161
    6262    protected static boolean confirmChangeDirectionOfWays() {
    63         return new ExtendedDialog(Main.parent,
     63        return new ExtendedDialog(MainApplication.getMainFrame(),
    6464                tr("Change directions?"),
    6565                tr("Reverse and Combine"), tr("Cancel"))
  • trunk/src/org/openstreetmap/josm/actions/CopyAction.java

    r13434 r14153  
    1313import javax.swing.JOptionPane;
    1414
    15 import org.openstreetmap.josm.Main;
    1615import org.openstreetmap.josm.data.osm.DataSet;
    1716import org.openstreetmap.josm.data.osm.OsmPrimitive;
     
    7675    protected void showEmptySelectionWarning() {
    7776        JOptionPane.showMessageDialog(
    78                 Main.parent,
     77                MainApplication.getMainFrame(),
    7978                tr("Please select something to copy."),
    8079                tr("Information"),
  • trunk/src/org/openstreetmap/josm/actions/DeleteAction.java

    r13434 r14153  
    1414import javax.swing.JPanel;
    1515
    16 import org.openstreetmap.josm.Main;
    1716import org.openstreetmap.josm.command.DeleteCommand.DeletionCallback;
    1817import org.openstreetmap.josm.data.osm.DefaultNameFormatter;
     
    132131        return ConditionalOptionPaneUtil.showConfirmationDialog(
    133132                "delete_relations",
    134                 Main.parent,
     133                MainApplication.getMainFrame(),
    135134                msg,
    136135                tr("Delete relation?"),
  • trunk/src/org/openstreetmap/josm/actions/DownloadAlongAction.java

    r12675 r14153  
    1717import javax.swing.JPanel;
    1818
    19 import org.openstreetmap.josm.Main;
    2019import org.openstreetmap.josm.actions.downloadtasks.DownloadTaskList;
     20import org.openstreetmap.josm.gui.MainApplication;
    2121import org.openstreetmap.josm.gui.progress.ProgressMonitor;
    2222import org.openstreetmap.josm.gui.progress.swing.PleaseWaitProgressMonitor;
     
    112112                        toDownload.size())), GBC.eol());
    113113        if (!GraphicsEnvironment.isHeadless() && JOptionPane.OK_OPTION != JOptionPane.showConfirmDialog(
    114                 Main.parent, msg, title, JOptionPane.OK_CANCEL_OPTION, JOptionPane.PLAIN_MESSAGE)) {
     114                MainApplication.getMainFrame(), msg, title, JOptionPane.OK_CANCEL_OPTION, JOptionPane.PLAIN_MESSAGE)) {
    115115            return;
    116116        }
  • trunk/src/org/openstreetmap/josm/actions/FullscreenToggleAction.java

    r14138 r14153  
    1919import javax.swing.KeyStroke;
    2020
    21 import org.openstreetmap.josm.Main;
    2221import org.openstreetmap.josm.gui.MainApplication;
    2322import org.openstreetmap.josm.gui.util.GuiHelper;
     
    7069
    7170    protected void setMode() {
    72         JFrame frame = (JFrame) Main.parent;
     71        JFrame frame = MainApplication.getMainFrame();
    7372
    7473        List<Window> visibleWindows = new ArrayList<>();
  • trunk/src/org/openstreetmap/josm/actions/GpxExportAction.java

    r13210 r14153  
    1414import javax.swing.JOptionPane;
    1515
    16 import org.openstreetmap.josm.Main;
     16import org.openstreetmap.josm.gui.MainApplication;
    1717import org.openstreetmap.josm.gui.io.importexport.FileExporter;
    1818import org.openstreetmap.josm.gui.io.importexport.GpxImporter;
     
    7373        if (layer == null) {
    7474            JOptionPane.showMessageDialog(
    75                     Main.parent,
     75                    MainApplication.getMainFrame(),
    7676                    tr("Nothing to export. Get some data first."),
    7777                    tr("Information"),
  • trunk/src/org/openstreetmap/josm/actions/HelpAction.java

    r14121 r14153  
    1212import javax.swing.SwingUtilities;
    1313
    14 import org.openstreetmap.josm.Main;
     14import org.openstreetmap.josm.gui.MainApplication;
    1515import org.openstreetmap.josm.gui.help.HelpBrowser;
    1616import org.openstreetmap.josm.gui.help.HelpUtil;
     
    6161                }
    6262            } else {
    63                 Point mouse = Main.parent.getMousePosition();
    64                 topic = HelpUtil.getContextSpecificHelpTopic(SwingUtilities.getDeepestComponentAt(Main.parent, mouse.x, mouse.y));
     63                Point mouse = MainApplication.getMainFrame().getMousePosition();
     64                topic = HelpUtil.getContextSpecificHelpTopic(
     65                        SwingUtilities.getDeepestComponentAt(MainApplication.getMainFrame(), mouse.x, mouse.y));
    6566            }
    6667            HelpBrowser.setUrlForHelpTopic(Optional.ofNullable(topic).orElse("/"));
  • trunk/src/org/openstreetmap/josm/actions/HistoryInfoAction.java

    r14121 r14153  
    88import java.awt.event.KeyEvent;
    99
    10 import org.openstreetmap.josm.Main;
    1110import org.openstreetmap.josm.data.osm.OsmData;
    1211import org.openstreetmap.josm.gui.MainApplication;
     
    6059         */
    6160        public HistoryObjectIDDialog() {
    62             super(Main.parent, tr("Show history"), tr("Show history"), tr("Cancel"));
     61            super(MainApplication.getMainFrame(), tr("Show history"), tr("Show history"), tr("Cancel"));
    6362            setButtonIcons("dialogs/history", "cancel");
    6463            init();
  • trunk/src/org/openstreetmap/josm/actions/ImageryAdjustAction.java

    r14120 r14153  
    2121import javax.swing.JPanel;
    2222
    23 import org.openstreetmap.josm.Main;
    2423import org.openstreetmap.josm.actions.mapmode.MapMode;
    2524import org.openstreetmap.josm.data.coor.EastNorth;
     
    249248         */
    250249        ImageryOffsetDialog() {
    251             super(Main.parent,
     250            super(MainApplication.getMainFrame(),
    252251                    tr("Adjust imagery offset"),
    253252                    new String[] {tr("OK"), tr("Cancel")},
     
    269268            setContent(pnl);
    270269            setupDialog();
    271             setRememberWindowGeometry(getClass().getName() + ".geometry", WindowGeometry.centerInWindow(Main.parent, getSize()));
     270            setRememberWindowGeometry(getClass().getName() + ".geometry",
     271                    WindowGeometry.centerInWindow(MainApplication.getMainFrame(), getSize()));
    272272        }
    273273
     
    327327        private boolean confirmOverwriteBookmark() {
    328328            ExtendedDialog dialog = new ExtendedDialog(
    329                     Main.parent,
     329                    MainApplication.getMainFrame(),
    330330                    tr("Overwrite"),
    331331                    tr("Overwrite"), tr("Cancel")
  • trunk/src/org/openstreetmap/josm/actions/JosmAction.java

    r14138 r14153  
    1616import javax.swing.JPanel;
    1717
    18 import org.openstreetmap.josm.Main;
    1918import org.openstreetmap.josm.command.Command;
    2019import org.openstreetmap.josm.data.osm.DataSelectionListener;
     
    471470            boolean answer = ConditionalOptionPaneUtil.showConfirmationDialog(
    472471                    operation + "_outside_nodes",
    473                     Main.parent,
     472                    MainApplication.getMainFrame(),
    474473                    msg,
    475474                    dialogTitle,
     
    485484            boolean answer = ConditionalOptionPaneUtil.showConfirmationDialog(
    486485                    operation + "_incomplete",
    487                     Main.parent,
     486                    MainApplication.getMainFrame(),
    488487                    msg,
    489488                    dialogTitle,
  • trunk/src/org/openstreetmap/josm/actions/JumpToAction.java

    r13761 r14153  
    1717import javax.swing.event.DocumentListener;
    1818
    19 import org.openstreetmap.josm.Main;
    2019import org.openstreetmap.josm.data.Bounds;
    2120import org.openstreetmap.josm.data.coor.LatLon;
     
    5756    static class JumpToPositionDialog extends ExtendedDialog {
    5857        JumpToPositionDialog(String[] buttons, JPanel panel) {
    59             super(Main.parent, tr("Jump to Position"), buttons);
     58            super(MainApplication.getMainFrame(), tr("Jump to Position"), buttons);
    6059            setContent(panel);
    6160            setCancelButton(2);
     
    165164                    ll = LatLonParser.parse(lat.getText() + "; " + lon.getText());
    166165                } catch (IllegalArgumentException ex2) {
    167                     JOptionPane.showMessageDialog(Main.parent,
     166                    JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    168167                            tr("Could not parse Latitude, Longitude or Zoom. Please check."),
    169168                            tr("Unable to parse Lon/Lat"), JOptionPane.ERROR_MESSAGE);
  • trunk/src/org/openstreetmap/josm/actions/MapRectifierWMSmenuAction.java

    r13123 r14153  
    2121import javax.swing.JRadioButton;
    2222
    23 import org.openstreetmap.josm.Main;
    2423import org.openstreetmap.josm.data.imagery.ImageryInfo;
    2524import org.openstreetmap.josm.data.imagery.ImageryInfo.ImageryType;
     
    166165        panel.add(tfWmsUrl, GBC.eol().fill(GridBagConstraints.HORIZONTAL));
    167166
    168         ExtendedDialog diag = new ExtendedDialog(Main.parent,
     167        ExtendedDialog diag = new ExtendedDialog(MainApplication.getMainFrame(),
    169168                tr("Add Rectified Image"),
    170169                tr("Add Rectified Image"), tr("Cancel"))
     
    223222
    224223            // and display an error message. The while loop ensures that the dialog pops up again
    225             JOptionPane.showMessageDialog(Main.parent,
     224            JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    226225                    tr("Couldn''t match the entered link or id to the selected service. Please try again."),
    227226                    tr("No valid WMS URL or id"),
     
    244243            } catch (IOException | WMSGetCapabilitiesException e) {
    245244                Logging.error(e);
    246                 JOptionPane.showMessageDialog(Main.parent, e.getMessage(), tr("No valid WMS URL or id"), JOptionPane.ERROR_MESSAGE);
     245                JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
     246                        e.getMessage(), tr("No valid WMS URL or id"), JOptionPane.ERROR_MESSAGE);
    247247                return;
    248248            }
  • trunk/src/org/openstreetmap/josm/actions/MergeNodesAction.java

    r14134 r14153  
    2020import javax.swing.JOptionPane;
    2121
    22 import org.openstreetmap.josm.Main;
    2322import org.openstreetmap.josm.command.ChangeCommand;
    2423import org.openstreetmap.josm.command.ChangeNodesCommand;
     
    229228                    };
    230229                    HelpAwareOptionPane.showOptionDialog(
    231                             Main.parent,
     230                            MainApplication.getMainFrame(),
    232231                            tr("Cannot merge nodes: Would have to delete way {0} which is still used by {1}",
    233232                                DefaultNameFormatter.getInstance().formatAsHtmlUnorderedList(w),
  • trunk/src/org/openstreetmap/josm/actions/MoveAction.java

    r14134 r14153  
    1111import javax.swing.JOptionPane;
    1212
    13 import org.openstreetmap.josm.Main;
    1413import org.openstreetmap.josm.command.Command;
    1514import org.openstreetmap.josm.command.MoveCommand;
     
    157156                ((MoveCommand) c).moveAgain(-distx, -disty);
    158157                JOptionPane.showMessageDialog(
    159                         Main.parent,
     158                        MainApplication.getMainFrame(),
    160159                        tr("Cannot move objects outside of the world."),
    161160                        tr("Warning"),
  • trunk/src/org/openstreetmap/josm/actions/MoveNodeAction.java

    r14134 r14153  
    88import java.util.Collection;
    99
    10 import org.openstreetmap.josm.Main;
    1110import org.openstreetmap.josm.command.MoveCommand;
    1211import org.openstreetmap.josm.data.UndoRedoHandler;
     
    4039            return;
    4140
    42         LatLonDialog dialog = new LatLonDialog(Main.parent, tr("Move Node..."), ht("/Action/MoveNode"));
     41        LatLonDialog dialog = new LatLonDialog(MainApplication.getMainFrame(), tr("Move Node..."), ht("/Action/MoveNode"));
    4342        Node n = (Node) selNodes.toArray()[0];
    4443        dialog.setCoordinates(n.getCoor());
  • trunk/src/org/openstreetmap/josm/actions/OpenFileAction.java

    r14138 r14153  
    3131import javax.swing.filechooser.FileFilter;
    3232
    33 import org.openstreetmap.josm.Main;
    3433import org.openstreetmap.josm.data.PreferencesUtils;
    3534import org.openstreetmap.josm.gui.HelpAwareOptionPane;
     
    209208
    210209            HelpAwareOptionPane.showMessageDialogInEDT(
    211                     Main.parent,
     210                    MainApplication.getMainFrame(),
    212211                    msg.toString(),
    213212                    tr("Warning"),
     
    233232
    234233            HelpAwareOptionPane.showMessageDialogInEDT(
    235                     Main.parent,
     234                    MainApplication.getMainFrame(),
    236235                    msg.toString(),
    237236                    tr("Warning"),
     
    272271                    if (!chosenImporter.acceptFile(f)) {
    273272                        if (f.isDirectory()) {
    274                             SwingUtilities.invokeLater(() -> JOptionPane.showMessageDialog(Main.parent, tr(
     273                            SwingUtilities.invokeLater(() -> JOptionPane.showMessageDialog(MainApplication.getMainFrame(), tr(
    275274                                    "<html>Cannot open directory ''{0}''.<br>Please select a file.</html>",
    276275                                    f.getAbsolutePath()), tr("Open file"), JOptionPane.ERROR_MESSAGE));
  • trunk/src/org/openstreetmap/josm/actions/OpenLocationAction.java

    r14134 r14153  
    2424import javax.swing.JPanel;
    2525
    26 import org.openstreetmap.josm.Main;
    2726import org.openstreetmap.josm.actions.downloadtasks.DownloadGpsTask;
    2827import org.openstreetmap.josm.actions.downloadtasks.DownloadNotesTask;
     
    7372    static class WhichTasksToPerformDialog extends ExtendedDialog {
    7473        WhichTasksToPerformDialog(JList<DownloadTask> list) {
    75             super(Main.parent, tr("Which tasks to perform?"), new String[]{tr("Ok"), tr("Cancel")}, true);
     74            super(MainApplication.getMainFrame(), tr("Which tasks to perform?"), new String[]{tr("Ok"), tr("Cancel")}, true);
    7675            setButtonIcons("ok", "cancel");
    7776            final JPanel pane = new JPanel(new GridLayout(2, 1));
     
    153152        ExpertToggleAction.addVisibilitySwitcher(zoom);
    154153
    155         ExtendedDialog dialog = new ExtendedDialog(Main.parent,
     154        ExtendedDialog dialog = new ExtendedDialog(MainApplication.getMainFrame(),
    156155                tr("Download Location"),
    157156                tr("Download URL"), tr("Cancel"))
     
    165164        dialog.pack();
    166165        dialog.setRememberWindowGeometry(getClass().getName() + ".geometry",
    167                     WindowGeometry.centerInWindow(Main.parent, dialog.getPreferredSize()));
     166                    WindowGeometry.centerInWindow(MainApplication.getMainFrame(), dialog.getPreferredSize()));
    168167        if (dialog.showDialog().getValue() == 1) {
    169168            USE_NEW_LAYER.put(layer.isSelected());
     
    313312    protected void warnNoSuitableTasks(final String url) {
    314313        final String details = findSummaryDocumentation();    // Explain what patterns are supported
    315         HelpAwareOptionPane.showMessageDialogInEDT(Main.parent, "<html><p>" + tr(
     314        HelpAwareOptionPane.showMessageDialogInEDT(MainApplication.getMainFrame(), "<html><p>" + tr(
    316315                "Cannot open URL ''{0}''<br>The following download tasks accept the URL patterns shown:<br>{1}",
    317316                url, details) + "</p></html>", tr("Download Location"), JOptionPane.ERROR_MESSAGE, ht("/Action/OpenLocation"));
  • trunk/src/org/openstreetmap/josm/actions/OrthogonalizeAction.java

    r14134 r14153  
    2121import javax.swing.JOptionPane;
    2222
    23 import org.openstreetmap.josm.Main;
    2423import org.openstreetmap.josm.command.Command;
    2524import org.openstreetmap.josm.command.MoveCommand;
     
    3332import org.openstreetmap.josm.data.projection.ProjectionRegistry;
    3433import org.openstreetmap.josm.gui.ConditionalOptionPaneUtil;
     34import org.openstreetmap.josm.gui.MainApplication;
    3535import org.openstreetmap.josm.gui.Notification;
    3636import org.openstreetmap.josm.tools.Geometry;
     
    156156            if (!ConditionalOptionPaneUtil.showConfirmationDialog(
    157157                    "align_rectangular_4326",
    158                     Main.parent,
     158                    MainApplication.getMainFrame(),
    159159                    msg,
    160160                    tr("Warning"),
  • trunk/src/org/openstreetmap/josm/actions/PreferencesAction.java

    r8443 r14153  
    88import java.awt.event.KeyEvent;
    99
    10 import org.openstreetmap.josm.Main;
     10import org.openstreetmap.josm.gui.MainApplication;
    1111import org.openstreetmap.josm.gui.preferences.PreferenceDialog;
    1212import org.openstreetmap.josm.gui.preferences.SubPreferenceSetting;
     
    104104    @Override
    105105    public void run() {
    106         final PreferenceDialog p = new PreferenceDialog(Main.parent);
     106        final PreferenceDialog p = new PreferenceDialog(MainApplication.getMainFrame());
    107107        if (tab != null) {
    108108            p.selectPreferencesTabByClass(tab);
  • trunk/src/org/openstreetmap/josm/actions/PurgeAction.java

    r14134 r14153  
    2727import javax.swing.JSeparator;
    2828
    29 import org.openstreetmap.josm.Main;
    3029import org.openstreetmap.josm.command.PurgeCommand;
    3130import org.openstreetmap.josm.data.UndoRedoHandler;
     
    3433import org.openstreetmap.josm.data.osm.OsmPrimitive;
    3534import org.openstreetmap.josm.gui.ConditionalOptionPaneUtil;
     35import org.openstreetmap.josm.gui.MainApplication;
    3636import org.openstreetmap.josm.gui.PrimitiveRenderer;
    3737import org.openstreetmap.josm.gui.help.HelpUtil;
     
    9595        if (!GraphicsEnvironment.isHeadless()) {
    9696            final boolean answer = ConditionalOptionPaneUtil.showConfirmationDialog(
    97                     "purge", Main.parent, buildPanel(modified), tr("Confirm Purging"),
     97                    "purge", MainApplication.getMainFrame(), buildPanel(modified), tr("Confirm Purging"),
    9898                    JOptionPane.OK_CANCEL_OPTION, JOptionPane.PLAIN_MESSAGE, JOptionPane.OK_OPTION);
    9999            if (!answer)
  • trunk/src/org/openstreetmap/josm/actions/RenameLayerAction.java

    r14138 r14153  
    1515import javax.swing.JOptionPane;
    1616
    17 import org.openstreetmap.josm.Main;
     17import org.openstreetmap.josm.gui.MainApplication;
    1818import org.openstreetmap.josm.gui.layer.Layer;
    1919import org.openstreetmap.josm.gui.widgets.JosmTextField;
     
    7373
    7474        final JOptionPane optionPane = new InitialValueOptionPane(panel, name);
    75         final JDialog dlg = optionPane.createDialog(Main.parent, tr("Rename layer"));
     75        final JDialog dlg = optionPane.createDialog(MainApplication.getMainFrame(), tr("Rename layer"));
    7676        dlg.setModalityType(ModalityType.DOCUMENT_MODAL);
    7777        dlg.setVisible(true);
     
    104104                } else {
    105105                    JOptionPane.showMessageDialog(
    106                             Main.parent,
     106                            MainApplication.getMainFrame(),
    107107                            tr("Could not rename file ''{0}''", file.getPath()),
    108108                            tr("Error"),
     
    114114        }
    115115        layer.rename(nameText);
    116         Main.parent.repaint();
     116        MainApplication.getMainFrame().repaint();
    117117    }
    118118}
  • trunk/src/org/openstreetmap/josm/actions/SaveAction.java

    r13329 r14153  
    88import java.io.File;
    99
    10 import org.openstreetmap.josm.Main;
    1110import org.openstreetmap.josm.gui.ExtendedDialog;
     11import org.openstreetmap.josm.gui.MainApplication;
    1212import org.openstreetmap.josm.gui.layer.GpxLayer;
    1313import org.openstreetmap.josm.gui.layer.Layer;
     
    4949        if (f != null && layer instanceof GpxLayer) {
    5050            ExtendedDialog dialog = new ExtendedDialog(
    51                     Main.parent,
     51                    MainApplication.getMainFrame(),
    5252                    tr("Overwrite"),
    5353                    tr("Overwrite"), tr("Cancel"))
  • trunk/src/org/openstreetmap/josm/actions/SaveActionBase.java

    r13570 r14153  
    1515import javax.swing.filechooser.FileFilter;
    1616
    17 import org.openstreetmap.josm.Main;
    1817import org.openstreetmap.josm.data.PreferencesUtils;
    1918import org.openstreetmap.josm.gui.ExtendedDialog;
     19import org.openstreetmap.josm.gui.MainApplication;
    2020import org.openstreetmap.josm.gui.io.importexport.FileExporter;
    2121import org.openstreetmap.josm.gui.layer.Layer;
     
    107107            if (!exported) {
    108108                GuiHelper.runInEDT(() ->
    109                     JOptionPane.showMessageDialog(Main.parent, tr("No Exporter found! Nothing saved."), tr("Warning"),
     109                    JOptionPane.showMessageDialog(MainApplication.getMainFrame(), tr("No Exporter found! Nothing saved."), tr("Warning"),
    110110                        JOptionPane.WARNING_MESSAGE));
    111111                return false;
     
    120120                ((OsmDataLayer) layer).onPostSaveToFile();
    121121            }
    122             Main.parent.repaint();
     122            MainApplication.getMainFrame().repaint();
    123123        } catch (IOException e) {
    124124            Logging.error(e);
     
    213213        if (file == null || file.exists()) {
    214214            return new ExtendedDialog(
    215                     Main.parent,
     215                    MainApplication.getMainFrame(),
    216216                    tr("Overwrite"),
    217217                    tr("Overwrite"), tr("Cancel"))
  • trunk/src/org/openstreetmap/josm/actions/SearchNotesDownloadAction.java

    r13927 r14153  
    1616import javax.swing.JPanel;
    1717
    18 import org.openstreetmap.josm.Main;
    1918import org.openstreetmap.josm.actions.downloadtasks.DownloadNotesTask;
    2019import org.openstreetmap.josm.actions.downloadtasks.DownloadParams;
    2120import org.openstreetmap.josm.gui.ExtendedDialog;
     21import org.openstreetmap.josm.gui.MainApplication;
    2222import org.openstreetmap.josm.gui.Notification;
    2323import org.openstreetmap.josm.gui.widgets.HistoryComboBox;
     
    5656        contentPanel.add(searchTermBox, gc);
    5757
    58         ExtendedDialog ed = new ExtendedDialog(Main.parent, tr("Search for notes"), tr("Search for notes"), tr("Cancel"))
     58        ExtendedDialog ed = new ExtendedDialog(MainApplication.getMainFrame(), tr("Search for notes"), tr("Search for notes"), tr("Cancel"))
    5959            .setContent(contentPanel)
    6060            .setButtonIcons("note_search", "cancel");
  • trunk/src/org/openstreetmap/josm/actions/SessionLoadAction.java

    r14120 r14153  
    1919import javax.swing.SwingUtilities;
    2020
    21 import org.openstreetmap.josm.Main;
    2221import org.openstreetmap.josm.data.projection.ProjectionRegistry;
    2322import org.openstreetmap.josm.gui.HelpAwareOptionPane;
     
    204203            Logging.error(e);
    205204            HelpAwareOptionPane.showMessageDialogInEDT(
    206                     Main.parent,
     205                    MainApplication.getMainFrame(),
    207206                    tr("<html>Could not load session file ''{0}''.<br>Error is:<br>{1}</html>",
    208207                            uri != null ? uri : file.getName(), Utils.escapeReservedCharactersHTML(e.getMessage())),
  • trunk/src/org/openstreetmap/josm/actions/SessionSaveAsAction.java

    r13761 r14153  
    3232import javax.swing.filechooser.FileFilter;
    3333
    34 import org.openstreetmap.josm.Main;
    3534import org.openstreetmap.josm.gui.ExtendedDialog;
    3635import org.openstreetmap.josm.gui.HelpAwareOptionPane;
     
    171170            Logging.error(ex);
    172171            HelpAwareOptionPane.showMessageDialogInEDT(
    173                     Main.parent,
     172                    MainApplication.getMainFrame(),
    174173                    tr("<html>Could not save session file ''{0}''.<br>Error is:<br>{1}</html>",
    175174                            file.getName(), Utils.escapeReservedCharactersHTML(ex.getMessage())),
     
    190189         */
    191190        public SessionSaveAsDialog() {
    192             super(Main.parent, tr("Save Session"), tr("Save As"), tr("Cancel"));
     191            super(MainApplication.getMainFrame(), tr("Save Session"), tr("Save As"), tr("Cancel"));
    193192            initialize();
    194193            setButtonIcons("save_as", "cancel");
    195194            setDefaultButton(1);
    196195            setRememberWindowGeometry(getClass().getName() + ".geometry",
    197                     WindowGeometry.centerInWindow(Main.parent, new Dimension(350, 450)));
     196                    WindowGeometry.centerInWindow(MainApplication.getMainFrame(), new Dimension(350, 450)));
    198197            setContent(build(), false);
    199198        }
  • trunk/src/org/openstreetmap/josm/actions/ShowStatusReportAction.java

    r14149 r14153  
    2525import java.util.stream.Collectors;
    2626
    27 import org.openstreetmap.josm.Main;
    2827import org.openstreetmap.josm.data.Preferences;
    2928import org.openstreetmap.josm.data.Version;
     
    294293        DebugTextDisplay ta = new DebugTextDisplay(text.toString());
    295294
    296         ExtendedDialog ed = new ExtendedDialog(Main.parent,
     295        ExtendedDialog ed = new ExtendedDialog(MainApplication.getMainFrame(),
    297296                tr("Status Report"),
    298297                tr("Copy to clipboard and close"), tr("Report bug"), tr("Close"));
     
    300299        ed.setContent(ta, false);
    301300        ed.setMinimumSize(new Dimension(380, 200));
    302         ed.setPreferredSize(new Dimension(700, Main.parent.getHeight()-50));
     301        ed.setPreferredSize(new Dimension(700, MainApplication.getMainFrame().getHeight()-50));
    303302
    304303        switch (ed.showDialog().getValue()) {
  • trunk/src/org/openstreetmap/josm/actions/SimplifyWayAction.java

    r14134 r14153  
    2020import javax.swing.SwingUtilities;
    2121
    22 import org.openstreetmap.josm.Main;
    2322import org.openstreetmap.josm.command.ChangeCommand;
    2423import org.openstreetmap.josm.command.Command;
     
    3332import org.openstreetmap.josm.gui.HelpAwareOptionPane;
    3433import org.openstreetmap.josm.gui.HelpAwareOptionPane.ButtonSpec;
     34import org.openstreetmap.josm.gui.MainApplication;
    3535import org.openstreetmap.josm.gui.Notification;
    3636import org.openstreetmap.josm.spi.preferences.Config;
     
    8282        };
    8383        return 0 == HelpAwareOptionPane.showOptionDialog(
    84                 Main.parent,
     84                MainApplication.getMainFrame(),
    8585                tr("The selection contains {0} ways. Are you sure you want to simplify them all?", numWays),
    8686                tr("Simplify ways?"),
  • trunk/src/org/openstreetmap/josm/actions/SplitWayAction.java

    r14134 r14153  
    2424import javax.swing.ListSelectionModel;
    2525
    26 import org.openstreetmap.josm.Main;
    2726import org.openstreetmap.josm.command.SplitWayCommand;
    2827import org.openstreetmap.josm.data.UndoRedoHandler;
     
    165164
    166165        SegmentToKeepSelectionDialog(Way selectedWay, List<Way> newWays, Way wayToKeep, List<OsmPrimitive> selection) {
    167             super(Main.parent, tr("Which way segment should reuse the history of {0}?", selectedWay.getId()),
     166            super(MainApplication.getMainFrame(), tr("Which way segment should reuse the history of {0}?", selectedWay.getId()),
    168167                    new String[]{tr("Ok"), tr("Cancel")}, true);
    169168
  • trunk/src/org/openstreetmap/josm/actions/UnGlueAction.java

    r14134 r14153  
    2626import javax.swing.JToggleButton;
    2727
    28 import org.openstreetmap.josm.Main;
    2928import org.openstreetmap.josm.command.AddCommand;
    3029import org.openstreetmap.josm.command.ChangeCommand;
     
    209208
    210209        private PropertiesMembershipDialog(boolean preselectNew, boolean queryTags, boolean queryMemberships) {
    211             super(Main.parent, tr("Tags/Memberships"), tr("Unglue"), tr("Cancel"));
     210            super(MainApplication.getMainFrame(), tr("Tags/Memberships"), tr("Unglue"), tr("Cancel"));
    212211            setButtonIcons("unglueways", "cancel");
    213212
  • trunk/src/org/openstreetmap/josm/actions/UpdateSelectionAction.java

    r14121 r14153  
    1414import javax.swing.JOptionPane;
    1515
    16 import org.openstreetmap.josm.Main;
    1716import org.openstreetmap.josm.data.osm.DataSet;
    1817import org.openstreetmap.josm.data.osm.DownloadPolicy;
     
    137136        if (toUpdate.isEmpty()) {
    138137            JOptionPane.showMessageDialog(
    139                     Main.parent,
     138                    MainApplication.getMainFrame(),
    140139                    tr("There are no selected objects to update."),
    141140                    tr("Selection empty"),
  • trunk/src/org/openstreetmap/josm/actions/UploadAction.java

    r13568 r14153  
    1414import javax.swing.JOptionPane;
    1515
    16 import org.openstreetmap.josm.Main;
    1716import org.openstreetmap.josm.actions.upload.ApiPreconditionCheckerHook;
    1817import org.openstreetmap.josm.actions.upload.DiscardTagsHook;
     
    163162    protected static void alertUnresolvedConflicts(OsmDataLayer layer) {
    164163        HelpAwareOptionPane.showOptionDialog(
    165                 Main.parent,
     164                MainApplication.getMainFrame(),
    166165                tr("<html>The data to be uploaded participates in unresolved conflicts of layer ''{0}''.<br>"
    167166                        + "You have to resolve them first.</html>", Utils.escapeReservedCharactersHTML(layer.getName())
     
    232231        if (apiData.isEmpty()) {
    233232            JOptionPane.showMessageDialog(
    234                     Main.parent,
     233                    MainApplication.getMainFrame(),
    235234                    tr("No changes to upload."),
    236235                    tr("Warning"),
     
    291290        if (MainApplication.getMap() == null) {
    292291            JOptionPane.showMessageDialog(
    293                     Main.parent,
     292                    MainApplication.getMainFrame(),
    294293                    tr("Nothing to upload. Get some data first."),
    295294                    tr("Warning"),
  • trunk/src/org/openstreetmap/josm/actions/UploadSelectionAction.java

    r13568 r14153  
    1616import javax.swing.SwingUtilities;
    1717
    18 import org.openstreetmap.josm.Main;
    1918import org.openstreetmap.josm.data.APIDataSet;
    2019import org.openstreetmap.josm.data.osm.DataSet;
     
    102101        if (modifiedCandidates.isEmpty() && deletedCandidates.isEmpty()) {
    103102            JOptionPane.showMessageDialog(
    104                     Main.parent,
     103                    MainApplication.getMainFrame(),
    105104                    tr("No changes to upload."),
    106105                    tr("Warning"),
     
    120119        if (toUpload.isEmpty()) {
    121120            JOptionPane.showMessageDialog(
    122                     Main.parent,
     121                    MainApplication.getMainFrame(),
    123122                    tr("No changes to upload."),
    124123                    tr("Warning"),
  • trunk/src/org/openstreetmap/josm/actions/downloadtasks/ChangesetContentDownloadTask.java

    r13849 r14153  
    1212import java.util.List;
    1313
    14 import org.openstreetmap.josm.Main;
    1514import org.openstreetmap.josm.data.osm.Changeset;
    1615import org.openstreetmap.josm.data.osm.ChangesetCache;
    1716import org.openstreetmap.josm.data.osm.ChangesetDataSet;
    1817import org.openstreetmap.josm.gui.ExceptionDialogUtil;
     18import org.openstreetmap.josm.gui.MainApplication;
    1919import org.openstreetmap.josm.io.OsmTransferCanceledException;
    2020import org.openstreetmap.josm.io.OsmTransferException;
     
    103103     */
    104104    public ChangesetContentDownloadTask(int changesetId) {
    105         this(Main.parent, changesetId);
     105        this(MainApplication.getMainFrame(), changesetId);
    106106    }
    107107
     
    113113     */
    114114    public ChangesetContentDownloadTask(Collection<Integer> changesetIds) {
    115         this(Main.parent, changesetIds);
     115        this(MainApplication.getMainFrame(), changesetIds);
    116116    }
    117117
  • trunk/src/org/openstreetmap/josm/actions/downloadtasks/ChangesetHeaderDownloadTask.java

    r10250 r14153  
    1111import java.util.Set;
    1212
    13 import org.openstreetmap.josm.Main;
    1413import org.openstreetmap.josm.data.osm.Changeset;
    1514import org.openstreetmap.josm.data.osm.ChangesetCache;
    1615import org.openstreetmap.josm.gui.ExceptionDialogUtil;
     16import org.openstreetmap.josm.gui.MainApplication;
    1717import org.openstreetmap.josm.io.OsmTransferException;
    1818import org.openstreetmap.josm.tools.CheckParameterUtil;
     
    8080     */
    8181    public ChangesetHeaderDownloadTask(Collection<Integer> ids) {
    82         this(Main.parent, ids, false);
     82        this(MainApplication.getMainFrame(), ids, false);
    8383    }
    8484
     
    122122     */
    123123    public static ChangesetHeaderDownloadTask buildTaskForChangesets(Collection<Changeset> changesets) {
    124         return buildTaskForChangesets(Main.parent, changesets);
     124        return buildTaskForChangesets(MainApplication.getMainFrame(), changesets);
    125125    }
    126126
  • trunk/src/org/openstreetmap/josm/actions/downloadtasks/ChangesetQueryTask.java

    r12743 r14153  
    99import javax.swing.JOptionPane;
    1010
    11 import org.openstreetmap.josm.Main;
    1211import org.openstreetmap.josm.data.UserIdentityManager;
    1312import org.openstreetmap.josm.data.osm.UserInfo;
     13import org.openstreetmap.josm.gui.MainApplication;
    1414import org.openstreetmap.josm.gui.util.GuiHelper;
    1515import org.openstreetmap.josm.io.ChangesetQuery;
     
    9191                    public void run() {
    9292                        JOptionPane.showMessageDialog(
    93                                 parent != null ? parent : Main.parent,
     93                                parent != null ? parent : MainApplication.getMainFrame(),
    9494                                ExceptionUtil.explainException(lastException),
    9595                                tr("Errors during download"),
     
    120120     */
    121121    public ChangesetQueryTask(ChangesetQuery query) {
    122         this(Main.parent, query);
     122        this(MainApplication.getMainFrame(), query);
    123123    }
    124124
  • trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadNotesTask.java

    r13927 r14153  
    1313import javax.swing.JOptionPane;
    1414
    15 import org.openstreetmap.josm.Main;
    1615import org.openstreetmap.josm.data.Bounds;
    1716import org.openstreetmap.josm.data.ProjectionBounds;
     
    175174                Logging.debug(e);
    176175                notesData = e.notes;
    177                 JOptionPane.showMessageDialog(Main.parent, "<html>"
     176                JOptionPane.showMessageDialog(MainApplication.getMainFrame(), "<html>"
    178177                                + trn("{0} note has been downloaded.", "{0} notes have been downloaded.", e.limit, e.limit)
    179178                                + "<br>"
  • trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadReferrersTask.java

    r13612 r14153  
    1717import javax.swing.SwingUtilities;
    1818
    19 import org.openstreetmap.josm.Main;
    2019import org.openstreetmap.josm.data.osm.DataSet;
    2120import org.openstreetmap.josm.data.osm.DataSetMerger;
     
    127126        targetLayer.getConflicts().add(visitor.getConflicts());
    128127        JOptionPane.showMessageDialog(
    129                 Main.parent,
     128                MainApplication.getMainFrame(),
    130129                trn("There was {0} conflict during import.",
    131130                    "There were {0} conflicts during import.",
  • trunk/src/org/openstreetmap/josm/actions/downloadtasks/DownloadTaskList.java

    r13927 r14153  
    2222import javax.swing.JOptionPane;
    2323
    24 import org.openstreetmap.josm.Main;
    2524import org.openstreetmap.josm.actions.UpdateSelectionAction;
    2625import org.openstreetmap.josm.data.Bounds;
     
    190189
    191190        int ret = HelpAwareOptionPane.showOptionDialog(
    192                 Main.parent,
     191                MainApplication.getMainFrame(),
    193192                message,
    194193                tr("Deleted or moved objects"),
     
    266265                        new Notification(items.iterator().next()).setIcon(JOptionPane.WARNING_MESSAGE).show();
    267266                    } else {
    268                         JOptionPane.showMessageDialog(Main.parent, "<html>"
     267                        JOptionPane.showMessageDialog(MainApplication.getMainFrame(), "<html>"
    269268                                + tr("The following errors occurred during mass download: {0}",
    270269                                        Utils.joinAsHtmlUnorderedList(items)) + "</html>",
  • trunk/src/org/openstreetmap/josm/actions/downloadtasks/PostDownloadHandler.java

    r13849 r14153  
    1717import javax.swing.SwingUtilities;
    1818
    19 import org.openstreetmap.josm.Main;
    2019import org.openstreetmap.josm.gui.ExceptionDialogUtil;
     20import org.openstreetmap.josm.gui.MainApplication;
    2121import org.openstreetmap.josm.gui.Notification;
    2222import org.openstreetmap.josm.gui.util.GuiHelper;
     
    9191                    } else {
    9292                        JOptionPane.showMessageDialog(
    93                                 Main.parent,
     93                                MainApplication.getMainFrame(),
    9494                                error.toString(),
    9595                                tr("Error during download"),
     
    115115            if (!GraphicsEnvironment.isHeadless()) {
    116116                SwingUtilities.invokeLater(() -> JOptionPane.showMessageDialog(
    117                         Main.parent,
     117                        MainApplication.getMainFrame(),
    118118                        "<html>"+Utils.joinAsHtmlUnorderedList(items)+"</html>",
    119119                        tr("Errors during download"),
  • trunk/src/org/openstreetmap/josm/actions/mapmode/AddNoteAction.java

    r13761 r14153  
    1010import javax.swing.SwingUtilities;
    1111
    12 import org.openstreetmap.josm.Main;
    1312import org.openstreetmap.josm.data.coor.LatLon;
    1413import org.openstreetmap.josm.data.osm.NoteData;
     
    7271        map.selectMapMode(map.mapModeSelect);
    7372
    74         NoteInputDialog dialog = new NoteInputDialog(Main.parent, tr("Create a new note"), tr("Create note"));
     73        NoteInputDialog dialog = new NoteInputDialog(MainApplication.getMainFrame(), tr("Create a new note"), tr("Create note"));
    7574        dialog.showNoteDialog(tr("Enter a detailed comment to create a note"), ImageProvider.get("dialogs/notes", "note_new"));
    7675
  • trunk/src/org/openstreetmap/josm/actions/mapmode/DrawAction.java

    r14134 r14153  
    3232import javax.swing.SwingUtilities;
    3333
    34 import org.openstreetmap.josm.Main;
    3534import org.openstreetmap.josm.actions.JosmAction;
    3635import org.openstreetmap.josm.command.AddCommand;
     
    531530            if (n.getCoor().isOutSideWorld()) {
    532531                JOptionPane.showMessageDialog(
    533                         Main.parent,
     532                        MainApplication.getMainFrame(),
    534533                        tr("Cannot add a node outside of the world."),
    535534                        tr("Warning"),
  • trunk/src/org/openstreetmap/josm/actions/mapmode/ImproveWayAccuracyAction.java

    r14137 r14153  
    2121import javax.swing.JOptionPane;
    2222
    23 import org.openstreetmap.josm.Main;
    2423import org.openstreetmap.josm.command.AddCommand;
    2524import org.openstreetmap.josm.command.ChangeCommand;
     
    416415            // Checking if the new coordinate is outside of the world
    417416            if (mv.getLatLon(mousePos.x, mousePos.y).isOutSideWorld()) {
    418                 JOptionPane.showMessageDialog(Main.parent,
     417                JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    419418                        tr("Cannot add a node outside of the world."),
    420419                        tr("Warning"), JOptionPane.WARNING_MESSAGE);
     
    502501                    }
    503502                } else if (candidateNode.isTagged()) {
    504                     JOptionPane.showMessageDialog(Main.parent,
     503                    JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    505504                            tr("Cannot delete node that has tags"),
    506505                            tr("Error"), JOptionPane.ERROR_MESSAGE);
  • trunk/src/org/openstreetmap/josm/actions/mapmode/SelectAction.java

    r14138 r14153  
    2222import javax.swing.JOptionPane;
    2323
    24 import org.openstreetmap.josm.Main;
    2524import org.openstreetmap.josm.actions.MergeNodesAction;
    2625import org.openstreetmap.josm.command.AddCommand;
     
    731730                        // TODO: We might use a simple notification in the lower left corner.
    732731                        JOptionPane.showMessageDialog(
    733                                 Main.parent,
     732                                MainApplication.getMainFrame(),
    734733                                tr("Cannot move objects outside of the world."),
    735734                                tr("Warning"),
     
    873872    static class ConfirmMoveDialog extends ExtendedDialog {
    874873        ConfirmMoveDialog() {
    875             super(Main.parent,
     874            super(MainApplication.getMainFrame(),
    876875                    tr("Move elements"),
    877876                    tr("Move them"), tr("Undo move"));
  • trunk/src/org/openstreetmap/josm/actions/relation/EditRelationAction.java

    r13957 r14153  
    1212import javax.swing.JOptionPane;
    1313
    14 import org.openstreetmap.josm.Main;
    1514import org.openstreetmap.josm.data.osm.IRelation;
    1615import org.openstreetmap.josm.data.osm.OsmPrimitive;
     
    7877        if (filteredRelations.size() > Config.getPref().getInt("warn.open.maxrelations", 5) &&
    7978            /* I18N english text for value 1 makes no real sense, never called for values <= maxrel (usually 5) */
    80             JOptionPane.OK_OPTION != JOptionPane.showConfirmDialog(Main.parent,
     79            JOptionPane.OK_OPTION != JOptionPane.showConfirmDialog(MainApplication.getMainFrame(),
    8180                    "<html>"+trn("You are about to open <b>{0}</b> different relation editor simultaneously.<br/>Do you want to continue?",
    8281                            "You are about to open <b>{0}</b> different relation editors simultaneously.<br/>Do you want to continue?",
  • trunk/src/org/openstreetmap/josm/actions/search/SearchAction.java

    r13950 r14153  
    4040import javax.swing.text.JTextComponent;
    4141
    42 import org.openstreetmap.josm.Main;
    4342import org.openstreetmap.josm.actions.ActionParameter;
    4443import org.openstreetmap.josm.actions.ExpertToggleAction;
     
    400399
    401400        ExtendedDialog dialog = new ExtendedDialog(
    402                 Main.parent,
     401                MainApplication.getMainFrame(),
    403402                initialValues instanceof Filter ? tr("Filter") : tr("Search"),
    404403                initialValues instanceof Filter ? tr("Submit filter") : tr("Start Search"),
     
    419418                        Logging.debug(e);
    420419                        JOptionPane.showMessageDialog(
    421                                 Main.parent,
     420                                MainApplication.getMainFrame(),
    422421                                "<html>" + tr("Search expression is not valid: \n\n {0}",
    423422                                        e.getMessage().replace("<html>", "").replace("</html>", "")).replace("\n", "<br>") +
     
    835834                Logging.debug(e);
    836835                JOptionPane.showMessageDialog(
    837                         Main.parent,
     836                        MainApplication.getMainFrame(),
    838837                        e.getMessage(),
    839838                        tr("Error"),
  • trunk/src/org/openstreetmap/josm/actions/upload/ApiPreconditionCheckerHook.java

    r14121 r14153  
    99import javax.swing.JOptionPane;
    1010
    11 import org.openstreetmap.josm.Main;
    1211import org.openstreetmap.josm.data.APIDataSet;
    1312import org.openstreetmap.josm.data.osm.OsmPrimitive;
     
    7574                        continue;
    7675                    }
    77                     JOptionPane.showMessageDialog(Main.parent,
     76                    JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    7877                            tr("Length of value for tag ''{0}'' on object {1} exceeds the max. allowed length {2}. Values length is {3}.",
    7978                                    key, Long.toString(osmPrimitive.getId()), Tagged.MAX_TAG_LENGTH, value.length()
     
    9089                    ((Way) osmPrimitive).getNodesCount() > maxNodes) {
    9190                JOptionPane.showMessageDialog(
    92                         Main.parent,
     91                        MainApplication.getMainFrame(),
    9392                        tr("{0} nodes in way {1} exceed the max. allowed number of nodes {2}",
    9493                                ((Way) osmPrimitive).getNodesCount(),
  • trunk/src/org/openstreetmap/josm/actions/upload/RelationUploadOrderHook.java

    r13564 r14153  
    1616import javax.swing.table.DefaultTableModel;
    1717
    18 import org.openstreetmap.josm.Main;
    1918import org.openstreetmap.josm.data.APIDataSet;
    2019import org.openstreetmap.josm.data.osm.CyclicUploadDependencyException;
    2120import org.openstreetmap.josm.data.osm.Relation;
    2221import org.openstreetmap.josm.gui.ExtendedDialog;
     22import org.openstreetmap.josm.gui.MainApplication;
    2323import org.openstreetmap.josm.gui.PrimitiveRenderer;
    2424import org.openstreetmap.josm.gui.util.WindowGeometry;
     
    8080        JPanel pnl = buildWarningPanel(dep);
    8181        ExtendedDialog dialog = new ExtendedDialog(
    82                 Main.parent,
     82                MainApplication.getMainFrame(),
    8383                tr("Cycling dependencies"),
    8484                tr("OK")
     
    8888        dialog.setRememberWindowGeometry(
    8989                getClass().getName() + ".geometry",
    90                 WindowGeometry.centerInWindow(Main.parent, new Dimension(300, 300))
     90                WindowGeometry.centerInWindow(MainApplication.getMainFrame(), new Dimension(300, 300))
    9191        );
    9292        dialog.showDialog();
  • trunk/src/org/openstreetmap/josm/actions/upload/ValidateUploadHook.java

    r13893 r14153  
    1313import javax.swing.JScrollPane;
    1414
    15 import org.openstreetmap.josm.Main;
    1615import org.openstreetmap.josm.data.APIDataSet;
    1716import org.openstreetmap.josm.data.osm.OsmPrimitive;
     
    144143        p.add(new JScrollPane(errorPanel), GBC.eol().fill(GBC.BOTH));
    145144
    146         ExtendedDialog ed = new ExtendedDialog(Main.parent,
     145        ExtendedDialog ed = new ExtendedDialog(MainApplication.getMainFrame(),
    147146                tr("Suspicious data found. Upload anyway?"),
    148147                tr("Continue upload"), tr("Cancel"))
  • trunk/src/org/openstreetmap/josm/command/conflict/ConflictAddCommand.java

    r14143 r14153  
    1010import javax.swing.JOptionPane;
    1111
    12 import org.openstreetmap.josm.Main;
    1312import org.openstreetmap.josm.command.Command;
    1413import org.openstreetmap.josm.data.conflict.Conflict;
     
    1716import org.openstreetmap.josm.data.osm.OsmDataManager;
    1817import org.openstreetmap.josm.data.osm.OsmPrimitive;
     18import org.openstreetmap.josm.gui.MainApplication;
    1919import org.openstreetmap.josm.tools.ImageProvider;
    2020import org.openstreetmap.josm.tools.Logging;
     
    4141    protected void warnBecauseOfDoubleConflict() {
    4242        JOptionPane.showMessageDialog(
    43                 Main.parent,
     43                MainApplication.getMainFrame(),
    4444                tr("<html>Layer ''{0}'' already has a conflict for object<br>"
    4545                        + "''{1}''.<br>"
  • trunk/src/org/openstreetmap/josm/corrector/ReverseWayNoTagCorrector.java

    r12663 r14153  
    1010import javax.swing.JOptionPane;
    1111
    12 import org.openstreetmap.josm.Main;
    1312import org.openstreetmap.josm.data.osm.DefaultNameFormatter;
    1413import org.openstreetmap.josm.data.osm.Tag;
     
    1716import org.openstreetmap.josm.data.osm.Way;
    1817import org.openstreetmap.josm.gui.ConditionalOptionPaneUtil;
     18import org.openstreetmap.josm.gui.MainApplication;
    1919import org.openstreetmap.josm.tools.UserCancelException;
    2020import org.openstreetmap.josm.tools.Utils;
     
    9191        int ret = ConditionalOptionPaneUtil.showOptionDialog(
    9292                "reverse_directional_way",
    93                 Main.parent,
     93                MainApplication.getMainFrame(),
    9494                msg,
    9595                tr("Reverse directional way."),
  • trunk/src/org/openstreetmap/josm/corrector/TagCorrector.java

    r13158 r14153  
    2020import javax.swing.JScrollPane;
    2121
    22 import org.openstreetmap.josm.Main;
    2322import org.openstreetmap.josm.command.ChangeCommand;
    2423import org.openstreetmap.josm.command.ChangeRelationMemberRoleCommand;
     
    3231import org.openstreetmap.josm.data.osm.Relation;
    3332import org.openstreetmap.josm.data.osm.Way;
     33import org.openstreetmap.josm.gui.MainApplication;
    3434import org.openstreetmap.josm.gui.correction.RoleCorrectionTable;
    3535import org.openstreetmap.josm.gui.correction.TagCorrectionTable;
     
    150150
    151151            int answer = JOptionPane.showOptionDialog(
    152                     Main.parent,
     152                    MainApplication.getMainFrame(),
    153153                    p,
    154154                    tr("Automatic tag correction"),
  • trunk/src/org/openstreetmap/josm/data/Preferences.java

    r14149 r14153  
    3434import javax.xml.stream.XMLStreamException;
    3535
    36 import org.openstreetmap.josm.Main;
    3736import org.openstreetmap.josm.data.preferences.ColorInfo;
    3837import org.openstreetmap.josm.data.preferences.JosmBaseDirectories;
     
    4039import org.openstreetmap.josm.data.preferences.PreferencesReader;
    4140import org.openstreetmap.josm.data.preferences.PreferencesWriter;
     41import org.openstreetmap.josm.gui.MainApplication;
    4242import org.openstreetmap.josm.io.OfflineAccessException;
    4343import org.openstreetmap.josm.io.OnlineResource;
     
    454454                if (!GraphicsEnvironment.isHeadless()) {
    455455                    JOptionPane.showMessageDialog(
    456                             Main.parent,
     456                            MainApplication.getMainFrame(),
    457457                            tr("<html>Failed to initialize preferences.<br>Preference directory ''{0}'' is not a directory.</html>",
    458458                                    prefDir.getAbsoluteFile()),
     
    469469                if (!GraphicsEnvironment.isHeadless()) {
    470470                    JOptionPane.showMessageDialog(
    471                             Main.parent,
     471                            MainApplication.getMainFrame(),
    472472                            tr("<html>Failed to initialize preferences.<br>Failed to create missing preference directory: {0}</html>",
    473473                                    prefDir.getAbsoluteFile()),
     
    497497            if (!GraphicsEnvironment.isHeadless()) {
    498498                JOptionPane.showMessageDialog(
    499                         Main.parent,
     499                        MainApplication.getMainFrame(),
    500500                        tr("<html>Failed to initialize preferences.<br>Failed to reset preference file to default: {0}</html>",
    501501                                getPreferenceFile().getAbsoluteFile()),
     
    514514            if (!GraphicsEnvironment.isHeadless()) {
    515515                JOptionPane.showMessageDialog(
    516                         Main.parent,
     516                        MainApplication.getMainFrame(),
    517517                        tr("<html>Preferences file had errors.<br> Making backup of old one to <br>{0}<br> " +
    518518                                "and creating a new default preference file.</html>",
  • trunk/src/org/openstreetmap/josm/data/PreferencesUtils.java

    r12894 r14153  
    1818import javax.swing.JOptionPane;
    1919
    20 import org.openstreetmap.josm.Main;
     20import org.openstreetmap.josm.gui.MainApplication;
    2121import org.openstreetmap.josm.spi.preferences.IPreferences;
    2222import org.openstreetmap.josm.spi.preferences.ListListSetting;
     
    270270        log("Warning: Unknown default value of %s , skipped\n", key);
    271271        JOptionPane.showMessageDialog(
    272                 Main.parent,
     272                MainApplication.getMainFrame(),
    273273                tr("<html>Settings file asks to append preferences to <b>{0}</b>,<br/> "+
    274274                        "but its default value is unknown at this moment.<br/> " +
  • trunk/src/org/openstreetmap/josm/data/imagery/WMTSTileSource.java

    r14120 r14153  
    4343import org.openstreetmap.gui.jmapviewer.interfaces.TemplatedTileSource;
    4444import org.openstreetmap.gui.jmapviewer.tilesources.AbstractTMSTileSource;
    45 import org.openstreetmap.josm.Main;
    4645import org.openstreetmap.josm.data.ProjectionBounds;
    4746import org.openstreetmap.josm.data.coor.EastNorth;
     
    5352import org.openstreetmap.josm.data.projection.Projections;
    5453import org.openstreetmap.josm.gui.ExtendedDialog;
     54import org.openstreetmap.josm.gui.MainApplication;
    5555import org.openstreetmap.josm.gui.layer.NativeScaleLayer.ScaleList;
    5656import org.openstreetmap.josm.gui.layer.imagery.WMTSLayerSelection;
     
    281281
    282282        SelectLayerDialog(Collection<Layer> layers) {
    283             super(Main.parent, tr("Select WMTS layer"), tr("Add layers"), tr("Cancel"));
     283            super(MainApplication.getMainFrame(), tr("Select WMTS layer"), tr("Add layers"), tr("Cancel"));
    284284            this.list = new WMTSLayerSelection(groupLayersByNameAndTileMatrixSet(layers));
    285285            setContent(list);
  • trunk/src/org/openstreetmap/josm/data/osm/ChangesetCache.java

    r12881 r14153  
    1212import java.util.stream.Collectors;
    1313
     14import org.openstreetmap.josm.data.UserIdentityManager;
     15import org.openstreetmap.josm.spi.preferences.Config;
    1416import org.openstreetmap.josm.spi.preferences.PreferenceChangeEvent;
    1517import org.openstreetmap.josm.spi.preferences.PreferenceChangedListener;
    16 import org.openstreetmap.josm.data.UserIdentityManager;
    17 import org.openstreetmap.josm.spi.preferences.Config;
    1818import org.openstreetmap.josm.tools.SubclassFilteredCollection;
    1919
  • trunk/src/org/openstreetmap/josm/data/osm/FilterModel.java

    r14143 r14153  
    1616import javax.swing.JOptionPane;
    1717
    18 import org.openstreetmap.josm.Main;
    1918import org.openstreetmap.josm.data.StructUtils;
    2019import org.openstreetmap.josm.data.osm.Filter.FilterPreferenceEntry;
     
    5655                Logging.error(e);
    5756                JOptionPane.showMessageDialog(
    58                         Main.parent,
     57                        MainApplication.getMainFrame(),
    5958                        tr("<html>Error in filter <code>{0}</code>:<br>{1}",
    6059                                Utils.escapeReservedCharactersHTML(Utils.shortenString(filter.text, 80)),
  • trunk/src/org/openstreetmap/josm/data/preferences/CachedProperty.java

    r12881 r14153  
    22package org.openstreetmap.josm.data.preferences;
    33
     4import org.openstreetmap.josm.spi.preferences.Config;
    45import org.openstreetmap.josm.spi.preferences.PreferenceChangeEvent;
    56import org.openstreetmap.josm.spi.preferences.PreferenceChangedListener;
    6 import org.openstreetmap.josm.spi.preferences.Config;
    77
    88/**
  • trunk/src/org/openstreetmap/josm/data/preferences/JosmBaseDirectories.java

    r14138 r14153  
    1010import javax.swing.JOptionPane;
    1111
    12 import org.openstreetmap.josm.Main;
     12import org.openstreetmap.josm.gui.MainApplication;
    1313import org.openstreetmap.josm.spi.preferences.Config;
    1414import org.openstreetmap.josm.spi.preferences.IBaseDirectories;
     
    7373                if (!GraphicsEnvironment.isHeadless()) {
    7474                    JOptionPane.showMessageDialog(
    75                             Main.parent,
     75                            MainApplication.getMainFrame(),
    7676                            tr("<html>Failed to create missing preferences directory: {0}</html>", preferencesDir.getAbsoluteFile()),
    7777                            tr("Error"),
     
    106106                if (!GraphicsEnvironment.isHeadless()) {
    107107                    JOptionPane.showMessageDialog(
    108                             Main.parent,
     108                            MainApplication.getMainFrame(),
    109109                            tr("<html>Failed to create missing user data directory: {0}</html>", userdataDir.getAbsoluteFile()),
    110110                            tr("Error"),
     
    144144                if (!GraphicsEnvironment.isHeadless()) {
    145145                    JOptionPane.showMessageDialog(
    146                             Main.parent,
     146                            MainApplication.getMainFrame(),
    147147                            tr("<html>Failed to create missing cache directory: {0}</html>", cacheDir.getAbsoluteFile()),
    148148                            tr("Error"),
  • trunk/src/org/openstreetmap/josm/data/validation/OsmValidator.java

    r14120 r14153  
    2929import javax.swing.JOptionPane;
    3030
    31 import org.openstreetmap.josm.Main;
    3231import org.openstreetmap.josm.data.preferences.sources.ValidatorPrefHelper;
    3332import org.openstreetmap.josm.data.projection.ProjectionRegistry;
     
    407406                if (!GraphicsEnvironment.isHeadless()) {
    408407                    GuiHelper.runInEDT(() ->
    409                         JOptionPane.showMessageDialog(Main.parent, message, tr("Error"), JOptionPane.ERROR_MESSAGE)
     408                        JOptionPane.showMessageDialog(MainApplication.getMainFrame(), message, tr("Error"), JOptionPane.ERROR_MESSAGE)
    410409                    );
    411410                }
  • trunk/src/org/openstreetmap/josm/gui/DownloadParamType.java

    r13050 r14153  
    1616import javax.swing.JOptionPane;
    1717
    18 import org.openstreetmap.josm.Main;
    1918import org.openstreetmap.josm.actions.OpenLocationAction;
    2019import org.openstreetmap.josm.data.Bounds;
     
    4039            if (b == null) {
    4140                JOptionPane.showMessageDialog(
    42                         Main.parent,
     41                        MainApplication.getMainFrame(),
    4342                        tr("Ignoring malformed URL: \"{0}\"", s),
    4443                        tr("Warning"),
     
    6059                Logging.warn(e);
    6160                JOptionPane.showMessageDialog(
    62                         Main.parent,
     61                        MainApplication.getMainFrame(),
    6362                        tr("Ignoring malformed file URL: \"{0}\"", s),
    6463                        tr("Warning"),
     
    127126        if (!GraphicsEnvironment.isHeadless()) {
    128127            JOptionPane.showMessageDialog(
    129                     Main.parent,
     128                    MainApplication.getMainFrame(),
    130129                    tr("Parameter \"downloadgps\" does not accept file names or file URLs"),
    131130                    tr("Warning"),
  • trunk/src/org/openstreetmap/josm/gui/ExceptionDialogUtil.java

    r13849 r14153  
    1515import javax.swing.JOptionPane;
    1616
    17 import org.openstreetmap.josm.Main;
    1817import org.openstreetmap.josm.data.osm.OsmPrimitive;
    1918import org.openstreetmap.josm.gui.widgets.HtmlPanel;
     
    5049    public static void explainOsmApiInitializationException(OsmApiInitializationException e) {
    5150        HelpAwareOptionPane.showOptionDialog(
    52                 Main.parent,
     51                MainApplication.getMainFrame(),
    5352                ExceptionUtil.explainOsmApiInitializationException(e),
    5453                tr("Error"),
     
    6564    public static void explainChangesetClosedException(ChangesetClosedException e) {
    6665        HelpAwareOptionPane.showOptionDialog(
    67                 Main.parent,
     66                MainApplication.getMainFrame(),
    6867                ExceptionUtil.explainChangesetClosedException(e),
    6968                tr("Error"),
     
    8079    public static void explainPreconditionFailed(OsmApiException e) {
    8180        HelpAwareOptionPane.showOptionDialog(
    82                 Main.parent,
     81                MainApplication.getMainFrame(),
    8382                ExceptionUtil.explainPreconditionFailed(e),
    8483                tr("Precondition violation"),
     
    108107    public static void explainSecurityException(OsmTransferException e) {
    109108        HelpAwareOptionPane.showOptionDialog(
    110                 Main.parent,
     109                MainApplication.getMainFrame(),
    111110                ExceptionUtil.explainSecurityException(e),
    112111                tr("Security exception"),
     
    126125    public static void explainNestedSocketException(OsmTransferException e) {
    127126        HelpAwareOptionPane.showOptionDialog(
    128                 Main.parent,
     127                MainApplication.getMainFrame(),
    129128                ExceptionUtil.explainNestedSocketException(e),
    130129                tr("Network exception"),
     
    144143    public static void explainNestedIOException(OsmTransferException e) {
    145144        HelpAwareOptionPane.showOptionDialog(
    146                 Main.parent,
     145                MainApplication.getMainFrame(),
    147146                ExceptionUtil.explainNestedIOException(e),
    148147                tr("IO Exception"),
     
    160159    public static void explainNestedIllegalDataException(OsmTransferException e) {
    161160        HelpAwareOptionPane.showOptionDialog(
    162                 Main.parent,
     161                MainApplication.getMainFrame(),
    163162                ExceptionUtil.explainNestedIllegalDataException(e),
    164163                tr("Illegal Data"),
     
    177176    public static void explainNestedOfflineAccessException(OsmTransferException e) {
    178177        HelpAwareOptionPane.showOptionDialog(
    179                 Main.parent,
     178                MainApplication.getMainFrame(),
    180179                ExceptionUtil.explainOfflineAccessException(e),
    181180                tr("Offline mode"),
     
    207206    public static void explainInternalServerError(OsmTransferException e) {
    208207        HelpAwareOptionPane.showOptionDialog(
    209                 Main.parent,
     208                MainApplication.getMainFrame(),
    210209                ExceptionUtil.explainInternalServerError(e),
    211210                tr("Internal Server Error"),
     
    223222    public static void explainBadRequest(OsmApiException e) {
    224223        HelpAwareOptionPane.showOptionDialog(
    225                 Main.parent,
     224                MainApplication.getMainFrame(),
    226225                ExceptionUtil.explainBadRequest(e),
    227226                tr("Bad Request"),
     
    239238    public static void explainNotFound(OsmApiException e) {
    240239        HelpAwareOptionPane.showOptionDialog(
    241                 Main.parent,
     240                MainApplication.getMainFrame(),
    242241                ExceptionUtil.explainNotFound(e),
    243242                tr("Not Found"),
     
    254253    public static void explainConflict(OsmApiException e) {
    255254        HelpAwareOptionPane.showOptionDialog(
    256                 Main.parent,
     255                MainApplication.getMainFrame(),
    257256                ExceptionUtil.explainConflict(e),
    258257                tr("Conflict"),
     
    277276
    278277        HelpAwareOptionPane.showOptionDialog(
    279                 Main.parent,
     278                MainApplication.getMainFrame(),
    280279                msg,
    281280                tr("Authentication failed"),
     
    314313
    315314        HelpAwareOptionPane.showOptionDialog(
    316                 Main.parent,
     315                MainApplication.getMainFrame(),
    317316                msg,
    318317                tr("Authorisation Failed"),
     
    330329    public static void explainClientTimeout(OsmApiException e) {
    331330        HelpAwareOptionPane.showOptionDialog(
    332                 Main.parent,
     331                MainApplication.getMainFrame(),
    333332                ExceptionUtil.explainClientTimeout(e),
    334333                tr("Client Time Out"),
     
    346345    public static void explainBandwidthLimitExceeded(OsmApiException e) {
    347346        HelpAwareOptionPane.showOptionDialog(
    348                 Main.parent,
     347                MainApplication.getMainFrame(),
    349348                ExceptionUtil.explainBandwidthLimitExceeded(e),
    350349                tr("Bandwidth Limit Exceeded"),
     
    368367        }
    369368        HelpAwareOptionPane.showOptionDialog(
    370                 Main.parent,
     369                MainApplication.getMainFrame(),
    371370                msg,
    372371                tr("Communication with OSM server failed"),
     
    384383    public static void explainMissingOAuthAccessTokenException(MissingOAuthAccessTokenException e) {
    385384        HelpAwareOptionPane.showOptionDialog(
    386                 Main.parent,
     385                MainApplication.getMainFrame(),
    387386                ExceptionUtil.explainMissingOAuthAccessTokenException(e),
    388387                tr("Authentication failed"),
     
    401400    public static void explainNestedUnkonwnHostException(OsmTransferException e) {
    402401        HelpAwareOptionPane.showOptionDialog(
    403                 Main.parent,
     402                MainApplication.getMainFrame(),
    404403                ExceptionUtil.explainNestedUnknownHostException(e),
    405404                tr("Unknown host"),
     
    504503    public static void explainGoneForUnknownPrimitive(OsmApiException e) {
    505504        HelpAwareOptionPane.showOptionDialog(
    506                 Main.parent,
     505                MainApplication.getMainFrame(),
    507506                ExceptionUtil.explainGoneForUnknownPrimitive(e),
    508507                tr("Object deleted"),
  • trunk/src/org/openstreetmap/josm/gui/ExtendedDialog.java

    r14121 r14153  
    6464 * <pre>
    6565 *  ExtendedDialog ed = new ExtendedDialog(
    66  *          Main.parent, tr("Dialog Title"),
     66 *          MainApplication.getMainFrame(), tr("Dialog Title"),
    6767 *          new String[] {tr("Ok"), tr("Cancel")});
    6868 *  ed.setButtonIcons(new String[] {"ok", "cancel"});   // optional
  • trunk/src/org/openstreetmap/josm/gui/MainApplication.java

    r14149 r14153  
    174174 * @author imi
    175175 */
     176@SuppressWarnings("deprecation")
    176177public class MainApplication extends Main {
    177178
     
    206207    static volatile ToolbarPreferences toolbar;
    207208
    208     private final MainFrame mainFrame;
     209    private static MainFrame mainFrame;
    209210
    210211    /**
     
    343344     */
    344345    public MainApplication(MainFrame mainFrame) {
    345         this.mainFrame = mainFrame;
     346        MainApplication.mainFrame = mainFrame;
    346347        getLayerManager().addLayerChangeListener(undoRedoCleaner);
    347348        ProjectionRegistry.setboundsProvider(mainBoundsProvider);
    348         Lifecycle.setShutdownSequence(new MainTermination(this));
     349        Lifecycle.setShutdownSequence(new MainTermination());
    349350    }
    350351
     
    359360    public static void askUpdateJava(String updVersion, String url, String eolDate, boolean major) {
    360361        ExtendedDialog ed = new ExtendedDialog(
    361                 Main.parent,
     362                mainFrame,
    362363                tr("Outdated Java version"),
    363364                tr("OK"), tr("Update Java"), tr("Cancel"));
     
    414415     * @since 14140
    415416     */
    416     public final MainFrame getMainFrame() {
     417    public static MainFrame getMainFrame() {
    417418        return mainFrame;
    418419    }
     
    13501351                if (!unsavedLayerFiles.isEmpty()) {
    13511352                    ExtendedDialog dialog = new ExtendedDialog(
    1352                             Main.parent,
     1353                            mainFrame,
    13531354                            tr("Unsaved osm data"),
    13541355                            tr("Restore"), tr("Cancel"), tr("Discard")
     
    13771378            if (hasErrors) {
    13781379                ExtendedDialog ed = new ExtendedDialog(
    1379                         Main.parent, title,
     1380                        mainFrame, title,
    13801381                        tr("Change proxy settings"), tr("Cancel"));
    13811382                ed.setButtonIcons("dialogs/settings", "cancel").setCancelButton(2);
     
    14351436                protected void realRun() throws SAXException, IOException, OsmTransferException {
    14361437                    // Wait for JOSM startup is advanced enough to load a file
    1437                     while (Main.parent == null || !Main.parent.isVisible()) {
     1438                    while (mainFrame == null || !mainFrame.isVisible()) {
    14381439                        try {
    14391440                            Thread.sleep(25);
  • trunk/src/org/openstreetmap/josm/gui/MainTermination.java

    r14149 r14153  
    66import java.io.IOException;
    77import java.nio.file.InvalidPathException;
    8 import java.util.Objects;
    98
    109import org.openstreetmap.josm.data.Preferences;
     
    1918public class MainTermination implements Runnable {
    2019
    21     private final MainApplication application;
    22 
    23     /**
    24      * Constructs a new {@code MainTermination}
    25      * @param application Main application. Must not be null
    26      */
    27     public MainTermination(MainApplication application) {
    28         this.application = Objects.requireNonNull(application);
    29     }
    30 
    3120    @Override
    3221    public void run() {
     
    3827        JCSCacheManager.shutdown();
    3928
    40         if (application.getMainFrame() != null) {
    41             application.getMainFrame().storeState();
     29        if (MainApplication.getMainFrame() != null) {
     30            MainApplication.getMainFrame().storeState();
    4231        }
    4332        if (MainApplication.getMap() != null) {
  • trunk/src/org/openstreetmap/josm/gui/MapStatus.java

    r13926 r14153  
    5959import javax.swing.event.PopupMenuListener;
    6060
    61 import org.openstreetmap.josm.Main;
    6261import org.openstreetmap.josm.data.SystemOfMeasurement;
    6362import org.openstreetmap.josm.data.SystemOfMeasurement.SoMChangeListener;
     
    252251            tr("The length of the new way segment being drawn."), 10, PROP_BACKGROUND_COLOR.get());
    253252    private final ImageLabel nameText = new ImageLabel("name",
    254             tr("The name of the object at the mouse pointer."), getNameLabelCharacterCount(Main.parent), PROP_BACKGROUND_COLOR.get());
     253            tr("The name of the object at the mouse pointer."),
     254            getNameLabelCharacterCount(MainApplication.getMainFrame()), PROP_BACKGROUND_COLOR.get());
    255255    private final JosmTextField helpText = new JosmTextField();
    256256    private final JProgressBar progressBar = new JProgressBar();
     
    957957            @Override
    958958            public void componentResized(ComponentEvent e) {
    959                 nameText.setCharCount(getNameLabelCharacterCount(Main.parent));
     959                nameText.setCharCount(getNameLabelCharacterCount(MainApplication.getMainFrame()));
    960960                revalidate();
    961961            }
  • trunk/src/org/openstreetmap/josm/gui/MenuScroller.java

    r12678 r14153  
    2828import javax.swing.event.PopupMenuListener;
    2929
    30 import org.openstreetmap.josm.Main;
    3130import org.openstreetmap.josm.gui.util.WindowGeometry;
    3231import org.openstreetmap.josm.tools.Logging;
     
    5857        if (menu != null) {
    5958            // Compute max height of current screen
    60             int maxHeight = WindowGeometry.getMaxDimensionOnScreen(menu).height - ((JFrame) Main.parent).getInsets().top;
     59            int maxHeight = WindowGeometry.getMaxDimensionOnScreen(menu).height - ((JFrame) MainApplication.getMainFrame()).getInsets().top;
    6160
    6261            // Remove top fixed part height
     
    313312            }
    314313
    315             int allowedHeight = WindowGeometry.getMaxDimensionOnScreen(menu).height - ((JFrame) Main.parent).getInsets().top;
     314            int allowedHeight = WindowGeometry.getMaxDimensionOnScreen(menu).height - ((JFrame) MainApplication.getMainFrame()).getInsets().top;
    316315
    317316            boolean mustSCroll = allItemsHeight > allowedHeight;
  • trunk/src/org/openstreetmap/josm/gui/NoteSortDialog.java

    r12620 r14153  
    2828    /**
    2929     * Construct a new dialog. The constructor automatically adds a "Cancel" button.
    30      * @param parent - Parent component. Usually Main.parent
     30     * @param parent - Parent component. Usually MainApplication.getMainFrame()
    3131     * @param title - Translated text to display in the title bar of the dialog
    3232     * @param buttonText - Translated text to be shown on the action button
  • trunk/src/org/openstreetmap/josm/gui/NotificationManager.java

    r12637 r14153  
    3636import javax.swing.Timer;
    3737
    38 import org.openstreetmap.josm.Main;
    3938import org.openstreetmap.josm.data.preferences.IntegerProperty;
    4039import org.openstreetmap.josm.gui.help.HelpBrowser;
     
    109108
    110109            int margin = 5;
    111             JFrame parentWindow = (JFrame) Main.parent;
     110            JFrame parentWindow = MainApplication.getMainFrame();
    112111            Dimension size = currentNotificationPanel.getPreferredSize();
    113112            if (parentWindow != null) {
     
    117116                if (MainApplication.isDisplayingMapView() && map.mapView.getHeight() > 0) {
    118117                    MapView mv = map.mapView;
    119                     Point mapViewPos = SwingUtilities.convertPoint(mv.getParent(), mv.getX(), mv.getY(), Main.parent);
     118                    Point mapViewPos = SwingUtilities.convertPoint(mv.getParent(), mv.getX(), mv.getY(), MainApplication.getMainFrame());
    120119                    x = mapViewPos.x + margin;
    121120                    y = mapViewPos.y + mv.getHeight() - map.statusLine.getHeight() - size.height - margin;
     
    152151        if (currentNotificationPanel != null) {
    153152            currentNotificationPanel.setVisible(false);
    154             JFrame parent = (JFrame) Main.parent;
     153            JFrame parent = MainApplication.getMainFrame();
    155154            if (parent != null) {
    156155                parent.getLayeredPane().remove(currentNotificationPanel);
  • trunk/src/org/openstreetmap/josm/gui/SplashScreen.java

    r12678 r14153  
    3232import javax.swing.event.ChangeListener;
    3333
    34 import org.openstreetmap.josm.Main;
    3534import org.openstreetmap.josm.data.Version;
    3635import org.openstreetmap.josm.gui.progress.ProgressMonitor;
     
    370369        @Override
    371370        public Component getWindowParent() {
    372             return Main.parent;
     371            return MainApplication.getMainFrame();
    373372        }
    374373    }
  • trunk/src/org/openstreetmap/josm/gui/bbox/SlippyMapBBoxChooser.java

    r13733 r14153  
    4040import org.openstreetmap.gui.jmapviewer.interfaces.TileSource;
    4141import org.openstreetmap.gui.jmapviewer.tilesources.OsmTileSource;
    42 import org.openstreetmap.josm.Main;
    4342import org.openstreetmap.josm.data.Bounds;
    4443import org.openstreetmap.josm.data.Version;
     
    102101                    Logging.warn(ex);
    103102                    if (ex.getMessage() != null && !ex.getMessage().isEmpty()) {
    104                         JOptionPane.showMessageDialog(Main.parent,
     103                        JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    105104                                ex.getMessage(), tr("Warning"),
    106105                                JOptionPane.WARNING_MESSAGE);
  • trunk/src/org/openstreetmap/josm/gui/bugreport/BugReportDialog.java

    r14119 r14153  
    55
    66import java.awt.Component;
    7 import java.awt.Frame;
    87import java.awt.GridBagConstraints;
    98import java.awt.GridBagLayout;
     
    2221import javax.swing.UIManager;
    2322
    24 import org.openstreetmap.josm.Main;
    2523import org.openstreetmap.josm.actions.ExpertToggleAction;
     24import org.openstreetmap.josm.gui.MainApplication;
    2625import org.openstreetmap.josm.gui.preferences.plugin.PluginPreference;
    2726import org.openstreetmap.josm.gui.util.GuiHelper;
     
    7877                errorPanel.add(new DebugTextDisplay(statusText));
    7978
    80                 JOptionPane.showMessageDialog(Main.parent, errorPanel, tr("You have encountered a bug in JOSM"),
     79                JOptionPane.showMessageDialog(MainApplication.getMainFrame(), errorPanel, tr("You have encountered a bug in JOSM"),
    8180                        JOptionPane.ERROR_MESSAGE);
    8281            });
     
    8988     */
    9089    public BugReportDialog(BugReport report) {
    91         super(findParent(), tr("You have encountered a bug in JOSM"));
     90        super(MainApplication.getMainFrame(), tr("You have encountered a bug in JOSM"));
    9291        this.report = report;
    9392        textPanel = new DebugTextDisplay(report);
     
    243242
    244243    /**
    245      * A safe way to find a matching parent frame.
    246      * @return The parent frame.
    247      */
    248     private static Frame findParent() {
    249         return (Frame) (Main.parent instanceof Frame ? Main.parent : SwingUtilities.getAncestorOfClass(Frame.class, Main.parent));
    250     }
    251 
    252     /**
    253244     * Show the bug report for a given exception
    254245     * @param e The exception to display
     
    260251        if (e.isOutOfMemory()) {
    261252            // do not translate the string, as translation may raise an exception
    262             JOptionPane.showMessageDialog(Main.parent, "JOSM is out of memory. " +
     253            JOptionPane.showMessageDialog(MainApplication.getMainFrame(), "JOSM is out of memory. " +
    263254                    "Strange things may happen.\nPlease restart JOSM with the -Xmx###M option,\n" +
    264255                    "where ### is the number of MB assigned to JOSM (e.g. 256).\n" +
     
    274265                    // Ask for restart to install new plugin
    275266                    PluginPreference.notifyDownloadResults(
    276                             Main.parent, downloadTask, !downloadTask.getDownloadedPlugins().isEmpty());
     267                            MainApplication.getMainFrame(), downloadTask, !downloadTask.getDownloadedPlugins().isEmpty());
    277268                    return SuppressionMode.NONE;
    278269                }
  • trunk/src/org/openstreetmap/josm/gui/conflict/pair/AbstractListMergeModel.java

    r12661 r14153  
    2828import javax.swing.table.TableModel;
    2929
    30 import org.openstreetmap.josm.Main;
    3130import org.openstreetmap.josm.command.conflict.ConflictResolveCommand;
    3231import org.openstreetmap.josm.data.conflict.Conflict;
     
    3635import org.openstreetmap.josm.data.osm.RelationMember;
    3736import org.openstreetmap.josm.gui.HelpAwareOptionPane;
     37import org.openstreetmap.josm.gui.MainApplication;
    3838import org.openstreetmap.josm.gui.help.HelpUtil;
    3939import org.openstreetmap.josm.gui.util.ChangeNotifier;
     
    382382          .append("</html>");
    383383        HelpAwareOptionPane.showOptionDialog(
    384                 Main.parent,
     384                MainApplication.getMainFrame(),
    385385                sb.toString(),
    386386                tr("Merging deleted objects failed"),
  • trunk/src/org/openstreetmap/josm/gui/conflict/tags/CombinePrimitiveResolverDialog.java

    r12940 r14153  
    3131import javax.swing.JSplitPane;
    3232
    33 import org.openstreetmap.josm.Main;
    3433import org.openstreetmap.josm.actions.ExpertToggleAction;
    3534import org.openstreetmap.josm.command.Command;
     
    4140import org.openstreetmap.josm.data.osm.Way;
    4241import org.openstreetmap.josm.gui.ConditionalOptionPaneUtil;
     42import org.openstreetmap.josm.gui.MainApplication;
    4343import org.openstreetmap.josm.gui.help.ContextSensitiveHelpAction;
    4444import org.openstreetmap.josm.gui.help.HelpUtil;
     
    6666 * Models have to be <strong>populated</strong> before the dialog is launched. Example:
    6767 * <pre>
    68  *    CombinePrimitiveResolverDialog dialog = new CombinePrimitiveResolverDialog(Main.parent);
     68 *    CombinePrimitiveResolverDialog dialog = new CombinePrimitiveResolverDialog(MainApplication.getMainFrame());
    6969 *    dialog.getTagConflictResolverModel().populate(aTagCollection);
    7070 *    dialog.getRelationMemberConflictResolverModel().populate(aRelationLinkCollection);
     
    370370            prepareGUIBeforeConflictResolutionStarts();
    371371            setMinimumSize(new Dimension(400, 400));
    372             new WindowGeometry(getClass().getName() + ".geometry", WindowGeometry.centerInWindow(Main.parent,
     372            new WindowGeometry(getClass().getName() + ".geometry", WindowGeometry.centerInWindow(MainApplication.getMainFrame(),
    373373                    new Dimension(800, 600))).applySafe(this);
    374374            setApplied(false);
     
    521521            UserCancelException canceled = GuiHelper.runInEDTAndWaitAndReturn(() -> {
    522522                // Build conflict resolution dialog
    523                 final CombinePrimitiveResolverDialog dialog = new CombinePrimitiveResolverDialog(Main.parent, tagModel, relModel);
     523                final CombinePrimitiveResolverDialog dialog = new CombinePrimitiveResolverDialog(
     524                        MainApplication.getMainFrame(), tagModel, relModel);
    524525
    525526                // Ensure a proper title is displayed instead of a previous target (fix #7925)
     
    580581        if (!ConditionalOptionPaneUtil.showConfirmationDialog(
    581582                "combine_tags",
    582                 Main.parent,
     583                MainApplication.getMainFrame(),
    583584                "<html>" + msg + "</html>",
    584585                tr("Combine confirmation"),
     
    614615        if (!ConditionalOptionPaneUtil.showConfirmationDialog(
    615616                "combine_tags",
    616                 Main.parent,
     617                MainApplication.getMainFrame(),
    617618                "<html>" + msg + "</html>",
    618619                tr("Combine confirmation"),
  • trunk/src/org/openstreetmap/josm/gui/datatransfer/importers/PrimitiveDataPaster.java

    r14134 r14153  
    1414import javax.swing.TransferHandler.TransferSupport;
    1515
    16 import org.openstreetmap.josm.Main;
    1716import org.openstreetmap.josm.command.AddPrimitivesCommand;
    1817import org.openstreetmap.josm.data.UndoRedoHandler;
     
    2625import org.openstreetmap.josm.data.projection.ProjectionRegistry;
    2726import org.openstreetmap.josm.gui.ExtendedDialog;
     27import org.openstreetmap.josm.gui.MainApplication;
    2828import org.openstreetmap.josm.gui.datatransfer.data.PrimitiveTransferData;
    2929import org.openstreetmap.josm.gui.layer.OsmDataLayer;
     
    137137
    138138    private static boolean confirmDeleteIncomplete() {
    139         ExtendedDialog ed = new ExtendedDialog(Main.parent, tr("Delete incomplete members?"),
     139        ExtendedDialog ed = new ExtendedDialog(MainApplication.getMainFrame(), tr("Delete incomplete members?"),
    140140                tr("Paste without incomplete members"), tr("Cancel"));
    141141        ed.setButtonIcons("dialogs/relation/deletemembers", "cancel");
  • trunk/src/org/openstreetmap/josm/gui/datatransfer/importers/PrimitiveTagTransferPaster.java

    r14143 r14153  
    1414import javax.swing.TransferHandler.TransferSupport;
    1515
    16 import org.openstreetmap.josm.Main;
    1716import org.openstreetmap.josm.command.ChangePropertyCommand;
    1817import org.openstreetmap.josm.command.Command;
     
    2524import org.openstreetmap.josm.data.osm.TagCollection;
    2625import org.openstreetmap.josm.data.osm.TagMap;
     26import org.openstreetmap.josm.gui.MainApplication;
    2727import org.openstreetmap.josm.gui.conflict.tags.PasteTagsConflictResolverDialog;
    2828import org.openstreetmap.josm.gui.datatransfer.data.PrimitiveTagTransferData;
     
    107107
    108108            if (!tc.isApplicableToPrimitive()) {
    109                 PasteTagsConflictResolverDialog dialog = new PasteTagsConflictResolverDialog(Main.parent);
     109                PasteTagsConflictResolverDialog dialog = new PasteTagsConflictResolverDialog(MainApplication.getMainFrame());
    110110                dialog.populate(tc, data.getStatistics(), getTargetStatistics());
    111111                dialog.setVisible(true);
     
    146146                }
    147147            } else {
    148                 PasteTagsConflictResolverDialog dialog = new PasteTagsConflictResolverDialog(Main.parent);
     148                PasteTagsConflictResolverDialog dialog = new PasteTagsConflictResolverDialog(MainApplication.getMainFrame());
    149149                dialog.populate(
    150150                        data.getForPrimitives(OsmPrimitiveType.NODE),
  • trunk/src/org/openstreetmap/josm/gui/datatransfer/importers/TextTagPaster.java

    r12683 r14153  
    1616import javax.swing.TransferHandler.TransferSupport;
    1717
    18 import org.openstreetmap.josm.Main;
    1918import org.openstreetmap.josm.gui.ExtendedDialog;
     19import org.openstreetmap.josm.gui.MainApplication;
    2020import org.openstreetmap.josm.gui.datatransfer.ClipboardUtils;
    2121import org.openstreetmap.josm.gui.help.HelpUtil;
     
    8585    public static int warning(String text, String data, String code) {
    8686        ExtendedDialog ed = new ExtendedDialog(
    87                     Main.parent,
     87                    MainApplication.getMainFrame(),
    8888                    tr("Do you want to paste these tags?"),
    8989                    tr("Ok"), tr("Cancel"), tr("Clear buffer"), tr("Ignore warnings"));
     
    118118
    119119        ExtendedDialog ed = new ExtendedDialog(
    120                     Main.parent,
     120                    MainApplication.getMainFrame(),
    121121                    tr("Warning"),
    122122                    tr("Ok"), tr("Clear buffer"))
  • trunk/src/org/openstreetmap/josm/gui/dialogs/ConflictDialog.java

    r14134 r14153  
    3636import javax.swing.event.PopupMenuListener;
    3737
    38 import org.openstreetmap.josm.Main;
    3938import org.openstreetmap.josm.actions.AbstractSelectAction;
    4039import org.openstreetmap.josm.actions.ExpertToggleAction;
     
    205204
    206205            Conflict<? extends OsmPrimitive> c = conflicts.get(index);
    207             ConflictResolutionDialog dialog = new ConflictResolutionDialog(Main.parent);
     206            ConflictResolutionDialog dialog = new ConflictResolutionDialog(MainApplication.getMainFrame());
    208207            dialog.getConflictResolver().populate(c);
    209208            dialog.showDialog();
     
    627626            GuiHelper.runInEDT(() -> {
    628627                HelpAwareOptionPane.showOptionDialog(
    629                         Main.parent,
     628                        MainApplication.getMainFrame(),
    630629                        sb.toString(),
    631630                        tr("Conflicts detected"),
  • trunk/src/org/openstreetmap/josm/gui/dialogs/ConflictResolutionDialog.java

    r14134 r14153  
    1717import javax.swing.JPanel;
    1818
    19 import org.openstreetmap.josm.Main;
    2019import org.openstreetmap.josm.data.UndoRedoHandler;
    2120import org.openstreetmap.josm.data.osm.DefaultNameFormatter;
    2221import org.openstreetmap.josm.data.osm.OsmPrimitive;
    2322import org.openstreetmap.josm.gui.ExtendedDialog;
     23import org.openstreetmap.josm.gui.MainApplication;
    2424import org.openstreetmap.josm.gui.conflict.pair.ConflictResolver;
    2525import org.openstreetmap.josm.gui.help.HelpBrowser;
     
    180180                        tr("Close anyway"),
    181181                        tr("Continue resolving")};
    182                 int ret = JOptionPane.showOptionDialog(Main.parent,
     182                int ret = JOptionPane.showOptionDialog(MainApplication.getMainFrame(),
    183183                        tr("<html>You did not finish to merge the differences in this conflict.<br>"
    184184                                + "Conflict resolutions will not be applied unless all differences<br>"
  • trunk/src/org/openstreetmap/josm/gui/dialogs/DeleteFromRelationConfirmationDialog.java

    r13564 r14153  
    3232import javax.swing.table.TableColumn;
    3333
    34 import org.openstreetmap.josm.Main;
    3534import org.openstreetmap.josm.data.osm.DefaultNameFormatter;
    3635import org.openstreetmap.josm.data.osm.NameFormatter;
    3736import org.openstreetmap.josm.data.osm.OsmPrimitive;
    3837import org.openstreetmap.josm.data.osm.RelationToChildReference;
     38import org.openstreetmap.josm.gui.MainApplication;
    3939import org.openstreetmap.josm.gui.PrimitiveRenderer;
    4040import org.openstreetmap.josm.gui.help.ContextSensitiveHelpAction;
     
    132132     */
    133133    public DeleteFromRelationConfirmationDialog() {
    134         super(GuiHelper.getFrameForComponent(Main.parent), "", ModalityType.DOCUMENT_MODAL);
     134        super(GuiHelper.getFrameForComponent(MainApplication.getMainFrame()), "", ModalityType.DOCUMENT_MODAL);
    135135        build();
    136136    }
     
    164164                    getClass().getName() + ".geometry",
    165165                    WindowGeometry.centerInWindow(
    166                             Main.parent,
     166                            MainApplication.getMainFrame(),
    167167                            new Dimension(400, 200)
    168168                    )
  • trunk/src/org/openstreetmap/josm/gui/dialogs/InspectPrimitiveDialog.java

    r13949 r14153  
    2121import javax.swing.SingleSelectionModel;
    2222
    23 import org.openstreetmap.josm.Main;
    2423import org.openstreetmap.josm.data.osm.DefaultNameFormatter;
    2524import org.openstreetmap.josm.data.osm.IPrimitive;
     
    6362     */
    6463    public InspectPrimitiveDialog(final Collection<? extends IPrimitive> primitives, OsmData<?, ?, ?, ?> data) {
    65         super(Main.parent, tr("Advanced object info"), tr("Close"));
     64        super(MainApplication.getMainFrame(), tr("Advanced object info"), tr("Close"));
    6665        this.primitives = new ArrayList<>(primitives);
    6766        setRememberWindowGeometry(getClass().getName() + ".geometry",
    68                 WindowGeometry.centerInWindow(Main.parent, new Dimension(750, 550)));
     67                WindowGeometry.centerInWindow(MainApplication.getMainFrame(), new Dimension(750, 550)));
    6968
    7069        setButtonIcons("ok");
  • trunk/src/org/openstreetmap/josm/gui/dialogs/LayerListPopup.java

    r13130 r14153  
    1919import javax.swing.JPopupMenu;
    2020
    21 import org.openstreetmap.josm.Main;
    2221import org.openstreetmap.josm.gui.ExtendedDialog;
     22import org.openstreetmap.josm.gui.MainApplication;
    2323import org.openstreetmap.josm.gui.layer.Layer;
    2424import org.openstreetmap.josm.gui.layer.Layer.LayerAction;
     
    5555            if (object instanceof Component) {
    5656                ExtendedDialog ed = new ExtendedDialog(
    57                         Main.parent, tr("Information about layer"),
     57                        MainApplication.getMainFrame(), tr("Information about layer"),
    5858                        tr("OK"));
    5959                ed.setButtonIcons("ok");
     
    6565            } else {
    6666                JOptionPane.showMessageDialog(
    67                         Main.parent, object,
     67                        MainApplication.getMainFrame(), object,
    6868                        tr("Information about layer"),
    6969                        JOptionPane.INFORMATION_MESSAGE
  • trunk/src/org/openstreetmap/josm/gui/dialogs/LogShowDialog.java

    r12279 r14153  
    1111import javax.swing.JScrollPane;
    1212
    13 import org.openstreetmap.josm.Main;
    1413import org.openstreetmap.josm.gui.ExtendedDialog;
     14import org.openstreetmap.josm.gui.MainApplication;
    1515import org.openstreetmap.josm.gui.widgets.JosmEditorPane;
    1616import org.openstreetmap.josm.tools.GBC;
     
    3030     */
    3131    public LogShowDialog(String title, String msg, String log) {
    32         super(Main.parent, title, tr("OK"));
     32        super(MainApplication.getMainFrame(), title, tr("OK"));
    3333        setButtonIcons("ok");
    3434        setContent(build(msg, log));
  • trunk/src/org/openstreetmap/josm/gui/dialogs/MapPaintDialog.java

    r13647 r14153  
    5252import javax.swing.table.TableCellRenderer;
    5353
    54 import org.openstreetmap.josm.Main;
    5554import org.openstreetmap.josm.actions.ExtensionFileFilter;
    5655import org.openstreetmap.josm.actions.JosmAction;
     
    539538                return;
    540539            final StyleSource s = model.getRow(sel);
    541             ExtendedDialog info = new ExtendedDialog(Main.parent, tr("Map Style info"), tr("Close"));
     540            ExtendedDialog info = new ExtendedDialog(MainApplication.getMainFrame(), tr("Map Style info"), tr("Close"));
    542541            info.setPreferredSize(new Dimension(600, 400));
    543542            info.setButtonIcons("ok");
  • trunk/src/org/openstreetmap/josm/gui/dialogs/MenuItemSearchDialog.java

    r13134 r14153  
    1414import javax.swing.ListCellRenderer;
    1515
    16 import org.openstreetmap.josm.Main;
    1716import org.openstreetmap.josm.actions.JosmAction;
    1817import org.openstreetmap.josm.gui.ExtendedDialog;
     
    3130
    3231    private MenuItemSearchDialog(MainMenu menu) {
    33         super(Main.parent, tr("Search menu items"), tr("Select"), tr("Cancel"));
     32        super(MainApplication.getMainFrame(), tr("Search menu items"), tr("Select"), tr("Cancel"));
    3433        this.selector = new MenuItemSelector(menu);
    3534        this.selector.setDblClickListener(e -> buttonAction(0, null));
  • trunk/src/org/openstreetmap/josm/gui/dialogs/NotesDialog.java

    r14119 r14153  
    2828import javax.swing.SwingUtilities;
    2929
    30 import org.openstreetmap.josm.Main;
    3130import org.openstreetmap.josm.actions.DownloadNotesInViewAction;
    3231import org.openstreetmap.josm.actions.UploadNotesAction;
     
    320319                return;
    321320            }
    322             NoteInputDialog dialog = new NoteInputDialog(Main.parent, tr("Comment on note"), tr("Add comment"));
     321            NoteInputDialog dialog = new NoteInputDialog(MainApplication.getMainFrame(), tr("Comment on note"), tr("Add comment"));
    323322            dialog.showNoteDialog(tr("Add comment to note:"), ImageProvider.get("dialogs/notes", "note_comment"));
    324323            if (dialog.getValue() != 1) {
     
    344343        @Override
    345344        public void actionPerformed(ActionEvent e) {
    346             NoteInputDialog dialog = new NoteInputDialog(Main.parent, tr("Close note"), tr("Close note"));
     345            NoteInputDialog dialog = new NoteInputDialog(MainApplication.getMainFrame(), tr("Close note"), tr("Close note"));
    347346            dialog.showNoteDialog(tr("Close note with message:"), ImageProvider.get("dialogs/notes", "note_closed"));
    348347            if (dialog.getValue() != 1) {
     
    389388        @Override
    390389        public void actionPerformed(ActionEvent e) {
    391             NoteInputDialog dialog = new NoteInputDialog(Main.parent, tr("Reopen note"), tr("Reopen note"));
     390            NoteInputDialog dialog = new NoteInputDialog(MainApplication.getMainFrame(), tr("Reopen note"), tr("Reopen note"));
    392391            dialog.showNoteDialog(tr("Reopen note with message:"), ImageProvider.get("dialogs/notes", "note_open"));
    393392            if (dialog.getValue() != 1) {
     
    415414        @Override
    416415        public void actionPerformed(ActionEvent e) {
    417             NoteSortDialog sortDialog = new NoteSortDialog(Main.parent, tr("Sort notes"), tr("Apply"));
     416            NoteSortDialog sortDialog = new NoteSortDialog(MainApplication.getMainFrame(), tr("Sort notes"), tr("Apply"));
    418417            sortDialog.showSortDialog(noteData.getCurrentSortMethod());
    419418            if (sortDialog.getValue() == 1) {
  • trunk/src/org/openstreetmap/josm/gui/dialogs/ToggleDialog.java

    r14143 r14153  
    4848import javax.swing.SwingUtilities;
    4949
    50 import org.openstreetmap.josm.Main;
    5150import org.openstreetmap.josm.actions.JosmAction;
    5251import org.openstreetmap.josm.data.preferences.BooleanProperty;
     
    569568                pref.setBorder(BorderFactory.createEmptyBorder());
    570569                pref.addActionListener(e -> {
    571                     final PreferenceDialog p = new PreferenceDialog(Main.parent);
     570                    final PreferenceDialog p = new PreferenceDialog(MainApplication.getMainFrame());
    572571                    if (TabPreferenceSetting.class.isAssignableFrom(preferenceClass)) {
    573572                        p.selectPreferencesTabByClass((Class<? extends TabPreferenceSetting>) preferenceClass);
     
    677676    private class DetachedDialog extends JDialog {
    678677        DetachedDialog() {
    679             super(GuiHelper.getFrameForComponent(Main.parent));
     678            super(GuiHelper.getFrameForComponent(MainApplication.getMainFrame()));
    680679            getContentPane().add(ToggleDialog.this);
    681680            addWindowListener(new WindowAdapter() {
     
    714713                ToggleDialog.this.setPreferredSize(ToggleDialog.this.getDefaultDetachedSize());
    715714                pack();
    716                 setLocationRelativeTo(Main.parent);
     715                setLocationRelativeTo(MainApplication.getMainFrame());
    717716            }
    718717            super.setTitle(titleBar.getTitle());
  • trunk/src/org/openstreetmap/josm/gui/dialogs/ValidatorDialog.java

    r14134 r14153  
    2929import javax.swing.tree.TreePath;
    3030
    31 import org.openstreetmap.josm.Main;
    3231import org.openstreetmap.josm.actions.AbstractSelectAction;
    3332import org.openstreetmap.josm.actions.AutoScaleAction;
     
    251250                if (asked == JOptionPane.DEFAULT_OPTION) {
    252251                    String[] a = new String[] {tr("Whole group"), tr("Single elements"), tr("Nothing")};
    253                     asked = JOptionPane.showOptionDialog(Main.parent, tr("Ignore whole group or individual elements?"),
     252                    asked = JOptionPane.showOptionDialog(MainApplication.getMainFrame(), tr("Ignore whole group or individual elements?"),
    254253                            tr("Ignoring elements"), JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.WARNING_MESSAGE, null,
    255254                            a, a[1]);
  • trunk/src/org/openstreetmap/josm/gui/dialogs/layer/LayerVisibilityAction.java

    r13849 r14153  
    3434import javax.swing.border.Border;
    3535
    36 import org.openstreetmap.josm.Main;
     36import org.openstreetmap.josm.gui.MainApplication;
    3737import org.openstreetmap.josm.gui.SideButton;
    3838import org.openstreetmap.josm.gui.dialogs.IEnabledStateUpdating;
     
    117117            // Action can be trigger either by opacity button or by popup menu (in case toggle buttons are hidden).
    118118            // In that case, show it in the middle of screen (because opacityButton is not visible)
    119             popup.show(Main.parent, Main.parent.getWidth() / 2, (Main.parent.getHeight() - popup.getHeight()) / 2);
     119            popup.show(MainApplication.getMainFrame(),
     120                    MainApplication.getMainFrame().getWidth() / 2,
     121                    (MainApplication.getMainFrame().getHeight() - popup.getHeight()) / 2);
    120122        }
    121123    }
  • trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PropertiesDialog.java

    r14143 r14153  
    4848import javax.swing.table.TableRowSorter;
    4949
    50 import org.openstreetmap.josm.Main;
    5150import org.openstreetmap.josm.actions.JosmAction;
    5251import org.openstreetmap.josm.actions.relation.DownloadMembersAction;
     
    10291028            }
    10301029
    1031             ExtendedDialog ed = new ExtendedDialog(Main.parent,
     1030            ExtendedDialog ed = new ExtendedDialog(MainApplication.getMainFrame(),
    10321031                    tr("Change relation"),
    10331032                    tr("Delete from relation"), tr("Cancel"));
  • trunk/src/org/openstreetmap/josm/gui/dialogs/properties/SearchBasedRowFilter.java

    r12656 r14153  
    2727
    2828    @Override
    29     public boolean include(Entry entry) {
     29    public boolean include(Entry<? extends TableModel, ? extends Integer> entry) {
    3030        final String key = entry.getStringValue(0);
    3131        final String value = entry.getStringValue(1);
  • trunk/src/org/openstreetmap/josm/gui/dialogs/properties/TagEditHelper.java

    r14143 r14153  
    6262import javax.swing.text.JTextComponent;
    6363
    64 import org.openstreetmap.josm.Main;
    6564import org.openstreetmap.josm.actions.JosmAction;
    6665import org.openstreetmap.josm.actions.search.SearchAction;
     
    8382import org.openstreetmap.josm.gui.ExtendedDialog;
    8483import org.openstreetmap.josm.gui.IExtendedDialog;
     84import org.openstreetmap.josm.gui.MainApplication;
    8585import org.openstreetmap.josm.gui.datatransfer.ClipboardUtils;
    8686import org.openstreetmap.josm.gui.mappaint.MapPaintStyles;
     
    351351        Logging.warn(parseError);
    352352        JOptionPane.showMessageDialog(
    353                 Main.parent,
     353                MainApplication.getMainFrame(),
    354354                parseError.getMessage(),
    355355                tr("Error"),
     
    383383    private static boolean warnOverwriteKey(String action, String togglePref) {
    384384        return new ExtendedDialog(
    385                 Main.parent,
     385                MainApplication.getMainFrame(),
    386386                tr("Overwrite key"),
    387387                tr("Replace"), tr("Cancel"))
     
    420420
    421421        protected EditTagDialog(String key, Map<String, Integer> map, final boolean initialFocusOnKey) {
    422             super(Main.parent, trn("Change value?", "Change values?", map.size()), tr("OK"), tr("Cancel"));
     422            super(MainApplication.getMainFrame(), trn("Change value?", "Change values?", map.size()), tr("OK"), tr("Cancel"));
    423423            setButtonIcons("ok", "cancel");
    424424            setCancelButton(2);
     
    576576
    577577            setRememberWindowGeometry(getClass().getName() + ".geometry",
    578                 WindowGeometry.centerInWindow(Main.parent, size));
     578                WindowGeometry.centerInWindow(MainApplication.getMainFrame(), size));
    579579        }
    580580
     
    688688
    689689        protected AddTagsDialog() {
    690             super(Main.parent, tr("Add value?"), tr("OK"), tr("Cancel"));
     690            super(MainApplication.getMainFrame(), tr("Add value?"), tr("OK"), tr("Cancel"));
    691691            setButtonIcons("ok", "cancel");
    692692            setCancelButton(2);
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/ChildRelationBrowser.java

    r13761 r14153  
    3030import javax.swing.tree.TreePath;
    3131
    32 import org.openstreetmap.josm.Main;
    3332import org.openstreetmap.josm.data.osm.DataSet;
    3433import org.openstreetmap.josm.data.osm.DataSetMerger;
     
    335334            if (conflictsCount > 0) {
    336335                JOptionPane.showMessageDialog(
    337                         Main.parent,
     336                        MainApplication.getMainFrame(),
    338337                        trn("There was {0} conflict during import.",
    339338                                "There were {0} conflicts during import.",
     
    374373
    375374            JOptionPane.showMessageDialog(
    376                     Main.parent,
     375                    MainApplication.getMainFrame(),
    377376                    message,
    378377                    tr("Relation is deleted"),
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/GenericRelationEditor.java

    r14056 r14153  
    4949import javax.swing.KeyStroke;
    5050
    51 import org.openstreetmap.josm.Main;
    5251import org.openstreetmap.josm.actions.JosmAction;
    5352import org.openstreetmap.josm.command.ChangeCommand;
     
    182181
    183182        setRememberWindowGeometry(getClass().getName() + ".geometry",
    184                 WindowGeometry.centerInWindow(Main.parent, new Dimension(700, 650)));
     183                WindowGeometry.centerInWindow(MainApplication.getMainFrame(), new Dimension(700, 650)));
    185184
    186185        final TaggingPresetHandler presetHandler = new TaggingPresetHandler() {
     
    780779            int ret = ConditionalOptionPaneUtil.showOptionDialog(
    781780                    "clean_relation_self_references",
    782                     Main.parent,
     781                    MainApplication.getMainFrame(),
    783782                    tr("<html>There is at least one member in this relation referring<br>"
    784783                            + "to the relation itself.<br>"
     
    853852        int ret = ConditionalOptionPaneUtil.showOptionDialog(
    854853                "add_primitive_to_relation",
    855                 Main.parent,
     854                MainApplication.getMainFrame(),
    856855                msg,
    857856                tr("Multiple members referring to same object."),
     
    885884                Utils.escapeReservedCharactersHTML(primitive.getDisplayName(DefaultNameFormatter.getInstance())));
    886885        JOptionPane.showMessageDialog(
    887                 Main.parent,
     886                MainApplication.getMainFrame(),
    888887                msg,
    889888                tr("Warning"),
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/ParentRelationLoadingTask.java

    r13654 r14153  
    1212import javax.swing.SwingUtilities;
    1313
    14 import org.openstreetmap.josm.Main;
    1514import org.openstreetmap.josm.data.osm.DataSet;
    1615import org.openstreetmap.josm.data.osm.DataSetMerger;
    1716import org.openstreetmap.josm.data.osm.Relation;
     17import org.openstreetmap.josm.gui.MainApplication;
    1818import org.openstreetmap.josm.gui.PleaseWaitRunnable;
    1919import org.openstreetmap.josm.gui.layer.OsmDataLayer;
     
    131131    protected void showLastException() {
    132132        JOptionPane.showMessageDialog(
    133                 Main.parent,
     133                MainApplication.getMainFrame(),
    134134                Optional.ofNullable(lastException.getMessage()).orElseGet(lastException::toString),
    135135                tr("Error"),
     
    174174                getLayer().getConflicts().add(visitor.getConflicts());
    175175                JOptionPane.showMessageDialog(
    176                         Main.parent,
     176                        MainApplication.getMainFrame(),
    177177                        tr("There were {0} conflicts during import.",
    178178                                visitor.getConflicts().size()),
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/RelationEditor.java

    r14029 r14153  
    88import java.util.Collection;
    99
    10 import org.openstreetmap.josm.Main;
    1110import org.openstreetmap.josm.data.osm.Relation;
    1211import org.openstreetmap.josm.data.osm.RelationMember;
    1312import org.openstreetmap.josm.gui.ExtendedDialog;
     13import org.openstreetmap.josm.gui.MainApplication;
    1414import org.openstreetmap.josm.gui.layer.OsmDataLayer;
    1515import org.openstreetmap.josm.tools.CheckParameterUtil;
     
    5252     */
    5353    protected RelationEditor(OsmDataLayer layer, Relation relation) {
    54         super(Main.parent,
     54        super(MainApplication.getMainFrame(),
    5555                "",
    5656                new String[] {tr("Apply Changes"), tr("Cancel")},
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/actions/CancelAction.java

    r14030 r14153  
    99import javax.swing.RootPaneContainer;
    1010
    11 import org.openstreetmap.josm.Main;
    1211import org.openstreetmap.josm.data.osm.Relation;
    1312import org.openstreetmap.josm.gui.HelpAwareOptionPane;
    1413import org.openstreetmap.josm.gui.HelpAwareOptionPane.ButtonSpec;
     14import org.openstreetmap.josm.gui.MainApplication;
    1515import org.openstreetmap.josm.spi.preferences.Config;
    1616import org.openstreetmap.josm.tools.ImageProvider;
     
    8383
    8484        return HelpAwareOptionPane.showOptionDialog(
    85                 Main.parent,
     85                MainApplication.getMainFrame(),
    8686                tr("<html>The relation has been changed.<br><br>Do you want to save your changes?</html>"),
    8787                        tr("Unsaved changes"),
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/actions/RefreshAction.java

    r14138 r14153  
    1111import javax.swing.JRootPane;
    1212
    13 import org.openstreetmap.josm.Main;
    1413import org.openstreetmap.josm.data.UndoRedoHandler;
    1514import org.openstreetmap.josm.data.UndoRedoHandler.CommandQueueListener;
     
    1716import org.openstreetmap.josm.gui.HelpAwareOptionPane;
    1817import org.openstreetmap.josm.gui.HelpAwareOptionPane.ButtonSpec;
     18import org.openstreetmap.josm.gui.MainApplication;
    1919import org.openstreetmap.josm.gui.dialogs.relation.IRelationEditor;
    2020import org.openstreetmap.josm.tools.ImageProvider;
     
    9494
    9595        return HelpAwareOptionPane.showOptionDialog(
    96                 Main.parent,
     96                MainApplication.getMainFrame(),
    9797                tr("<html>You have unsaved changes in this editor window.<br>"+
    9898                   "<br>Do you want to discard these changes and reload data from layer?</html>"),
     
    123123
    124124        return HelpAwareOptionPane.showOptionDialog(
    125                 Main.parent,
     125                MainApplication.getMainFrame(),
    126126                tr("<html>Relation has been deleted outside editor.<br><br>Do you want to close this window?</html>"),
    127127                        tr("Deleted relation"),
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/actions/SavingAction.java

    r14134 r14153  
    1111import javax.swing.SwingUtilities;
    1212
    13 import org.openstreetmap.josm.Main;
    1413import org.openstreetmap.josm.command.AddCommand;
    1514import org.openstreetmap.josm.command.ChangeCommand;
     
    6261            String msg = tr("One or more members of this new relation have been deleted while the relation editor\n" +
    6362            "was open. They have been removed from the relation members list.");
    64             JOptionPane.showMessageDialog(Main.parent, msg, tr("Warning"), JOptionPane.WARNING_MESSAGE);
     63            JOptionPane.showMessageDialog(MainApplication.getMainFrame(), msg, tr("Warning"), JOptionPane.WARNING_MESSAGE);
    6564        }
    6665        // If the user wanted to create a new relation, but hasn't added any members or
     
    124123
    125124        int ret = HelpAwareOptionPane.showOptionDialog(
    126                 Main.parent,
     125                MainApplication.getMainFrame(),
    127126                tr("<html>This relation has been changed outside of the editor.<br>"
    128127                        + "You cannot apply your changes and continue editing.<br>"
     
    144143    protected void warnDoubleConflict() {
    145144        JOptionPane.showMessageDialog(
    146                 Main.parent,
     145                MainApplication.getMainFrame(),
    147146                tr("<html>Layer ''{0}'' already has a conflict for object<br>"
    148147                        + "''{1}''.<br>"
  • trunk/src/org/openstreetmap/josm/gui/dialogs/relation/actions/SetRoleAction.java

    r14030 r14153  
    1111import javax.swing.event.DocumentListener;
    1212
    13 import org.openstreetmap.josm.Main;
    1413import org.openstreetmap.josm.gui.ConditionalOptionPaneUtil;
     14import org.openstreetmap.josm.gui.MainApplication;
    1515import org.openstreetmap.josm.gui.tagging.ac.AutoCompletingTextField;
    1616import org.openstreetmap.josm.tools.ImageProvider;
     
    6161        int ret = ConditionalOptionPaneUtil.showOptionDialog(
    6262                "relation_editor.confirm_applying_empty_role",
    63                 Main.parent,
     63                MainApplication.getMainFrame(),
    6464                message,
    6565                tr("Confirm empty role"),
  • trunk/src/org/openstreetmap/josm/gui/download/BookmarkSelection.java

    r13130 r14153  
    2222import javax.swing.event.ListSelectionListener;
    2323
    24 import org.openstreetmap.josm.Main;
    2524import org.openstreetmap.josm.data.Bounds;
    2625import org.openstreetmap.josm.data.UserIdentityManager;
     26import org.openstreetmap.josm.gui.MainApplication;
    2727import org.openstreetmap.josm.gui.download.BookmarkList.Bookmark;
    2828import org.openstreetmap.josm.gui.widgets.JMultilineLabel;
     
    188188            if (currentArea == null) {
    189189                JOptionPane.showMessageDialog(
    190                         Main.parent,
     190                        MainApplication.getMainFrame(),
    191191                        tr("Currently, there is no download area selected. Please select an area first."),
    192192                        tr("Information"),
     
    198198            b.setName(
    199199                    JOptionPane.showInputDialog(
    200                             Main.parent, tr("Please enter a name for the bookmarked download area."),
     200                            MainApplication.getMainFrame(), tr("Please enter a name for the bookmarked download area."),
    201201                            tr("Name of location"),
    202202                            JOptionPane.QUESTION_MESSAGE)
     
    259259            Object value =
    260260                JOptionPane.showInputDialog(
    261                         Main.parent, tr("Please enter a name for the bookmarked download area."),
     261                        MainApplication.getMainFrame(), tr("Please enter a name for the bookmarked download area."),
    262262                        tr("Name of location"),
    263263                        JOptionPane.QUESTION_MESSAGE,
  • trunk/src/org/openstreetmap/josm/gui/download/DownloadDialog.java

    r14121 r14153  
    3535import javax.swing.event.ChangeListener;
    3636
    37 import org.openstreetmap.josm.Main;
    3837import org.openstreetmap.josm.actions.ExpertToggleAction;
    3938import org.openstreetmap.josm.data.Bounds;
     
    8180    public static synchronized DownloadDialog getInstance() {
    8281        if (instance == null) {
    83             instance = new DownloadDialog(Main.parent);
     82            instance = new DownloadDialog(MainApplication.getMainFrame());
    8483        }
    8584        return instance;
  • trunk/src/org/openstreetmap/josm/gui/download/DownloadObjectDialog.java

    r14121 r14153  
    1111import javax.swing.JCheckBox;
    1212
    13 import org.openstreetmap.josm.Main;
    1413import org.openstreetmap.josm.data.osm.OsmPrimitiveType;
     14import org.openstreetmap.josm.gui.MainApplication;
    1515import org.openstreetmap.josm.gui.dialogs.OsmIdSelectionDialog;
    1616import org.openstreetmap.josm.io.NetworkManager;
     
    3131
    3232    /**
    33      * Constructs a new DownloadObjectDialog with Main.parent as parent component.
     33     * Constructs a new DownloadObjectDialog with MainApplication.getMainFrame() as parent component.
    3434     */
    3535    public DownloadObjectDialog() {
    36         this(Main.parent);
     36        this(MainApplication.getMainFrame());
    3737    }
    3838
  • trunk/src/org/openstreetmap/josm/gui/download/PlaceSelection.java

    r13761 r14153  
    4343import javax.xml.parsers.ParserConfigurationException;
    4444
    45 import org.openstreetmap.josm.Main;
    4645import org.openstreetmap.josm.data.Bounds;
    4746import org.openstreetmap.josm.gui.ExceptionDialogUtil;
     
    272271                    Logging.log(Logging.LEVEL_WARN, tr("Error occured with query ''{0}'': ''{1}''", urlString, e.getMessage()), e);
    273272                    GuiHelper.runInEDTAndWait(() -> HelpAwareOptionPane.showOptionDialog(
    274                             Main.parent,
     273                            MainApplication.getMainFrame(),
    275274                            tr("Name server returned invalid data. Please try again."),
    276275                            tr("Bad response"),
  • trunk/src/org/openstreetmap/josm/gui/help/HelpBrowser.java

    r13844 r14153  
    4444import javax.swing.text.html.StyleSheet;
    4545
    46 import org.openstreetmap.josm.Main;
    4746import org.openstreetmap.josm.actions.JosmAction;
    4847import org.openstreetmap.josm.gui.HelpAwareOptionPane;
     
    384383                Logging.warn(e);
    385384                HelpAwareOptionPane.showOptionDialog(
    386                         Main.parent,
     385                        MainApplication.getMainFrame(),
    387386                        tr(
    388387                                "<html>Failed to open help page for url {0}.<br>"
     
    469468                if (!GraphicsEnvironment.isHeadless()) {
    470469                    JOptionPane.showMessageDialog(
    471                             Main.parent,
     470                            MainApplication.getMainFrame(),
    472471                            message,
    473472                            tr("Warning"),
  • trunk/src/org/openstreetmap/josm/gui/history/HistoryBrowserDialog.java

    r12634 r14153  
    1818import javax.swing.JPanel;
    1919
    20 import org.openstreetmap.josm.Main;
    2120import org.openstreetmap.josm.data.osm.PrimitiveId;
    2221import org.openstreetmap.josm.data.osm.history.History;
     
    4847     */
    4948    public HistoryBrowserDialog(History history) {
    50         super(GuiHelper.getFrameForComponent(Main.parent), false);
     49        super(GuiHelper.getFrameForComponent(MainApplication.getMainFrame()), false);
    5150        build();
    5251        setHistory(history);
  • trunk/src/org/openstreetmap/josm/gui/history/HistoryBrowserDialogManager.java

    r13974 r14153  
    1919import javax.swing.SwingUtilities;
    2020
    21 import org.openstreetmap.josm.Main;
    2221import org.openstreetmap.josm.data.osm.PrimitiveId;
    2322import org.openstreetmap.josm.data.osm.history.History;
     
    225224        if (notNewPrimitives.isEmpty()) {
    226225            JOptionPane.showMessageDialog(
    227                     Main.parent,
     226                    MainApplication.getMainFrame(),
    228227                    tr("Please select at least one already uploaded node, way, or relation."),
    229228                    tr("Warning"),
  • trunk/src/org/openstreetmap/josm/gui/io/AbstractUploadTask.java

    r13842 r14153  
    1717import javax.swing.JOptionPane;
    1818
    19 import org.openstreetmap.josm.Main;
    2019import org.openstreetmap.josm.actions.DownloadReferrersAction;
    2120import org.openstreetmap.josm.actions.UpdateDataAction;
     
    155154        );
    156155        int ret = HelpAwareOptionPane.showOptionDialog(
    157                 Main.parent,
     156                MainApplication.getMainFrame(),
    158157                msg,
    159158                tr("Conflicts detected"),
     
    195194        );
    196195        int ret = HelpAwareOptionPane.showOptionDialog(
    197                 Main.parent,
     196                MainApplication.getMainFrame(),
    198197                msg,
    199198                tr("Conflicts detected"),
     
    222221        );
    223222        JOptionPane.showMessageDialog(
    224                 Main.parent,
     223                MainApplication.getMainFrame(),
    225224                msg,
    226225                tr("Changeset closed"),
     
    255254                options[0].text)) + "</html>";
    256255        int ret = HelpAwareOptionPane.showOptionDialog(
    257                 Main.parent,
     256                MainApplication.getMainFrame(),
    258257                msg,
    259258                tr("Object still in use"),
  • trunk/src/org/openstreetmap/josm/gui/io/AsynchronousUploadPrimitivesTask.java

    r14134 r14153  
    8787            if (asynchronousUploadPrimitivesTask != null) {
    8888                GuiHelper.runInEDTAndWait(() ->
    89                         JOptionPane.showMessageDialog(MainApplication.parent,
     89                        JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    9090                                tr("A background upload is already in progress. " +
    9191                                        "Kindly wait for it to finish before uploading new changes")));
  • trunk/src/org/openstreetmap/josm/gui/io/CloseChangesetDialog.java

    r13130 r14153  
    2525import javax.swing.event.ListSelectionListener;
    2626
    27 import org.openstreetmap.josm.Main;
    2827import org.openstreetmap.josm.data.osm.Changeset;
     28import org.openstreetmap.josm.gui.MainApplication;
    2929import org.openstreetmap.josm.gui.SideButton;
    3030import org.openstreetmap.josm.gui.util.GuiHelper;
     
    9797            new WindowGeometry(
    9898                    getClass().getName() + ".geometry",
    99                     WindowGeometry.centerInWindow(Main.parent, new Dimension(300, 300))
     99                    WindowGeometry.centerInWindow(MainApplication.getMainFrame(), new Dimension(300, 300))
    100100            ).applySafe(this);
    101101        } else if (isShowing()) { // Avoid IllegalComponentStateException like in #8775
     
    109109     */
    110110    public CloseChangesetDialog() {
    111         super(GuiHelper.getFrameForComponent(Main.parent), ModalityType.DOCUMENT_MODAL);
     111        super(GuiHelper.getFrameForComponent(MainApplication.getMainFrame()), ModalityType.DOCUMENT_MODAL);
    112112        build();
    113113    }
  • trunk/src/org/openstreetmap/josm/gui/io/CredentialDialog.java

    r13849 r14153  
    3030import javax.swing.JTextField;
    3131
    32 import org.openstreetmap.josm.Main;
     32import org.openstreetmap.josm.gui.MainApplication;
    3333import org.openstreetmap.josm.gui.help.ContextSensitiveHelpAction;
    3434import org.openstreetmap.josm.gui.help.HelpUtil;
     
    120120    public void setVisible(boolean visible) {
    121121        if (visible) {
    122             WindowGeometry.centerInWindow(Main.parent, new Dimension(350, 300)).applySafe(this);
     122            WindowGeometry.centerInWindow(MainApplication.getMainFrame(), new Dimension(350, 300)).applySafe(this);
    123123        }
    124124        super.setVisible(visible);
  • trunk/src/org/openstreetmap/josm/gui/io/CustomConfigurator.java

    r14149 r14153  
    3939import javax.xml.transform.stream.StreamResult;
    4040
    41 import org.openstreetmap.josm.Main;
    4241import org.openstreetmap.josm.data.Preferences;
    4342import org.openstreetmap.josm.data.PreferencesUtils;
    4443import org.openstreetmap.josm.data.Version;
    4544import org.openstreetmap.josm.gui.MainApplication;
     45import org.openstreetmap.josm.gui.MainFrame;
    4646import org.openstreetmap.josm.plugins.PluginDownloadTask;
    4747import org.openstreetmap.josm.plugins.PluginInformation;
     
    137137        }
    138138        File fOut = new File(dir, path);
    139         DownloadFileTask downloadFileTask = new DownloadFileTask(Main.parent, address, fOut, mkdir, unzip);
     139        DownloadFileTask downloadFileTask = new DownloadFileTask(MainApplication.getMainFrame(), address, fOut, mkdir, unzip);
    140140
    141141        MainApplication.worker.submit(downloadFileTask);
    142142        PreferencesUtils.log("Info: downloading file from %s to %s in background ", parentDir, fOut.getAbsolutePath());
    143143        if (unzip) PreferencesUtils.log("and unpacking it"); else PreferencesUtils.log("");
    144 
    145144    }
    146145
     
    152151    public static void messageBox(String type, String text) {
    153152        char c = (type == null || type.isEmpty() ? "plain" : type).charAt(0);
     153        MainFrame parent = MainApplication.getMainFrame();
    154154        switch (c) {
    155             case 'i': JOptionPane.showMessageDialog(Main.parent, text, tr("Information"), JOptionPane.INFORMATION_MESSAGE); break;
    156             case 'w': JOptionPane.showMessageDialog(Main.parent, text, tr("Warning"), JOptionPane.WARNING_MESSAGE); break;
    157             case 'e': JOptionPane.showMessageDialog(Main.parent, text, tr("Error"), JOptionPane.ERROR_MESSAGE); break;
    158             case 'q': JOptionPane.showMessageDialog(Main.parent, text, tr("Question"), JOptionPane.QUESTION_MESSAGE); break;
    159             case 'p': JOptionPane.showMessageDialog(Main.parent, text, tr("Message"), JOptionPane.PLAIN_MESSAGE); break;
     155            case 'i': JOptionPane.showMessageDialog(parent, text, tr("Information"), JOptionPane.INFORMATION_MESSAGE); break;
     156            case 'w': JOptionPane.showMessageDialog(parent, text, tr("Warning"), JOptionPane.WARNING_MESSAGE); break;
     157            case 'e': JOptionPane.showMessageDialog(parent, text, tr("Error"), JOptionPane.ERROR_MESSAGE); break;
     158            case 'q': JOptionPane.showMessageDialog(parent, text, tr("Question"), JOptionPane.QUESTION_MESSAGE); break;
     159            case 'p': JOptionPane.showMessageDialog(parent, text, tr("Message"), JOptionPane.PLAIN_MESSAGE); break;
    160160            default: Logging.warn("Unsupported messageBox type: " + c);
    161161        }
     
    170170    public static int askForOption(String text, String opts) {
    171171        if (!opts.isEmpty()) {
    172             return JOptionPane.showOptionDialog(Main.parent, text, "Question",
     172            return JOptionPane.showOptionDialog(MainApplication.getMainFrame(), text, "Question",
    173173                    JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE, null, opts.split(";"), 0);
    174174        } else {
    175             return JOptionPane.showOptionDialog(Main.parent, text, "Question",
     175            return JOptionPane.showOptionDialog(MainApplication.getMainFrame(), text, "Question",
    176176                    JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE, null, null, 2);
    177177        }
     
    179179
    180180    public static String askForText(String text) {
    181         String s = JOptionPane.showInputDialog(Main.parent, text, tr("Enter text"), JOptionPane.QUESTION_MESSAGE);
     181        String s = JOptionPane.showInputDialog(MainApplication.getMainFrame(), text, tr("Enter text"), JOptionPane.QUESTION_MESSAGE);
    182182        return s != null ? s.trim() : null;
    183183    }
     
    344344                    if (!installList.isEmpty()) {
    345345                        PluginDownloadTask pluginDownloadTask =
    346                                 new PluginDownloadTask(Main.parent, toInstallPlugins, tr("Installing plugins"));
     346                                new PluginDownloadTask(MainApplication.getMainFrame(), toInstallPlugins, tr("Installing plugins"));
    347347                        MainApplication.worker.submit(pluginDownloadTask);
    348348                    }
  • trunk/src/org/openstreetmap/josm/gui/io/DownloadOpenChangesetsTask.java

    r12743 r14153  
    1313import javax.swing.SwingUtilities;
    1414
    15 import org.openstreetmap.josm.Main;
    1615import org.openstreetmap.josm.data.UserIdentityManager;
    1716import org.openstreetmap.josm.data.osm.Changeset;
     
    1918import org.openstreetmap.josm.data.osm.UserInfo;
    2019import org.openstreetmap.josm.gui.ExceptionDialogUtil;
     20import org.openstreetmap.josm.gui.MainApplication;
    2121import org.openstreetmap.josm.gui.PleaseWaitRunnable;
    2222import org.openstreetmap.josm.gui.util.GuiHelper;
     
    8181            if (!GraphicsEnvironment.isHeadless()) {
    8282                JOptionPane.showMessageDialog(
    83                         Main.parent,
     83                        MainApplication.getMainFrame(),
    8484                        tr("There are no open changesets"),
    8585                        tr("No open changesets"),
  • trunk/src/org/openstreetmap/josm/gui/io/DownloadPrimitivesWithReferrersTask.java

    r13534 r14153  
    1919import javax.swing.JScrollPane;
    2020
    21 import org.openstreetmap.josm.Main;
    2221import org.openstreetmap.josm.actions.downloadtasks.DownloadReferrersTask;
    2322import org.openstreetmap.josm.data.osm.DataSet;
     
    225224
    226225        return new ExtendedDialog(
    227                 Main.parent,
     226                MainApplication.getMainFrame(),
    228227                title,
    229228                tr("Ok"))
  • trunk/src/org/openstreetmap/josm/gui/io/SaveLayersDialog.java

    r13647 r14153  
    4242import javax.swing.event.TableModelListener;
    4343
    44 import org.openstreetmap.josm.Main;
    4544import org.openstreetmap.josm.actions.SessionSaveAsAction;
    4645import org.openstreetmap.josm.actions.UploadAction;
    4746import org.openstreetmap.josm.gui.ExceptionDialogUtil;
     47import org.openstreetmap.josm.gui.MainApplication;
    4848import org.openstreetmap.josm.gui.io.SaveLayersModel.Mode;
    4949import org.openstreetmap.josm.gui.layer.AbstractModifiableLayer;
     
    111111    public static boolean saveUnsavedModifications(Iterable<? extends Layer> selectedLayers, Reason reason) {
    112112        if (!GraphicsEnvironment.isHeadless()) {
    113             SaveLayersDialog dialog = new SaveLayersDialog(Main.parent);
     113            SaveLayersDialog dialog = new SaveLayersDialog(MainApplication.getMainFrame());
    114114            List<AbstractModifiableLayer> layersWithUnmodifiedChanges = new ArrayList<>();
    115115            for (Layer l: selectedLayers) {
     
    278278        // For unit test coverage in headless mode
    279279        if (!GraphicsEnvironment.isHeadless()) {
    280             JOptionPane.showConfirmDialog(Main.parent, panel, title, JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE);
     280            JOptionPane.showConfirmDialog(MainApplication.getMainFrame(), panel, title, JOptionPane.DEFAULT_OPTION, JOptionPane.WARNING_MESSAGE);
    281281        }
    282282    }
     
    665665            );
    666666            JOptionPane.showMessageDialog(
    667                     Main.parent,
     667                    MainApplication.getMainFrame(),
    668668                    msg,
    669669                    tr("Incomplete upload and/or save"),
  • trunk/src/org/openstreetmap/josm/gui/io/UploadDialog.java

    r14106 r14153  
    3636import javax.swing.JTabbedPane;
    3737
    38 import org.openstreetmap.josm.Main;
    3938import org.openstreetmap.josm.data.APIDataSet;
    4039import org.openstreetmap.josm.data.Version;
     
    4443import org.openstreetmap.josm.gui.ExtendedDialog;
    4544import org.openstreetmap.josm.gui.HelpAwareOptionPane;
     45import org.openstreetmap.josm.gui.MainApplication;
    4646import org.openstreetmap.josm.gui.help.ContextSensitiveHelpAction;
    4747import org.openstreetmap.josm.gui.help.HelpUtil;
     
    105105     */
    106106    public UploadDialog() {
    107         super(GuiHelper.getFrameForComponent(Main.parent), ModalityType.DOCUMENT_MODAL);
     107        super(GuiHelper.getFrameForComponent(MainApplication.getMainFrame()), ModalityType.DOCUMENT_MODAL);
    108108        build();
    109109        pack();
     
    384384                    getClass().getName() + ".geometry",
    385385                    WindowGeometry.centerInWindow(
    386                             Main.parent,
     386                            MainApplication.getMainFrame(),
    387387                            new Dimension(400, 600)
    388388                    )
     
    545545            }
    546546            if (!emptyChangesetTags.isEmpty() && JOptionPane.OK_OPTION != JOptionPane.showConfirmDialog(
    547                     Main.parent,
     547                    MainApplication.getMainFrame(),
    548548                    trn(
    549549                            "<html>The following changeset tag contains an empty key/value:<br>{0}<br>Continue?</html>",
  • trunk/src/org/openstreetmap/josm/gui/io/UploadPrimitivesTask.java

    r14119 r14153  
    1414import javax.swing.SwingUtilities;
    1515
    16 import org.openstreetmap.josm.Main;
    1716import org.openstreetmap.josm.data.APIDataSet;
    1817import org.openstreetmap.josm.data.osm.Changeset;
     
    2625import org.openstreetmap.josm.gui.HelpAwareOptionPane;
    2726import org.openstreetmap.josm.gui.HelpAwareOptionPane.ButtonSpec;
     27import org.openstreetmap.josm.gui.MainApplication;
    2828import org.openstreetmap.josm.gui.Notification;
    2929import org.openstreetmap.josm.gui.layer.OsmDataLayer;
     
    127127        String msg = "<html>" + msg1 + "<br><br>" + msg2 +"<br><br>" + msg3 + "</html>";
    128128        int ret = HelpAwareOptionPane.showOptionDialog(
    129                 Main.parent,
     129                MainApplication.getMainFrame(),
    130130                msg,
    131131                tr("Changeset is full"),
  • trunk/src/org/openstreetmap/josm/gui/io/UploadSelectionDialog.java

    r13564 r14153  
    3232import javax.swing.event.ListSelectionListener;
    3333
    34 import org.openstreetmap.josm.Main;
    3534import org.openstreetmap.josm.data.osm.DefaultNameFormatter;
    3635import org.openstreetmap.josm.data.osm.OsmPrimitive;
    3736import org.openstreetmap.josm.data.osm.OsmPrimitiveType;
     37import org.openstreetmap.josm.gui.MainApplication;
    3838import org.openstreetmap.josm.gui.PrimitiveRenderer;
    3939import org.openstreetmap.josm.gui.help.ContextSensitiveHelpAction;
     
    6161     */
    6262    public UploadSelectionDialog() {
    63         super(GuiHelper.getFrameForComponent(Main.parent), ModalityType.DOCUMENT_MODAL);
     63        super(GuiHelper.getFrameForComponent(MainApplication.getMainFrame()), ModalityType.DOCUMENT_MODAL);
    6464        build();
    6565    }
     
    174174                    getClass().getName() + ".geometry",
    175175                    WindowGeometry.centerInWindow(
    176                             Main.parent,
     176                            MainApplication.getMainFrame(),
    177177                            new Dimension(200, 400)
    178178                    )
  • trunk/src/org/openstreetmap/josm/gui/io/importexport/FileImporter.java

    r12671 r14153  
    1010import javax.swing.JOptionPane;
    1111
    12 import org.openstreetmap.josm.Main;
    1312import org.openstreetmap.josm.actions.ExtensionFileFilter;
    1413import org.openstreetmap.josm.gui.HelpAwareOptionPane;
     14import org.openstreetmap.josm.gui.MainApplication;
    1515import org.openstreetmap.josm.gui.Notification;
    1616import org.openstreetmap.josm.gui.progress.ProgressMonitor;
     
    115115        Logging.error(e);
    116116        HelpAwareOptionPane.showMessageDialogInEDT(
    117                 Main.parent,
     117                MainApplication.getMainFrame(),
    118118                tr("<html>Could not read file ''{0}''.<br>Error is:<br>{1}</html>",
    119119                        f.getName(), Utils.escapeReservedCharactersHTML(e.getMessage())),
     
    146146            Logging.error(e);
    147147            HelpAwareOptionPane.showMessageDialogInEDT(
    148                     Main.parent,
     148                    MainApplication.getMainFrame(),
    149149                    tr("<html>Could not read files.<br>Error is:<br>{0}</html>", Utils.escapeReservedCharactersHTML(e.getMessage())),
    150150                    tr("Error"),
  • trunk/src/org/openstreetmap/josm/gui/io/importexport/GpxExporter.java

    r13838 r14153  
    2525import javax.swing.ListSelectionModel;
    2626
    27 import org.openstreetmap.josm.Main;
    2827import org.openstreetmap.josm.data.gpx.GpxConstants;
    2928import org.openstreetmap.josm.data.gpx.GpxData;
     
    152151        p.add(keywords, GBC.eop().fill(GBC.HORIZONTAL));
    153152
    154         ExtendedDialog ed = new ExtendedDialog(Main.parent,
     153        ExtendedDialog ed = new ExtendedDialog(MainApplication.getMainFrame(),
    155154                tr("Export options"),
    156155                tr("Export and Save"), tr("Cancel"))
     
    212211        } catch (IOException | InvalidPathException ex) {
    213212            Logging.error(ex);
    214             JOptionPane.showMessageDialog(Main.parent, tr("Error while exporting {0}:\n{1}", fn, ex.getMessage()),
     213            JOptionPane.showMessageDialog(MainApplication.getMainFrame(), tr("Error while exporting {0}:\n{1}", fn, ex.getMessage()),
    215214                    tr("Error"), JOptionPane.ERROR_MESSAGE);
    216215        }
     
    309308            l.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
    310309            int answer = JOptionPane.showConfirmDialog(
    311                     Main.parent,
     310                    MainApplication.getMainFrame(),
    312311                    new JScrollPane(l),
    313312                    tr("Choose a predefined license"),
  • trunk/src/org/openstreetmap/josm/gui/io/importexport/NMEAImporter.java

    r14010 r14153  
    1111import javax.swing.SwingUtilities;
    1212
    13 import org.openstreetmap.josm.Main;
    1413import org.openstreetmap.josm.actions.ExtensionFileFilter;
    1514import org.openstreetmap.josm.gui.HelpAwareOptionPane;
     
    8685        } else {
    8786            HelpAwareOptionPane.showMessageDialogInEDT(
    88                     Main.parent,
     87                    MainApplication.getMainFrame(),
    8988                    msg.toString(),
    9089                    tr("NMEA import failure!"),
  • trunk/src/org/openstreetmap/josm/gui/io/importexport/OsmChangeImporter.java

    r14108 r14153  
    1111import javax.swing.JOptionPane;
    1212
    13 import org.openstreetmap.josm.Main;
    1413import org.openstreetmap.josm.actions.ExtensionFileFilter;
    1514import org.openstreetmap.josm.data.osm.DataSet;
     
    7877            GuiHelper.runInEDT(() ->
    7978                JOptionPane.showMessageDialog(
    80                         Main.parent,
     79                        MainApplication.getMainFrame(),
    8180                        tr("No data found in file {0}.", associatedFile.getPath()),
    8281                        tr("Open OsmChange file"),
  • trunk/src/org/openstreetmap/josm/gui/io/importexport/OsmExporter.java

    r13838 r14153  
    1616import javax.swing.JOptionPane;
    1717
    18 import org.openstreetmap.josm.Main;
    1918import org.openstreetmap.josm.actions.ExtensionFileFilter;
     19import org.openstreetmap.josm.gui.MainApplication;
    2020import org.openstreetmap.josm.gui.layer.Layer;
    2121import org.openstreetmap.josm.gui.layer.OsmDataLayer;
     
    9999            Logging.error(e);
    100100            JOptionPane.showMessageDialog(
    101                     Main.parent,
     101                    MainApplication.getMainFrame(),
    102102                    tr("<html>An error occurred while saving.<br>Error is:<br>{0}</html>",
    103103                            Utils.escapeReservedCharactersHTML(e.getMessage())),
     
    114114                Logging.error(e2);
    115115                JOptionPane.showMessageDialog(
    116                         Main.parent,
     116                        MainApplication.getMainFrame(),
    117117                        tr("<html>An error occurred while restoring backup file.<br>Error is:<br>{0}</html>",
    118118                                Utils.escapeReservedCharactersHTML(e2.getMessage())),
  • trunk/src/org/openstreetmap/josm/gui/io/importexport/OsmImporter.java

    r13352 r14153  
    1212import javax.swing.JOptionPane;
    1313
    14 import org.openstreetmap.josm.Main;
    1514import org.openstreetmap.josm.actions.ExtensionFileFilter;
    1615import org.openstreetmap.josm.data.osm.DataSet;
     
    146145                }
    147146                JOptionPane.showMessageDialog(
    148                         Main.parent,
     147                        MainApplication.getMainFrame(),
    149148                        msg,
    150149                        tr("Open OSM file"),
  • trunk/src/org/openstreetmap/josm/gui/layer/AbstractTileSourceLayer.java

    r14120 r14153  
    7474import org.openstreetmap.gui.jmapviewer.interfaces.TileSource;
    7575import org.openstreetmap.gui.jmapviewer.tilesources.AbstractTMSTileSource;
    76 import org.openstreetmap.josm.Main;
    7776import org.openstreetmap.josm.actions.ExpertToggleAction;
    7877import org.openstreetmap.josm.actions.ImageryAdjustAction;
     
    420419        public void actionPerformed(ActionEvent ae) {
    421420            if (tile != null) {
    422                 ExtendedDialog ed = new ExtendedDialog(Main.parent, tr("Tile Info"), tr("OK"));
     421                ExtendedDialog ed = new ExtendedDialog(MainApplication.getMainFrame(), tr("Tile Info"), tr("OK"));
    423422                JPanel panel = new JPanel(new GridBagLayout());
    424423                Rectangle2D displaySize = layer.coordinateConverter.getRectangleForTile(tile);
  • trunk/src/org/openstreetmap/josm/gui/layer/CustomizeColor.java

    r13130 r14153  
    1919import javax.swing.JOptionPane;
    2020
    21 import org.openstreetmap.josm.Main;
    2221import org.openstreetmap.josm.data.preferences.AbstractProperty;
     22import org.openstreetmap.josm.gui.MainApplication;
    2323import org.openstreetmap.josm.gui.dialogs.LayerListDialog;
    2424import org.openstreetmap.josm.gui.layer.Layer.LayerAction;
     
    7777        Object[] options = new Object[]{tr("OK"), tr("Cancel"), tr("Default")};
    7878        int answer = JOptionPane.showOptionDialog(
    79                 Main.parent,
     79                MainApplication.getMainFrame(),
    8080                c,
    8181                tr("Choose a color"),
  • trunk/src/org/openstreetmap/josm/gui/layer/Layer.java

    r13173 r14153  
    2020import javax.swing.SwingUtilities;
    2121
    22 import org.openstreetmap.josm.Main;
    2322import org.openstreetmap.josm.actions.GpxExportAction;
    2423import org.openstreetmap.josm.actions.SaveAction;
     
    3231import org.openstreetmap.josm.data.projection.Projection;
    3332import org.openstreetmap.josm.data.projection.ProjectionChangeListener;
     33import org.openstreetmap.josm.gui.MainApplication;
    3434import org.openstreetmap.josm.tools.Destroyable;
    3535import org.openstreetmap.josm.tools.ImageProcessor;
     
    605605
    606606            // run later to not block loading the UI.
    607             SwingUtilities.invokeLater(() -> JOptionPane.showMessageDialog(Main.parent,
     607            SwingUtilities.invokeLater(() -> JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    608608                    message,
    609609                    tr("Warning"),
  • trunk/src/org/openstreetmap/josm/gui/layer/MainLayerManager.java

    r14005 r14153  
    232232            GuiHelper.runInEDT(() ->
    233233                    JOptionPane.showMessageDialog(
    234                             MainApplication.parent,
     234                            MainApplication.getMainFrame(),
    235235                            tr("Trying to set a read only data layer as edit layer"),
    236236                            tr("Warning"),
     
    289289    protected Collection<Layer> realRemoveSingleLayer(Layer layer) {
    290290        if ((layer instanceof OsmDataLayer) && (((OsmDataLayer) layer).isUploadInProgress())) {
    291             GuiHelper.runInEDT(() -> JOptionPane.showMessageDialog(MainApplication.parent,
     291            GuiHelper.runInEDT(() -> JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    292292                    tr("Trying to delete the layer with background upload. Please wait until the upload is finished.")));
    293293
     
    495495            Logging.warn(msg);
    496496            if (!GraphicsEnvironment.isHeadless()) {
    497                 GuiHelper.runInEDT(() -> JOptionPane.showMessageDialog(MainApplication.parent, msg));
     497                GuiHelper.runInEDT(() -> JOptionPane.showMessageDialog(MainApplication.getMainFrame(), msg));
    498498            }
    499499        }
  • trunk/src/org/openstreetmap/josm/gui/layer/NoteLayer.java

    r14102 r14153  
    3434import javax.swing.text.View;
    3535
    36 import org.openstreetmap.josm.Main;
    3736import org.openstreetmap.josm.actions.SaveActionBase;
    3837import org.openstreetmap.josm.data.Bounds;
     
    4443import org.openstreetmap.josm.data.osm.visitor.BoundingXYVisitor;
    4544import org.openstreetmap.josm.gui.MainApplication;
    46 import org.openstreetmap.josm.gui.MainFrame;
    4745import org.openstreetmap.josm.gui.MapView;
    4846import org.openstreetmap.josm.gui.dialogs.LayerListDialog;
     
    236234            displayedPanel.enableClickableHyperlinks();
    237235            pTooltip = fixPanelSizeAndLocation(mv, text, xl, xr, yt, yb);
    238             displayedWindow = new JWindow((MainFrame) Main.parent);
     236            displayedWindow = new JWindow(MainApplication.getMainFrame());
    239237            displayedWindow.setAutoRequestFocus(false);
    240238            displayedWindow.add(displayedPanel);
  • trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java

    r14134 r14153  
    4444import javax.swing.JScrollPane;
    4545
    46 import org.openstreetmap.josm.Main;
    4746import org.openstreetmap.josm.actions.ExpertToggleAction;
    4847import org.openstreetmap.josm.actions.RenameLayerAction;
     
    567566            Logging.error(e);
    568567            JOptionPane.showMessageDialog(
    569                     Main.parent,
     568                    MainApplication.getMainFrame(),
    570569                    e.getHtmlMessage() != null ? e.getHtmlMessage() : e.getMessage(),
    571570                    tr("Error"),
     
    10271026            String result = DatasetConsistencyTest.runTests(data);
    10281027            if (result.isEmpty()) {
    1029                 JOptionPane.showMessageDialog(Main.parent, tr("No problems found"));
     1028                JOptionPane.showMessageDialog(MainApplication.getMainFrame(), tr("No problems found"));
    10301029            } else {
    10311030                JPanel p = new JPanel(new GridBagLayout());
     
    10361035                p.add(new JScrollPane(info), GBC.eop());
    10371036
    1038                 JOptionPane.showMessageDialog(Main.parent, p, tr("Warning"), JOptionPane.WARNING_MESSAGE);
     1037                JOptionPane.showMessageDialog(MainApplication.getMainFrame(), p, tr("Warning"), JOptionPane.WARNING_MESSAGE);
    10391038            }
    10401039        }
     
    11031102            }
    11041103            return new ExtendedDialog(
    1105                     Main.parent,
     1104                    MainApplication.getMainFrame(),
    11061105                    tr("Empty document"),
    11071106                    tr("Save anyway"), tr("Cancel"))
     
    11161115        return conflictsCol == null || conflictsCol.isEmpty() || 1 == GuiHelper.runInEDTAndWaitAndReturn(() ->
    11171116            new ExtendedDialog(
    1118                     Main.parent,
     1117                    MainApplication.getMainFrame(),
    11191118                    /* I18N: Display title of the window showing conflicts */
    11201119                    tr("Conflicts"),
  • trunk/src/org/openstreetmap/josm/gui/layer/geoimage/CorrelateGpxWithImages.java

    r14010 r14153  
    6060import javax.swing.event.DocumentListener;
    6161
    62 import org.openstreetmap.josm.Main;
    6362import org.openstreetmap.josm.actions.DiskAccessAction;
    6463import org.openstreetmap.josm.actions.ExtensionFileFilter;
     
    133132                timezone = Timezone.parseTimezone(tfTimezone.getText().trim());
    134133            } catch (ParseException e) {
    135                 JOptionPane.showMessageDialog(Main.parent, e.getMessage(),
     134                JOptionPane.showMessageDialog(MainApplication.getMainFrame(), e.getMessage(),
    136135                        tr("Invalid timezone"), JOptionPane.ERROR_MESSAGE);
    137136                return AGAIN;
     
    141140                delta = Offset.parseOffset(tfOffset.getText().trim());
    142141            } catch (ParseException e) {
    143                 JOptionPane.showMessageDialog(Main.parent, e.getMessage(),
     142                JOptionPane.showMessageDialog(MainApplication.getMainFrame(), e.getMessage(),
    144143                        tr("Invalid offset"), JOptionPane.ERROR_MESSAGE);
    145144                return AGAIN;
     
    147146
    148147            if (lastNumMatched == 0 && new ExtendedDialog(
    149                         Main.parent,
     148                        MainApplication.getMainFrame(),
    150149                        tr("Correlate images with GPX track"),
    151150                        tr("OK"), tr("Try Again")).
     
    272271                        if (!sel.getName().equals(wrapper.name)) {
    273272                            JOptionPane.showMessageDialog(
    274                                     Main.parent,
     273                                    MainApplication.getMainFrame(),
    275274                                    tr("File {0} is loaded yet under the name \"{1}\"", sel.getName(), wrapper.name),
    276275                                    tr("Error"),
     
    291290                    Logging.error(ex);
    292291                    JOptionPane.showMessageDialog(
    293                             Main.parent,
     292                            MainApplication.getMainFrame(),
    294293                            tr("Error while parsing {0}", sel.getName())+": "+ex.getMessage(),
    295294                            tr("Error"),
     
    300299                    Logging.error(ex);
    301300                    JOptionPane.showMessageDialog(
    302                             Main.parent,
     301                            MainApplication.getMainFrame(),
    303302                            tr("Could not read \"{0}\"", sel.getName())+'\n'+ex.getMessage(),
    304303                            tr("Error"),
     
    490489            while (!isOk) {
    491490                int answer = JOptionPane.showConfirmDialog(
    492                         Main.parent, panel,
     491                        MainApplication.getMainFrame(), panel,
    493492                        tr("Synchronize time from a photo of the GPS receiver"),
    494493                        JOptionPane.OK_CANCEL_OPTION,
     
    504503                    - dateFormat.parse(tfGpsTime.getText()).getTime();
    505504                } catch (ParseException e) {
    506                     JOptionPane.showMessageDialog(Main.parent, tr("Error while parsing the date.\n"
     505                    JOptionPane.showMessageDialog(MainApplication.getMainFrame(), tr("Error while parsing the date.\n"
    507506                            + "Please use the requested format"),
    508507                            tr("Invalid date"), JOptionPane.ERROR_MESSAGE);
     
    723722        if (!GraphicsEnvironment.isHeadless()) {
    724723            syncDialog = new ExtendedDialog(
    725                     Main.parent,
     724                    MainApplication.getMainFrame(),
    726725                    tr("Correlate images with GPX track"),
    727726                    new String[] {tr("Correlate"), tr("Cancel")},
     
    932931            } catch (JosmRuntimeException | IllegalArgumentException | IllegalStateException e) {
    933932                Logging.warn(e);
    934                 JOptionPane.showMessageDialog(Main.parent,
     933                JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    935934                        tr("An error occurred while trying to match the photos to the GPX track."
    936935                                +" You can adjust the sliders to manually match the photos."),
     
    950949            // immediately. Therefore "Close" is marked with an "OK" icon.
    951950            // Settings are only saved temporarily to the layer.
    952             new ExtendedDialog(Main.parent,
     951            new ExtendedDialog(MainApplication.getMainFrame(),
    953952                    tr("Adjust timezone and offset"),
    954953                    tr("Close")).
     
    10121011            } catch (IndexOutOfBoundsException ex) {
    10131012                Logging.debug(ex);
    1014                 JOptionPane.showMessageDialog(Main.parent,
     1013                JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    10151014                        tr("The selected photos do not contain time information."),
    10161015                        tr("Photos do not contain time information"), JOptionPane.WARNING_MESSAGE);
     
    10181017            } catch (NoGpxTimestamps ex) {
    10191018                Logging.debug(ex);
    1020                 JOptionPane.showMessageDialog(Main.parent,
     1019                JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    10211020                        tr("The selected GPX track does not contain timestamps. Please select another one."),
    10221021                        tr("GPX Track has no time information"), JOptionPane.WARNING_MESSAGE);
     
    10811080        if (item == null || ((GpxDataWrapper) item).file == null) {
    10821081            if (complain) {
    1083                 JOptionPane.showMessageDialog(Main.parent, tr("You should select a GPX track"),
     1082                JOptionPane.showMessageDialog(MainApplication.getMainFrame(), tr("You should select a GPX track"),
    10841083                        tr("No selected GPX track"), JOptionPane.ERROR_MESSAGE);
    10851084            }
  • trunk/src/org/openstreetmap/josm/gui/layer/geoimage/GeoImageLayer.java

    r13843 r14153  
    3939import javax.swing.SwingConstants;
    4040
    41 import org.openstreetmap.josm.Main;
    4241import org.openstreetmap.josm.actions.LassoModeAction;
    4342import org.openstreetmap.josm.actions.RenameLayerAction;
     
    285284            if (!errorMessages.isEmpty()) {
    286285                JOptionPane.showMessageDialog(
    287                         Main.parent,
     286                        MainApplication.getMainFrame(),
    288287                        formatErrorMessages(),
    289288                        tr("Error"),
     
    716715
    717716            int result = new ExtendedDialog(
    718                     Main.parent,
     717                    MainApplication.getMainFrame(),
    719718                    tr("Delete image file from disk"),
    720719                    tr("Cancel"), tr("Delete"))
     
    738737                } else {
    739738                    JOptionPane.showMessageDialog(
    740                             Main.parent,
     739                            MainApplication.getMainFrame(),
    741740                            tr("Image file could not be deleted."),
    742741                            tr("Error"),
  • trunk/src/org/openstreetmap/josm/gui/layer/gpx/ChooseTrackVisibilityAction.java

    r13130 r14153  
    3131import javax.swing.table.TableRowSorter;
    3232
    33 import org.openstreetmap.josm.Main;
    3433import org.openstreetmap.josm.data.SystemOfMeasurement;
    3534import org.openstreetmap.josm.data.gpx.GpxConstants;
     
    266265        if (!GraphicsEnvironment.isHeadless()) {
    267266            // build dialog
    268             ExtendedDialog ed = new ExtendedDialog(Main.parent, tr("Set track visibility for {0}", layer.getName()),
     267            ExtendedDialog ed = new ExtendedDialog(MainApplication.getMainFrame(), tr("Set track visibility for {0}", layer.getName()),
    269268                    tr("Show all"), tr("Show selected only"), tr("Cancel"));
    270269            ed.setButtonIcons("eye", "dialogs/filter", "cancel");
     
    274273            ed.configureContextsensitiveHelp("/Action/ChooseTrackVisibility", true);
    275274            ed.setRememberWindowGeometry(getClass().getName() + ".geometry",
    276                     WindowGeometry.centerInWindow(Main.parent, new Dimension(1000, 500)));
     275                    WindowGeometry.centerInWindow(MainApplication.getMainFrame(), new Dimension(1000, 500)));
    277276            ed.showDialog();
    278277            dateFilter.saveInPrefs();
  • trunk/src/org/openstreetmap/josm/gui/layer/gpx/ConvertFromGpxLayerAction.java

    r14129 r14153  
    2121import javax.swing.JRadioButton;
    2222
    23 import org.openstreetmap.josm.Main;
    2423import org.openstreetmap.josm.data.gpx.GpxConstants;
    2524import org.openstreetmap.josm.data.gpx.GpxTrack;
     
    3029import org.openstreetmap.josm.data.osm.Way;
    3130import org.openstreetmap.josm.gui.ExtendedDialog;
     31import org.openstreetmap.josm.gui.MainApplication;
    3232import org.openstreetmap.josm.gui.layer.GpxLayer;
    3333import org.openstreetmap.josm.gui.layer.OsmDataLayer;
     
    209209        rNone.addActionListener(disabler);
    210210
    211         ExtendedDialog ed = new ExtendedDialog(Main.parent, tr("Options"),
     211        ExtendedDialog ed = new ExtendedDialog(MainApplication.getMainFrame(), tr("Options"),
    212212                tr("Convert"), tr("Convert and remember selection"), tr("Cancel"))
    213213                .setButtonIcons("exportgpx", "exportgpx", "cancel").setContent(p);
  • trunk/src/org/openstreetmap/josm/gui/layer/gpx/ConvertToDataLayerAction.java

    r14129 r14153  
    1414import javax.swing.JPanel;
    1515
    16 import org.openstreetmap.josm.Main;
    1716import org.openstreetmap.josm.data.osm.DataSet;
    1817import org.openstreetmap.josm.gui.ConditionalOptionPaneUtil;
     
    5857                GBC.eol());
    5958        msg.add(new UrlLabel(Config.getUrls().getOSMWebsite() + "/traces", 2), GBC.eop());
    60         if (!ConditionalOptionPaneUtil.showConfirmationDialog("convert_to_data", Main.parent, msg, tr("Warning"),
     59        if (!ConditionalOptionPaneUtil.showConfirmationDialog("convert_to_data", MainApplication.getMainFrame(), msg, tr("Warning"),
    6160                JOptionPane.OK_CANCEL_OPTION, JOptionPane.WARNING_MESSAGE, JOptionPane.OK_OPTION)) {
    6261            return;
  • trunk/src/org/openstreetmap/josm/gui/layer/gpx/CustomizeDrawingAction.java

    r13130 r14153  
    1818import javax.swing.JScrollPane;
    1919
    20 import org.openstreetmap.josm.Main;
    2120import org.openstreetmap.josm.gui.MainApplication;
    2221import org.openstreetmap.josm.gui.layer.GpxLayer;
     
    10099            scrollpane.setPreferredSize(new Dimension(panel.getPreferredSize().width, Math.min(panel.getPreferredSize().height, 450)));
    101100        }
    102         int answer = JOptionPane.showConfirmDialog(Main.parent, scrollpane, tr("Customize track drawing"),
     101        int answer = JOptionPane.showConfirmDialog(MainApplication.getMainFrame(), scrollpane, tr("Customize track drawing"),
    103102                JOptionPane.OK_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE);
    104103        if (answer == JOptionPane.CANCEL_OPTION || answer == JOptionPane.CLOSED_OPTION) {
  • trunk/src/org/openstreetmap/josm/gui/layer/gpx/DownloadAlongPanel.java

    r13842 r14153  
    1616import javax.swing.event.ChangeListener;
    1717
    18 import org.openstreetmap.josm.Main;
    1918import org.openstreetmap.josm.gui.HelpAwareOptionPane;
    2019import org.openstreetmap.josm.gui.HelpAwareOptionPane.ButtonSpec;
     20import org.openstreetmap.josm.gui.MainApplication;
    2121import org.openstreetmap.josm.spi.preferences.Config;
    2222import org.openstreetmap.josm.tools.GBC;
     
    181181        addChangeListener(e -> options[0].setEnabled(isDownloadOsmData() || isDownloadGpxData()));
    182182
    183         int ret = HelpAwareOptionPane.showOptionDialog(Main.parent, this, title,
     183        int ret = HelpAwareOptionPane.showOptionDialog(MainApplication.getMainFrame(), this, title,
    184184                    JOptionPane.QUESTION_MESSAGE, null, options, options[0], helpTopic);
    185185        if (0 == ret) {
  • trunk/src/org/openstreetmap/josm/gui/layer/gpx/DownloadWmsAlongTrackAction.java

    r13206 r14153  
    1414
    1515import org.openstreetmap.gui.jmapviewer.tilesources.AbstractTMSTileSource;
    16 import org.openstreetmap.josm.Main;
    1716import org.openstreetmap.josm.actions.AbstractMergeAction;
    1817import org.openstreetmap.josm.data.coor.LatLon;
     
    131130
    132131    protected void warnNoImageryLayers() {
    133         JOptionPane.showMessageDialog(Main.parent, tr("There are no imagery layers."), tr("No imagery layers"), JOptionPane.WARNING_MESSAGE);
     132        JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
     133                tr("There are no imagery layers."), tr("No imagery layers"), JOptionPane.WARNING_MESSAGE);
    134134    }
    135135}
  • trunk/src/org/openstreetmap/josm/gui/layer/gpx/ImportAudioAction.java

    r14120 r14153  
    1818import javax.swing.filechooser.FileFilter;
    1919
    20 import org.openstreetmap.josm.Main;
    2120import org.openstreetmap.josm.actions.DiskAccessAction;
    2221import org.openstreetmap.josm.data.gpx.GpxConstants;
     
    8079                "Because its way points do not include a timestamp we cannot correlate them with audio data.</html>",
    8180                Utils.escapeReservedCharactersHTML(layer.getName()));
    82         HelpAwareOptionPane.showOptionDialog(Main.parent, msg, tr("Import not possible"),
     81        HelpAwareOptionPane.showOptionDialog(MainApplication.getMainFrame(), msg, tr("Import not possible"),
    8382                JOptionPane.WARNING_MESSAGE, ht("/Action/ImportAudio#CantImportIntoGpxLayerFromServer"));
    8483    }
     
    165164        if (firstTime < 0.0) {
    166165            JOptionPane.showMessageDialog(
    167                     Main.parent,
     166                    MainApplication.getMainFrame(),
    168167                    tr("No GPX track available in layer to associate audio with."),
    169168                    tr("Error"),
     
    302301
    303302        if (timedMarkersOmitted && !markers.timedMarkersOmitted) {
    304             JOptionPane.showMessageDialog(Main.parent,
     303            JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    305304                tr("Some waypoints with timestamps from before the start of the track or after the end were omitted or moved to the start."));
    306305            markers.timedMarkersOmitted = timedMarkersOmitted;
    307306        }
    308307        if (untimedMarkersOmitted && !markers.untimedMarkersOmitted) {
    309             JOptionPane.showMessageDialog(Main.parent,
     308            JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    310309                tr("Some waypoints which were too far from the track to sensibly estimate their time were omitted."));
    311310            markers.untimedMarkersOmitted = untimedMarkersOmitted;
  • trunk/src/org/openstreetmap/josm/gui/layer/gpx/ImportImagesAction.java

    r13130 r14153  
    1414import javax.swing.JOptionPane;
    1515
    16 import org.openstreetmap.josm.Main;
    1716import org.openstreetmap.josm.gui.HelpAwareOptionPane;
     17import org.openstreetmap.josm.gui.MainApplication;
    1818import org.openstreetmap.josm.gui.io.importexport.JpgImporter;
    1919import org.openstreetmap.josm.gui.layer.GpxLayer;
     
    4646                "Because its way points do not include a timestamp we cannot correlate them with images.</html>",
    4747                Utils.escapeReservedCharactersHTML(layer.getName()));
    48         HelpAwareOptionPane.showOptionDialog(Main.parent, msg, tr("Import not possible"),
     48        HelpAwareOptionPane.showOptionDialog(MainApplication.getMainFrame(), msg, tr("Import not possible"),
    4949                JOptionPane.WARNING_MESSAGE, ht("/Action/ImportImages#CantImportIntoGpxLayerFromServer"));
    5050    }
  • trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/ImageMarker.java

    r13281 r14153  
    2020import javax.swing.JViewport;
    2121
    22 import org.openstreetmap.josm.Main;
    2322import org.openstreetmap.josm.data.coor.LatLon;
    2423import org.openstreetmap.josm.data.gpx.GpxConstants;
    2524import org.openstreetmap.josm.data.gpx.GpxLink;
    2625import org.openstreetmap.josm.data.gpx.WayPoint;
     26import org.openstreetmap.josm.gui.MainApplication;
    2727import org.openstreetmap.josm.tools.ImageProvider;
    2828
     
    6666        JOptionPane pane = new JOptionPane(p, JOptionPane.PLAIN_MESSAGE);
    6767        if (!GraphicsEnvironment.isHeadless()) {
    68             JDialog dlg = pane.createDialog(Main.parent, imageUrl.toString());
     68            JDialog dlg = pane.createDialog(MainApplication.getMainFrame(), imageUrl.toString());
    6969            dlg.setModal(false);
    7070            dlg.toFront();
  • trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/MarkerLayer.java

    r14129 r14153  
    2828import javax.swing.JOptionPane;
    2929
    30 import org.openstreetmap.josm.Main;
    3130import org.openstreetmap.josm.actions.RenameLayerAction;
    3231import org.openstreetmap.josm.data.Bounds;
     
    309308        if (am == null) {
    310309            JOptionPane.showMessageDialog(
    311                     Main.parent,
     310                    MainApplication.getMainFrame(),
    312311                    tr("No existing audio markers in this layer to offset from."),
    313312                    tr("Error"),
     
    537536            if (!AudioPlayer.paused()) {
    538537                JOptionPane.showMessageDialog(
    539                         Main.parent,
     538                        MainApplication.getMainFrame(),
    540539                        tr("You need to pause audio at the moment when you hear your synchronization cue."),
    541540                        tr("Warning"),
     
    547546            if (synchronizeAudioMarkers(recent)) {
    548547                JOptionPane.showMessageDialog(
    549                         Main.parent,
     548                        MainApplication.getMainFrame(),
    550549                        tr("Audio synchronized at point {0}.", syncAudioMarker.getText()),
    551550                        tr("Information"),
     
    554553            } else {
    555554                JOptionPane.showMessageDialog(
    556                         Main.parent,
     555                        MainApplication.getMainFrame(),
    557556                        tr("Unable to synchronize in layer being played."),
    558557                        tr("Error"),
     
    575574            if (!AudioPlayer.paused()) {
    576575                JOptionPane.showMessageDialog(
    577                         Main.parent,
     576                        MainApplication.getMainFrame(),
    578577                        tr("You need to have paused audio at the point on the track where you want the marker."),
    579578                        tr("Warning"),
  • trunk/src/org/openstreetmap/josm/gui/layer/markerlayer/PlayHeadMarker.java

    r14120 r14153  
    1414import javax.swing.Timer;
    1515
    16 import org.openstreetmap.josm.Main;
    1716import org.openstreetmap.josm.actions.mapmode.MapMode;
    1817import org.openstreetmap.josm.actions.mapmode.PlayHeadDragMode;
     
    179178            /* Not close enough to track, or no audio marker found for some other reason */
    180179            JOptionPane.showMessageDialog(
    181                     Main.parent,
     180                    MainApplication.getMainFrame(),
    182181                    tr("You need to drag the play head near to the GPX track " +
    183182                       "whose associated sound track you were playing (after the first marker)."),
     
    238237            if (cw == null) {
    239238                JOptionPane.showMessageDialog(
    240                         Main.parent,
     239                        MainApplication.getMainFrame(),
    241240                        tr("You need to SHIFT-drag the play head onto an audio marker or onto the track point where you want to synchronize."),
    242241                        tr("Warning"),
     
    252251        if (ca == null) {
    253252            JOptionPane.showMessageDialog(
    254                     Main.parent,
     253                    MainApplication.getMainFrame(),
    255254                    tr("Unable to create new audio marker."),
    256255                    tr("Error"),
     
    260259        } else if (recent.parentLayer.synchronizeAudioMarkers(ca)) {
    261260            JOptionPane.showMessageDialog(
    262                     Main.parent,
     261                    MainApplication.getMainFrame(),
    263262                    tr("Audio synchronized at point {0}.", recent.parentLayer.syncAudioMarker.getText()),
    264263                    tr("Information"),
     
    269268        } else {
    270269            JOptionPane.showMessageDialog(
    271                     Main.parent,
     270                    MainApplication.getMainFrame(),
    272271                    tr("Unable to synchronize in layer being played."),
    273272                    tr("Error"),
  • trunk/src/org/openstreetmap/josm/gui/mappaint/Cascade.java

    r12620 r14153  
    201201            return ((Number) o).floatValue() != 0;
    202202        if (o instanceof List)
    203             return !((List) o).isEmpty();
     203            return !((List<?>) o).isEmpty();
    204204        if (o instanceof float[])
    205205            return ((float[]) o).length != 0;
  • trunk/src/org/openstreetmap/josm/gui/oauth/OAuthAuthorizationWizard.java

    r14119 r14153  
    3737import javax.swing.text.html.HTMLEditorKit;
    3838
    39 import org.openstreetmap.josm.Main;
    4039import org.openstreetmap.josm.data.oauth.OAuthAccessTokenHolder;
    4140import org.openstreetmap.josm.data.oauth.OAuthParameters;
    4241import org.openstreetmap.josm.data.oauth.OAuthToken;
     42import org.openstreetmap.josm.gui.MainApplication;
    4343import org.openstreetmap.josm.gui.help.ContextSensitiveHelpAction;
    4444import org.openstreetmap.josm.gui.help.HelpUtil;
     
    317317                    getClass().getName() + ".geometry",
    318318                    WindowGeometry.centerInWindow(
    319                             Main.parent,
     319                            MainApplication.getMainFrame(),
    320320                            getPreferredSize()
    321321                    )
     
    344344            // executed via main worker. The OAuth connections would block otherwise.
    345345            final OAuthAuthorizationWizard wizard = new OAuthAuthorizationWizard(
    346                     Main.parent, serverUrl.toExternalForm(), Utils.newDirectExecutor());
     346                    MainApplication.getMainFrame(), serverUrl.toExternalForm(), Utils.newDirectExecutor());
    347347            wizard.showDialog();
    348348            return wizard;
  • trunk/src/org/openstreetmap/josm/gui/preferences/PreferenceTabbedPane.java

    r14052 r14153  
    2929import javax.swing.event.ChangeListener;
    3030
    31 import org.openstreetmap.josm.Main;
    3231import org.openstreetmap.josm.actions.ExpertToggleAction;
    3332import org.openstreetmap.josm.actions.ExpertToggleAction.ExpertModeChangeListener;
     
    119118                final ButtonSpec[] options = RestartAction.getButtonSpecs();
    120119                if (0 == HelpAwareOptionPane.showOptionDialog(
    121                         Main.parent,
     120                        MainApplication.getMainFrame(),
    122121                        sb.toString(),
    123122                        tr("Restart"),
     
    132131            } else if (task != null && !task.isCanceled()) {
    133132                JOptionPane.showMessageDialog(
    134                         Main.parent,
     133                        MainApplication.getMainFrame(),
    135134                        sb.toString(),
    136135                        tr("Warning"),
     
    175174            }
    176175
    177             if (Main.parent != null) {
    178                 Main.parent.repaint();
     176            if (MainApplication.getMainFrame() != null) {
     177                MainApplication.getMainFrame().repaint();
    179178            }
    180179        }
  • trunk/src/org/openstreetmap/josm/gui/preferences/SourceEditor.java

    r14121 r14153  
    7272import javax.swing.table.TableModel;
    7373
    74 import org.openstreetmap.josm.Main;
    7574import org.openstreetmap.josm.actions.ExtensionFileFilter;
    7675import org.openstreetmap.josm.data.Version;
     
    11121111                }
    11131112                if (!messages.isEmpty()) {
    1114                     ExtendedDialog dlg = new ExtendedDialog(Main.parent, tr("Warning"), tr("Cancel"), tr("Continue anyway"));
     1113                    ExtendedDialog dlg = new ExtendedDialog(MainApplication.getMainFrame(), tr("Warning"), tr("Cancel"), tr("Continue anyway"));
    11151114                    dlg.setButtonIcons(
    11161115                        ImageProvider.get("cancel"),
     
    14141413
    14151414            GuiHelper.runInEDT(() -> HelpAwareOptionPane.showOptionDialog(
    1416                     Main.parent,
     1415                    MainApplication.getMainFrame(),
    14171416                    msg,
    14181417                    tr("Error"),
  • trunk/src/org/openstreetmap/josm/gui/preferences/ToolbarPreferences.java

    r14138 r14153  
    5959import javax.swing.tree.TreePath;
    6060
    61 import org.openstreetmap.josm.Main;
    6261import org.openstreetmap.josm.actions.ActionParameter;
    6362import org.openstreetmap.josm.actions.AdaptableAction;
     
    514513            @Override
    515514            public void actionPerformed(ActionEvent e) {
    516                 final PreferenceDialog p = new PreferenceDialog(Main.parent);
     515                final PreferenceDialog p = new PreferenceDialog(MainApplication.getMainFrame());
    517516                p.selectPreferencesTabByName("toolbar");
    518517                p.setVisible(true);
     
    523522            @Override
    524523            public void actionPerformed(ActionEvent e) {
    525                 final PreferenceDialog p = new PreferenceDialog(Main.parent);
     524                final PreferenceDialog p = new PreferenceDialog(MainApplication.getMainFrame());
    526525                p.getTabbedPane().getShortcutPreference().setDefaultFilter(act.getDisplayName());
    527526                p.selectPreferencesTabByName("shortcuts");
  • trunk/src/org/openstreetmap/josm/gui/preferences/advanced/AdvancedPreference.java

    r14149 r14153  
    3737import javax.swing.filechooser.FileFilter;
    3838
    39 import org.openstreetmap.josm.Main;
    4039import org.openstreetmap.josm.actions.DiskAccessAction;
    4140import org.openstreetmap.josm.data.Preferences;
    4241import org.openstreetmap.josm.data.PreferencesUtils;
     42import org.openstreetmap.josm.gui.MainApplication;
    4343import org.openstreetmap.josm.gui.dialogs.LogShowDialog;
    4444import org.openstreetmap.josm.gui.help.HelpUtil;
     
    237237
    238238        if (keys.isEmpty()) {
    239             JOptionPane.showMessageDialog(Main.parent,
     239            JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    240240                    tr("Please select some preference keys not marked as default"), tr("Warning"), JOptionPane.WARNING_MESSAGE);
    241241            return;
     
    250250        if (hasLists) {
    251251            answer = JOptionPane.showOptionDialog(
    252                     Main.parent, tr("What to do with preference lists when this file is to be imported?"), tr("Question"),
     252                    MainApplication.getMainFrame(), tr("What to do with preference lists when this file is to be imported?"), tr("Question"),
    253253                    JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE, null,
    254254                    new String[]{tr("Append preferences from file to existing values"), tr("Replace existing values")}, 0);
  • trunk/src/org/openstreetmap/josm/gui/preferences/advanced/ExportProfileAction.java

    r14052 r14153  
    1717import javax.swing.filechooser.FileFilter;
    1818
    19 import org.openstreetmap.josm.Main;
    2019import org.openstreetmap.josm.actions.DiskAccessAction;
    2120import org.openstreetmap.josm.data.Preferences;
    22 import org.openstreetmap.josm.spi.preferences.Setting;
     21import org.openstreetmap.josm.gui.MainApplication;
    2322import org.openstreetmap.josm.gui.io.CustomConfigurator;
    2423import org.openstreetmap.josm.gui.widgets.AbstractFileChooser;
     24import org.openstreetmap.josm.spi.preferences.Setting;
    2525import org.openstreetmap.josm.tools.Utils;
    2626
     
    5656        }
    5757        if (keys.isEmpty()) {
    58             JOptionPane.showMessageDialog(Main.parent,
     58            JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    5959                    tr("All the preferences of this group are default, nothing to save"), tr("Warning"), JOptionPane.WARNING_MESSAGE);
    6060            return;
  • trunk/src/org/openstreetmap/josm/gui/preferences/advanced/ListEditor.java

    r12881 r14153  
    1616import javax.swing.table.AbstractTableModel;
    1717
     18import org.openstreetmap.josm.gui.widgets.JosmTextField;
    1819import org.openstreetmap.josm.spi.preferences.ListSetting;
    19 import org.openstreetmap.josm.gui.widgets.JosmTextField;
    2020import org.openstreetmap.josm.tools.GBC;
    2121import org.openstreetmap.josm.tools.SubclassFilteredCollection;
  • trunk/src/org/openstreetmap/josm/gui/preferences/advanced/PreferencesTable.java

    r14052 r14153  
    2929
    3030import org.openstreetmap.josm.data.preferences.NamedColorProperty;
     31import org.openstreetmap.josm.gui.ExtendedDialog;
     32import org.openstreetmap.josm.gui.util.GuiHelper;
     33import org.openstreetmap.josm.gui.widgets.JosmTextField;
    3134import org.openstreetmap.josm.spi.preferences.ListListSetting;
    3235import org.openstreetmap.josm.spi.preferences.ListSetting;
     
    3437import org.openstreetmap.josm.spi.preferences.Setting;
    3538import org.openstreetmap.josm.spi.preferences.StringSetting;
    36 import org.openstreetmap.josm.gui.ExtendedDialog;
    37 import org.openstreetmap.josm.gui.util.GuiHelper;
    38 import org.openstreetmap.josm.gui.widgets.JosmTextField;
    3939import org.openstreetmap.josm.tools.GBC;
    4040
  • trunk/src/org/openstreetmap/josm/gui/preferences/advanced/StringEditor.java

    r12881 r14153  
    1010import javax.swing.JPanel;
    1111
    12 import org.openstreetmap.josm.spi.preferences.StringSetting;
    1312import org.openstreetmap.josm.gui.ExtendedDialog;
    1413import org.openstreetmap.josm.gui.widgets.JosmTextField;
     14import org.openstreetmap.josm.spi.preferences.StringSetting;
    1515import org.openstreetmap.josm.tools.GBC;
    1616
  • trunk/src/org/openstreetmap/josm/gui/preferences/display/GPXSettingsPanel.java

    r13761 r14153  
    2323import javax.swing.JSlider;
    2424
    25 import org.openstreetmap.josm.Main;
    2625import org.openstreetmap.josm.actions.ExpertToggleAction;
    2726import org.openstreetmap.josm.data.PreferencesUtils;
    2827import org.openstreetmap.josm.data.preferences.NamedColorProperty;
     28import org.openstreetmap.josm.gui.MainApplication;
    2929import org.openstreetmap.josm.gui.layer.gpx.GpxDrawHelper;
    3030import org.openstreetmap.josm.gui.layer.markerlayer.Marker;
     
    580580        } catch (ParseError e) {
    581581            Logging.warn(e);
    582             JOptionPane.showMessageDialog(Main.parent,
     582            JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    583583                    tr("Incorrect waypoint label pattern: {0}", e.getMessage()), tr("Incorrect pattern"), JOptionPane.ERROR_MESSAGE);
    584584            waypointLabelPattern.requestFocus();
     
    590590        } catch (ParseError e) {
    591591            Logging.warn(e);
    592             JOptionPane.showMessageDialog(Main.parent,
     592            JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    593593                    tr("Incorrect audio waypoint label pattern: {0}", e.getMessage()), tr("Incorrect pattern"), JOptionPane.ERROR_MESSAGE);
    594594            audioWaypointLabelPattern.requestFocus();
  • trunk/src/org/openstreetmap/josm/gui/preferences/imagery/AddImageryDialog.java

    r13777 r14153  
    77import java.awt.Dimension;
    88
    9 import org.openstreetmap.josm.Main;
    109import org.openstreetmap.josm.gui.ExtendedDialog;
     10import org.openstreetmap.josm.gui.MainApplication;
    1111import org.openstreetmap.josm.gui.preferences.imagery.AddImageryPanel.ContentValidationListener;
    1212import org.openstreetmap.josm.gui.util.WindowGeometry;
     
    3333        setRememberWindowGeometry(
    3434                panel.getClass().getName() + ".geometry",
    35                 WindowGeometry.centerInWindow(Main.parent, new Dimension(400, 600))
     35                WindowGeometry.centerInWindow(MainApplication.getMainFrame(), new Dimension(400, 600))
    3636                );
    3737    }
  • trunk/src/org/openstreetmap/josm/gui/preferences/imagery/ImageryPreference.java

    r14120 r14153  
    5454import org.openstreetmap.gui.jmapviewer.interfaces.MapRectangle;
    5555import org.openstreetmap.gui.jmapviewer.tilesources.OsmTileSource;
    56 import org.openstreetmap.josm.Main;
    5756import org.openstreetmap.josm.data.coor.EastNorth;
    5857import org.openstreetmap.josm.data.imagery.ImageryInfo;
     
    546545                            throw ex;
    547546                        else {
    548                             JOptionPane.showMessageDialog(Main.parent,
     547                            JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    549548                                    ex.getMessage(), tr("Error"),
    550549                                    JOptionPane.ERROR_MESSAGE);
     
    815814                scrollPane.setPreferredSize(new Dimension(400, 400));
    816815                box.add(scrollPane);
    817                 int option = JOptionPane.showConfirmDialog(Main.parent, box, tr("Please abort if you are not sure"),
     816                int option = JOptionPane.showConfirmDialog(MainApplication.getMainFrame(), box, tr("Please abort if you are not sure"),
    818817                        JOptionPane.YES_NO_OPTION, JOptionPane.WARNING_MESSAGE);
    819818                if (option == JOptionPane.YES_OPTION)
  • trunk/src/org/openstreetmap/josm/gui/preferences/map/TaggingPresetPreference.java

    r14119 r14153  
    1717import javax.swing.JPanel;
    1818
    19 import org.openstreetmap.josm.Main;
    2019import org.openstreetmap.josm.data.preferences.sources.ExtendedSourceEntry;
    2120import org.openstreetmap.josm.data.preferences.sources.PresetPrefHelper;
     
    2423import org.openstreetmap.josm.data.preferences.sources.SourceType;
    2524import org.openstreetmap.josm.gui.ExtendedDialog;
     25import org.openstreetmap.josm.gui.MainApplication;
    2626import org.openstreetmap.josm.gui.preferences.PreferenceSetting;
    2727import org.openstreetmap.josm.gui.preferences.PreferenceSettingFactory;
     
    5959                        } catch (IOException e) {
    6060                            Logging.log(Logging.LEVEL_WARN, tr("Could not read tagging preset source: {0}", source), e);
    61                             ExtendedDialog ed = new ExtendedDialog(Main.parent, tr("Error"),
     61                            ExtendedDialog ed = new ExtendedDialog(MainApplication.getMainFrame(), tr("Error"),
    6262                                    tr("Yes"), tr("No"), tr("Cancel"));
    6363                            ed.setContent(tr("Could not read tagging preset source: {0}\nDo you want to keep it?", source));
     
    8484                            String msg = tr("Could not read tagging preset source: {0}", source);
    8585                            Logging.log(Logging.LEVEL_ERROR, msg, e);
    86                             JOptionPane.showMessageDialog(Main.parent, msg);
     86                            JOptionPane.showMessageDialog(MainApplication.getMainFrame(), msg);
    8787                            return false;
    8888                        } catch (SAXParseException e) {
     
    112112                        if (errorMessage != null) {
    113113                            Logging.error(errorMessage);
    114                             int result = JOptionPane.showConfirmDialog(Main.parent, new JLabel(errorMessage), tr("Error"),
     114                            int result = JOptionPane.showConfirmDialog(MainApplication.getMainFrame(), new JLabel(errorMessage), tr("Error"),
    115115                                    JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.ERROR_MESSAGE);
    116116
  • trunk/src/org/openstreetmap/josm/gui/preferences/plugin/PluginPreference.java

    r14149 r14153  
    4343import javax.swing.event.DocumentListener;
    4444
    45 import org.openstreetmap.josm.Main;
    4645import org.openstreetmap.josm.actions.ExpertToggleAction;
    4746import org.openstreetmap.josm.data.Preferences;
     
    635634                    }
    636635                    String s = (String) JOptionPane.showInputDialog(
    637                             Main.parent,
     636                            MainApplication.getMainFrame(),
    638637                            tr("Edit JOSM Plugin description URL."),
    639638                            tr("JOSM Plugin description URL"),
  • trunk/src/org/openstreetmap/josm/gui/preferences/projection/ProjectionPreference.java

    r14120 r14153  
    2222import javax.swing.JSeparator;
    2323
    24 import org.openstreetmap.josm.Main;
    2524import org.openstreetmap.josm.actions.ExpertToggleAction;
    2625import org.openstreetmap.josm.data.Bounds;
     
    3534import org.openstreetmap.josm.data.projection.Projections;
    3635import org.openstreetmap.josm.gui.ExtendedDialog;
     36import org.openstreetmap.josm.gui.MainApplication;
    3737import org.openstreetmap.josm.gui.preferences.PreferenceSetting;
    3838import org.openstreetmap.josm.gui.preferences.PreferenceSettingFactory;
     
    476476        if (pc == null) {
    477477            JOptionPane.showMessageDialog(
    478                     Main.parent,
     478                    MainApplication.getMainFrame(),
    479479                    tr("The projection {0} could not be activated. Using Mercator", id),
    480480                    tr("Error"),
  • trunk/src/org/openstreetmap/josm/gui/progress/NullProgressMonitor.java

    r12620 r14153  
    44import java.awt.Component;
    55
    6 import org.openstreetmap.josm.Main;
     6import org.openstreetmap.josm.gui.MainApplication;
    77import org.openstreetmap.josm.tools.Logging;
    88
     
    127127    @Override
    128128    public Component getWindowParent() {
    129         return Main.parent;
     129        return MainApplication.getMainFrame();
    130130    }
    131131}
  • trunk/src/org/openstreetmap/josm/gui/progress/swing/PleaseWaitProgressMonitor.java

    r12675 r14153  
    1111import javax.swing.SwingUtilities;
    1212
    13 import org.openstreetmap.josm.Main;
    1413import org.openstreetmap.josm.gui.MainApplication;
    1514import org.openstreetmap.josm.gui.MapFrame;
     
    171170     */
    172171    public PleaseWaitProgressMonitor(String windowTitle) {
    173         this(Main.parent);
     172        this(MainApplication.getMainFrame());
    174173        this.windowTitle = windowTitle;
    175174    }
     
    401400        Component parent = dialog;
    402401        if (isInBackground || parent == null)
    403             return Main.parent;
     402            return MainApplication.getMainFrame();
    404403        else
    405404            return parent;
  • trunk/src/org/openstreetmap/josm/gui/progress/swing/SwingRenderingProgressMonitor.java

    r12675 r14153  
    44import java.awt.Component;
    55
    6 import org.openstreetmap.josm.Main;
     6import org.openstreetmap.josm.gui.MainApplication;
    77import org.openstreetmap.josm.gui.progress.AbstractProgressMonitor;
    88import org.openstreetmap.josm.gui.progress.CancelHandler;
     
    8585    @Override
    8686    public Component getWindowParent() {
    87         return Main.parent;
     87        return MainApplication.getMainFrame();
    8888    }
    8989}
  • trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPreset.java

    r14143 r14153  
    3232import javax.swing.SwingUtilities;
    3333
    34 import org.openstreetmap.josm.Main;
    3534import org.openstreetmap.josm.actions.AdaptableAction;
    3635import org.openstreetmap.josm.command.ChangePropertyCommand;
     
    432431         */
    433432        PresetDialog(Component content, String title, ImageIcon icon, boolean disableApply, boolean showNewRelation) {
    434             super(Main.parent, title,
     433            super(MainApplication.getMainFrame(), title,
    435434                    showNewRelation ?
    436435                            (new String[] {tr("Apply Preset"), tr("New relation"), tr("Cancel")}) :
  • trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetMenu.java

    r13649 r14153  
    2121import javax.swing.JSeparator;
    2222
    23 import org.openstreetmap.josm.Main;
    2423import org.openstreetmap.josm.gui.MainApplication;
     24import org.openstreetmap.josm.gui.MainFrame;
    2525import org.openstreetmap.josm.tools.AlphanumComparator;
    2626import org.openstreetmap.josm.tools.Logging;
     
    105105                if (pointerInfo != null) {
    106106                    Point p = pointerInfo.getLocation();
    107                     pm.show(Main.parent, p.x-Main.parent.getX(), p.y-Main.parent.getY());
     107                    MainFrame parent = MainApplication.getMainFrame();
     108                    pm.show(parent, p.x-parent.getX(), p.y-parent.getY());
    108109                }
    109110            } catch (SecurityException ex) {
  • trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetReader.java

    r14121 r14153  
    2424import javax.swing.JOptionPane;
    2525
    26 import org.openstreetmap.josm.Main;
    2726import org.openstreetmap.josm.data.preferences.sources.PresetPrefHelper;
     27import org.openstreetmap.josm.gui.MainApplication;
    2828import org.openstreetmap.josm.gui.tagging.presets.items.Check;
    2929import org.openstreetmap.josm.gui.tagging.presets.items.CheckGroup;
     
    391391                if (displayErrMsg) {
    392392                    JOptionPane.showMessageDialog(
    393                             Main.parent,
     393                            MainApplication.getMainFrame(),
    394394                            tr("Could not read tagging preset source: {0}", source),
    395395                            tr("Error"),
     
    402402                if (displayErrMsg) {
    403403                    JOptionPane.showMessageDialog(
    404                             Main.parent,
     404                            MainApplication.getMainFrame(),
    405405                            "<html>" + tr("Error parsing {0}: ", source) + "<br><br><table width=600>" +
    406406                                    Utils.escapeReservedCharactersHTML(e.getMessage()) + "</table></html>",
  • trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetSearchDialog.java

    r13925 r14153  
    66import java.awt.event.ActionEvent;
    77
    8 import org.openstreetmap.josm.Main;
    98import org.openstreetmap.josm.data.osm.event.SelectionEventManager;
    109import org.openstreetmap.josm.gui.ExtendedDialog;
     10import org.openstreetmap.josm.gui.MainApplication;
    1111
    1212/**
     
    3232
    3333    private TaggingPresetSearchDialog() {
    34         super(Main.parent, tr("Search presets"), tr("Select"), tr("Cancel"));
     34        super(MainApplication.getMainFrame(), tr("Search presets"), tr("Select"), tr("Cancel"));
    3535        selector = new TaggingPresetSelector(true, true);
    3636        setContent(selector, false);
  • trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetSearchPrimitiveDialog.java

    r13952 r14153  
    88import java.util.HashSet;
    99
    10 import org.openstreetmap.josm.Main;
    1110import org.openstreetmap.josm.actions.JosmAction;
    1211import org.openstreetmap.josm.data.osm.OsmData;
     
    6665
    6766    TaggingPresetSearchPrimitiveDialog() {
    68         super(Main.parent, tr("Search for objects by preset"), tr("Search"), tr("Cancel"));
     67        super(MainApplication.getMainFrame(), tr("Search for objects by preset"), tr("Search"), tr("Cancel"));
    6968        selector = new TaggingPresetSelector(false, false);
    7069        setContent(selector, false);
  • trunk/src/org/openstreetmap/josm/gui/util/GuiHelper.java

    r14052 r14153  
    5151import javax.swing.plaf.FontUIResource;
    5252
    53 import org.openstreetmap.josm.Main;
    5453import org.openstreetmap.josm.data.preferences.StrokeProperty;
    5554import org.openstreetmap.josm.gui.ExtendedDialog;
     
    296295     */
    297296    public static boolean warnUser(String title, String content, ImageIcon baseActionIcon, String continueToolTip) {
    298         ExtendedDialog dlg = new ExtendedDialog(Main.parent,
     297        ExtendedDialog dlg = new ExtendedDialog(MainApplication.getMainFrame(),
    299298                title, tr("Cancel"), tr("Continue"));
    300299        dlg.setContent(content);
  • trunk/src/org/openstreetmap/josm/gui/util/MultikeyActionsHandler.java

    r12807 r14153  
    2323import javax.swing.event.PopupMenuListener;
    2424
    25 import org.openstreetmap.josm.Main;
    2625import org.openstreetmap.josm.gui.MainApplication;
    2726import org.openstreetmap.josm.gui.util.MultikeyShortcutAction.MultikeyInfo;
     
    102101            }
    103102            layers.addPopupMenuListener(new StatusLinePopupMenuListener());
    104             layers.show(Main.parent, Integer.MAX_VALUE, Integer.MAX_VALUE);
    105             layers.setLocation(Main.parent.getX() + Main.parent.getWidth() - layers.getWidth(),
    106                                Main.parent.getY() + Main.parent.getHeight() - layers.getHeight());
     103            layers.show(MainApplication.getMainFrame(), Integer.MAX_VALUE, Integer.MAX_VALUE);
     104            layers.setLocation(MainApplication.getMainFrame().getX() + MainApplication.getMainFrame().getWidth() - layers.getWidth(),
     105                               MainApplication.getMainFrame().getY() + MainApplication.getMainFrame().getHeight() - layers.getHeight());
    107106        }
    108107    }
  • trunk/src/org/openstreetmap/josm/gui/util/WindowGeometry.java

    r13963 r14153  
    1919import javax.swing.JComponent;
    2020
    21 import org.openstreetmap.josm.Main;
     21import org.openstreetmap.josm.gui.MainApplication;
    2222import org.openstreetmap.josm.spi.preferences.Config;
    2323import org.openstreetmap.josm.tools.CheckParameterUtil;
     
    410410        Dimension result = new Dimension();
    411411        GraphicsConfiguration gc = component.getGraphicsConfiguration();
    412         if (gc == null && Main.parent != null) {
    413             gc = Main.parent.getGraphicsConfiguration();
     412        if (gc == null && MainApplication.getMainFrame() != null) {
     413            gc = MainApplication.getMainFrame().getGraphicsConfiguration();
    414414        }
    415415        if (gc != null) {
  • trunk/src/org/openstreetmap/josm/gui/widgets/EditableList.java

    r12304 r14153  
    1717import javax.swing.JScrollPane;
    1818
    19 import org.openstreetmap.josm.Main;
     19import org.openstreetmap.josm.gui.MainApplication;
    2020import org.openstreetmap.josm.tools.GBC;
    2121
     
    6161        addSrcButton.addActionListener(e -> {
    6262            String source = JOptionPane.showInputDialog(
    63                     Main.parent,
     63                    MainApplication.getMainFrame(),
    6464                    title,
    6565                    title,
     
    7979            if (row == -1) {
    8080                if (sourcesList.getModel().getSize() == 0) {
    81                     String source1 = JOptionPane.showInputDialog(Main.parent, title, title, JOptionPane.QUESTION_MESSAGE);
     81                    String source1 = JOptionPane.showInputDialog(MainApplication.getMainFrame(), title, title, JOptionPane.QUESTION_MESSAGE);
    8282                    if (source1 != null && !source1.isEmpty()) {
    8383                        ((DefaultListModel<String>) sourcesList.getModel()).addElement(source1);
     
    8585                } else {
    8686                    JOptionPane.showMessageDialog(
    87                             Main.parent,
     87                            MainApplication.getMainFrame(),
    8888                            tr("Please select the row to edit."),
    8989                            tr("Information"),
     
    9292                }
    9393            } else {
    94                 String source2 = (String) JOptionPane.showInputDialog(Main.parent,
     94                String source2 = (String) JOptionPane.showInputDialog(MainApplication.getMainFrame(),
    9595                        title,
    9696                        title,
     
    106106        deleteSrcButton.addActionListener(e -> {
    107107            if (sourcesList.getSelectedIndex() == -1) {
    108                 JOptionPane.showMessageDialog(Main.parent, tr("Please select the row to delete."), tr("Information"),
     108                JOptionPane.showMessageDialog(MainApplication.getMainFrame(), tr("Please select the row to delete."), tr("Information"),
    109109                        JOptionPane.QUESTION_MESSAGE);
    110110            } else {
  • trunk/src/org/openstreetmap/josm/gui/widgets/FileChooserManager.java

    r14138 r14153  
    1010import javax.swing.filechooser.FileFilter;
    1111
    12 import org.openstreetmap.josm.Main;
    1312import org.openstreetmap.josm.actions.DiskAccessAction;
    1413import org.openstreetmap.josm.actions.ExtensionFileFilter;
    1514import org.openstreetmap.josm.actions.SaveActionBase;
    1615import org.openstreetmap.josm.data.preferences.BooleanProperty;
     16import org.openstreetmap.josm.gui.MainApplication;
    1717import org.openstreetmap.josm.spi.preferences.Config;
    1818import org.openstreetmap.josm.tools.PlatformManager;
     
    330330     * When the user choses a file or directory, the {@code lastDirProperty} is updated to the chosen directory path.
    331331     *
    332      * @param parent The Component used as the parent of the AbstractFileChooser. If null, uses {@code Main.parent}.
     332     * @param parent The Component used as the parent of the AbstractFileChooser. If null, uses {@code MainApplication.getMainFrame()}.
    333333     * @return the {@code AbstractFileChooser} if the user effectively choses a file or directory. {@code null} if the user cancelled the dialog.
    334334     */
     
    338338
    339339        if (parent == null) {
    340             parent = Main.parent;
     340            parent = MainApplication.getMainFrame();
    341341        }
    342342
  • trunk/src/org/openstreetmap/josm/gui/widgets/NativeFileChooser.java

    r14138 r14153  
    1313import javax.swing.filechooser.FileFilter;
    1414
    15 import org.openstreetmap.josm.Main;
     15import org.openstreetmap.josm.gui.MainApplication;
    1616import org.openstreetmap.josm.tools.PlatformManager;
    1717import org.openstreetmap.josm.tools.Utils;
     
    3535     */
    3636    public NativeFileChooser(File file) {
    37         fileDialog = new FileDialog((Frame) Main.parent);
     37        fileDialog = new FileDialog((Frame) MainApplication.getMainFrame());
    3838        if (file != null) {
    3939            fileDialog.setDirectory(file.getAbsolutePath());
  • trunk/src/org/openstreetmap/josm/io/audio/AudioUtil.java

    r12846 r14153  
    1515import javax.swing.JOptionPane;
    1616
    17 import org.openstreetmap.josm.Main;
     17import org.openstreetmap.josm.gui.MainApplication;
    1818import org.openstreetmap.josm.spi.preferences.Config;
    1919import org.openstreetmap.josm.tools.Logging;
     
    6666        Logging.error(msg);
    6767        if (!GraphicsEnvironment.isHeadless()) {
    68             JOptionPane.showMessageDialog(Main.parent,
     68            JOptionPane.showMessageDialog(MainApplication.getMainFrame(),
    6969                    "<html><p>" + msg + "</p></html>",
    7070                    tr("Error playing sound"), JOptionPane.ERROR_MESSAGE);
  • trunk/src/org/openstreetmap/josm/io/remotecontrol/AddTagsDialog.java

    r14134 r14153  
    2929import javax.swing.table.TableModel;
    3030
    31 import org.openstreetmap.josm.Main;
    3231import org.openstreetmap.josm.command.ChangePropertyCommand;
    3332import org.openstreetmap.josm.data.UndoRedoHandler;
     
    139138     */
    140139    public AddTagsDialog(String[][] tags, String senderName, Collection<? extends OsmPrimitive> primitives) {
    141         super(Main.parent, tr("Add tags to selected objects"), new String[] {tr("Add selected tags"), tr("Add all tags"), tr("Cancel")},
     140        super(MainApplication.getMainFrame(), tr("Add tags to selected objects"),
     141                new String[] {tr("Add selected tags"), tr("Add all tags"), tr("Cancel")},
    142142                false,
    143143                true);
  • trunk/src/org/openstreetmap/josm/io/remotecontrol/handler/RequestHandler.java

    r13941 r14153  
    2121import javax.swing.JOptionPane;
    2222
    23 import org.openstreetmap.josm.Main;
    2423import org.openstreetmap.josm.actions.downloadtasks.DownloadParams;
    2524import org.openstreetmap.josm.data.osm.DownloadPolicy;
    2625import org.openstreetmap.josm.data.osm.UploadPolicy;
     26import org.openstreetmap.josm.gui.MainApplication;
    2727import org.openstreetmap.josm.io.remotecontrol.PermissionPrefWithDefault;
    2828import org.openstreetmap.josm.spi.preferences.Config;
     
    181181        if (Config.getPref().getBoolean(globalConfirmationKey, globalConfirmationDefault)) {
    182182            // Ensure dialog box does not exceed main window size
    183             Integer maxWidth = (int) Math.max(200, Main.parent.getWidth()*0.6);
     183            Integer maxWidth = (int) Math.max(200, MainApplication.getMainFrame().getWidth()*0.6);
    184184            String message = "<html><div>" + getPermissionMessage() +
    185185                    "<br/>" + tr("Do you want to allow this?") + "</div></html>";
     
    189189            }
    190190            Object[] choices = new Object[] {tr("Yes, always"), tr("Yes, once"), tr("No")};
    191             int choice = JOptionPane.showOptionDialog(Main.parent, label, tr("Confirm Remote Control action"),
     191            int choice = JOptionPane.showOptionDialog(MainApplication.getMainFrame(), label, tr("Confirm Remote Control action"),
    192192                    JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE, null, choices, choices[1]);
    193193            if (choice != JOptionPane.YES_OPTION && choice != JOptionPane.NO_OPTION) { // Yes/no refer to always/once
  • trunk/src/org/openstreetmap/josm/io/session/SessionReader.java

    r13901 r14153  
    3232import javax.xml.parsers.ParserConfigurationException;
    3333
    34 import org.openstreetmap.josm.Main;
    3534import org.openstreetmap.josm.data.ViewportData;
    3635import org.openstreetmap.josm.data.coor.EastNorth;
     
    3837import org.openstreetmap.josm.data.projection.Projection;
    3938import org.openstreetmap.josm.gui.ExtendedDialog;
     39import org.openstreetmap.josm.gui.MainApplication;
    4040import org.openstreetmap.josm.gui.layer.Layer;
    4141import org.openstreetmap.josm.gui.progress.NullProgressMonitor;
     
    675675                SwingUtilities.invokeAndWait(() -> {
    676676                    ExtendedDialog dlg = new ExtendedDialog(
    677                             Main.parent,
     677                            MainApplication.getMainFrame(),
    678678                            title,
    679679                            tr("Cancel"), tr("Skip layer and continue"))
  • trunk/src/org/openstreetmap/josm/plugins/PluginHandler.java

    r14149 r14153  
    5353import javax.swing.UIManager;
    5454
    55 import org.openstreetmap.josm.Main;
    5655import org.openstreetmap.josm.actions.RestartAction;
    5756import org.openstreetmap.josm.data.Preferences;
     
    186185            a.setCaretPosition(0);
    187186            if (!GraphicsEnvironment.isHeadless()) {
    188                 JOptionPane.showMessageDialog(Main.parent, new JScrollPane(a), tr("Plugin information"),
     187                JOptionPane.showMessageDialog(MainApplication.getMainFrame(), new JScrollPane(a), tr("Plugin information"),
    189188                        JOptionPane.INFORMATION_MESSAGE);
    190189            }
     
    13971396        try {
    13981397            FutureTask<Integer> task = new FutureTask<>(() -> HelpAwareOptionPane.showOptionDialog(
    1399                     Main.parent,
     1398                    MainApplication.getMainFrame(),
    14001399                    msg.toString(),
    14011400                    tr("Update plugins"),
     
    14801479        case 0:
    14811480            // update the plugin
    1482             updatePlugins(Main.parent, Collections.singleton(pluginInfo), null, true);
     1481            updatePlugins(MainApplication.getMainFrame(), Collections.singleton(pluginInfo), null, true);
    14831482            return pluginDownloadTask;
    14841483        case 1:
     
    14871486            Config.getPref().putList("plugins", new ArrayList<>(plugins));
    14881487            GuiHelper.runInEDTAndWait(() -> JOptionPane.showMessageDialog(
    1489                     Main.parent,
     1488                    MainApplication.getMainFrame(),
    14901489                    tr("The plugin has been removed from the configuration. Please restart JOSM to unload the plugin."),
    14911490                    tr("Information"),
  • trunk/src/org/openstreetmap/josm/tools/PlatformHookOsx.java

    r14148 r14153  
    2929import javax.swing.UIManager;
    3030
    31 import org.openstreetmap.josm.Main;
    3231import org.openstreetmap.josm.data.Preferences;
     32import org.openstreetmap.josm.gui.MainApplication;
    3333import org.openstreetmap.josm.io.CertificateAmendment.NativeCertAmend;
    3434
     
    8585            eawtApplication.getDeclaredMethod("setDockIconImage", Image.class).invoke(appli, ImageProvider.get("logo").getImage());
    8686            // enable full screen
    87             enableOSXFullscreen((Window) Main.parent);
     87            enableOSXFullscreen(MainApplication.getMainFrame());
    8888        } catch (ReflectiveOperationException | SecurityException | IllegalArgumentException ex) {
    8989            // We'll just ignore this for now. The user will still be able to close JOSM by closing all its windows.
  • trunk/src/org/openstreetmap/josm/tools/PlatformHookWindows.java

    r14148 r14153  
    7777import javax.swing.JOptionPane;
    7878
    79 import org.openstreetmap.josm.Main;
    8079import org.openstreetmap.josm.data.Preferences;
    8180import org.openstreetmap.josm.data.StructUtils;
    8281import org.openstreetmap.josm.data.StructUtils.StructEntry;
    8382import org.openstreetmap.josm.data.StructUtils.WriteExplicitly;
     83import org.openstreetmap.josm.gui.MainApplication;
    8484import org.openstreetmap.josm.io.CertificateAmendment.NativeCertAmend;
    8585import org.openstreetmap.josm.spi.preferences.Config;
     
    403403                    "For your own safety, <b>please click Yes</b> in next dialog."))
    404404                   .append("</html>");
    405             JOptionPane.showMessageDialog(Main.parent, message.toString(), tr("Warning"), JOptionPane.WARNING_MESSAGE);
     405            JOptionPane.showMessageDialog(MainApplication.getMainFrame(), message.toString(), tr("Warning"), JOptionPane.WARNING_MESSAGE);
    406406            for (String alias : insecureCertificates) {
    407407                Logging.warn(tr("Removing insecure certificate from {0} keystore: {1}", WINDOWS_ROOT, alias));
     
    441441                    "If unsure, you can also click No then disable HTTPS support in Remote Control preferences."))
    442442                   .append("</html>");
    443             JOptionPane.showMessageDialog(Main.parent, message.toString(),
     443            JOptionPane.showMessageDialog(MainApplication.getMainFrame(), message.toString(),
    444444                    tr("HTTPS support in Remote Control"), JOptionPane.INFORMATION_MESSAGE);
    445445        }
Note: See TracChangeset for help on using the changeset viewer.