Changeset 1180 in josm


Ignore:
Timestamp:
2008-12-25T18:58:04+01:00 (16 years ago)
Author:
stoecker
Message:

fixed bug #1871, removed all deprecations

Location:
trunk
Files:
5 added
32 edited

Legend:

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

    r1169 r1180  
    1919    public DiskAccessAction(String name, String iconName, String tooltip, Shortcut shortcut) {
    2020        super(name, iconName, tooltip, shortcut, true);
    21     }
    22 
    23     @Deprecated
    24     public DiskAccessAction(String name, String iconName, String tooltip, int shortcut, int modifiers) {
    25         super(name, iconName, tooltip, shortcut, modifiers, true);
    2621    }
    2722
  • trunk/src/org/openstreetmap/josm/actions/JosmAction.java

    r1169 r1180  
    2525abstract public class JosmAction extends AbstractAction implements Destroyable {
    2626
    27     @Deprecated
    28     public KeyStroke shortcut;
    2927    protected Shortcut sc;
    3028
     
    3634        }
    3735        return sc;
    38     }
    39 
    40     @Deprecated
    41     public JosmAction(String name, String iconName, String tooltip, int shortcut, int modifier, boolean register) {
    42         super(name, iconName == null ? null : ImageProvider.get(iconName));
    43         setHelpId();
    44         if (shortcut != 0) {
    45             int group = Shortcut.GROUP_LAYER; //GROUP_NONE;
    46             if (((modifier & InputEvent.CTRL_MASK) != 0) || ((modifier & InputEvent.CTRL_DOWN_MASK) != 0)) {
    47                 group = Shortcut.GROUP_MENU;
    48             } else if (modifier == 0) {
    49                 group = Shortcut.GROUP_EDIT;
    50             }
    51             sc = Shortcut.registerShortcut("auto:"+name, name, shortcut, group);
    52             this.shortcut = sc.getKeyStroke();
    53             Main.contentPane.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(sc.getKeyStroke(), name);
    54             Main.contentPane.getActionMap().put(name, this);
    55         }
    56         putValue(SHORT_DESCRIPTION, Main.platform.makeTooltip(tooltip, sc));
    57         putValue("toolbar", iconName);
    58     if (register)
    59         Main.toolbar.register(this);
    6036    }
    6137
     
    8056        sc = shortcut;
    8157        if (sc != null) {
    82             this.shortcut = sc.getKeyStroke();
    8358            Main.contentPane.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).put(sc.getKeyStroke(), name);
    8459            Main.contentPane.getActionMap().put(name, this);
     
    9166
    9267    public void destroy() {
    93         if (shortcut != null) {
     68        if (sc != null) {
    9469            Main.contentPane.getInputMap(JComponent.WHEN_IN_FOCUSED_WINDOW).remove(sc.getKeyStroke());
    9570            Main.contentPane.getActionMap().remove(sc.getKeyStroke());
  • trunk/src/org/openstreetmap/josm/actions/SaveActionBase.java

    r1169 r1180  
    3030    public SaveActionBase(String name, String iconName, String tooltip, Shortcut shortcut, Layer layer) {
    3131        super(name, iconName, tooltip, shortcut);
    32         this.layer = layer;
    33     }
    34 
    35     @Deprecated
    36     public SaveActionBase(String name, String iconName, String tooltip, int shortcut, int modifiers, Layer layer) {
    37         super(name, iconName, tooltip, shortcut, modifiers);
    3832        this.layer = layer;
    3933    }
  • trunk/src/org/openstreetmap/josm/actions/audio/AudioFastSlowAction.java

    r1169 r1180  
    2424    }
    2525
    26     @Deprecated
    27     public AudioFastSlowAction(String name, String iconName, String tooltip, int shortcut, int modifier, boolean fast) {
    28         super(name, iconName, tooltip, shortcut, modifier, true);
    29         try {
    30             multiplier = Double.parseDouble(Main.pref.get("audio.fastfwdmultiplier","1.3"));
    31         } catch (NumberFormatException e) {
    32             multiplier = 1.3;
    33         }
    34         if (! fast)
    35             multiplier = 1.0 / multiplier;
    36     }
    37 
    3826    public void actionPerformed(ActionEvent e) {
    3927        double speed = AudioPlayer.speed();
  • trunk/src/org/openstreetmap/josm/actions/mapmode/MapMode.java

    r1169 r1180  
    3131    public MapMode(String name, String iconName, String tooltip, Shortcut shortcut, MapFrame mapFrame, Cursor cursor) {
    3232        super(name, "mapmode/"+iconName, tooltip, shortcut, false);
    33         this.cursor = cursor;
    34         putValue("active", false);
    35     }
    36 
    37     /**
    38      * Constructor for mapmodes without an menu
    39      */
    40      @Deprecated
    41     public MapMode(String name, String iconName, String tooltip, int keystroke, MapFrame mapFrame, Cursor cursor) {
    42         super(name, "mapmode/"+iconName, tooltip, keystroke, 0, false);
    4333        this.cursor = cursor;
    4434        putValue("active", false);
  • trunk/src/org/openstreetmap/josm/data/Preferences.java

    r1169 r1180  
    208208    }
    209209
    210     synchronized public void put(final String key, String value) {
     210    synchronized public boolean put(final String key, String value) {
    211211        String oldvalue = properties.get(key);
    212212        if(value != null && value.length() == 0)
     
    221221            save();
    222222            firePreferenceChanged(key, value);
    223         }
    224     }
    225 
    226     synchronized public void put(final String key, final boolean value) {
    227         put(key, Boolean.toString(value));
     223            return true;
     224        }
     225        return false;
     226    }
     227
     228    synchronized public boolean put(final String key, final boolean value) {
     229        return put(key, Boolean.toString(value));
     230    }
     231
     232    synchronized public boolean putInteger(final String key, final Integer value) {
     233        return put(key, Integer.toString(value));
     234    }
     235
     236    synchronized public boolean putDouble(final String key, final Double value) {
     237        return put(key, Double.toString(value));
    228238    }
    229239
     
    343353    }
    344354
    345     // only for compatibility. Don't use any more.
    346     @Deprecated
    347     public static Color getPreferencesColor(String colName, Color def)
    348     {
    349         return Main.pref.getColor(colName, def);
    350     }
    351 
    352355    /**
    353356     * Convenience method for accessing colour preferences.
     
    372375    }
    373376
    374     synchronized public void putColor(String colName, Color val) {
    375         put("color."+colName, val != null ? ColorHelper.color2html(val) : null);
     377    synchronized public boolean putColor(String colName, Color val) {
     378        return put("color."+colName, val != null ? ColorHelper.color2html(val) : null);
    376379    }
    377380
     
    431434                return Arrays.asList(s.split(";"));
    432435        }
    433         else if(def != null)
    434             return def;
    435         return null;
     436        return def;
    436437    }
    437438    synchronized public void removeFromCollection(String key, String value) {
     
    443444        }
    444445    }
    445     synchronized public void putCollection(String key, Collection<String> val) {
     446    synchronized public boolean putCollection(String key, Collection<String> val) {
    446447        String s = null;
    447448        if(val != null)
     
    456457        }
    457458
    458         put(key, s);
     459        return put(key, s);
    459460    }
    460461
  • trunk/src/org/openstreetmap/josm/data/osm/DataSet.java

    r1169 r1180  
    103103            relations.add((Relation) osm);
    104104        }
    105     }
    106 
    107     /**
    108      * Remove the selection of the whole dataset.
    109      * @deprecated Use {@link #setSelected(Collection) setSelected} instead.
    110      */
    111     @Deprecated public void clearSelection() {
    112         clearSelection(nodes);
    113         clearSelection(ways);
    114         clearSelection(relations);
    115         Collection<OsmPrimitive> sel = Collections.emptyList();
    116         fireSelectionChanged(sel);
    117105    }
    118106
  • trunk/src/org/openstreetmap/josm/data/osm/Way.java

    r1169 r1180  
    117117        return name;
    118118    }
    119 
    120     @Deprecated
    121     public boolean isIncomplete() {
    122         return incomplete;
    123     }
    124119}
  • trunk/src/org/openstreetmap/josm/gui/MainMenu.java

    r1169 r1180  
    144144     * handled by the OS are not duplicated on the menu.
    145145     */
    146     public static void add(JMenu menu, JosmAction action) {
     146    public static JMenuItem add(JMenu menu, JosmAction action) {
     147        JMenuItem menuitem = null;
    147148        if (!action.getShortcut().getAutomatic()) {
    148             JMenuItem menuitem = menu.add(action);
     149            menuitem = menu.add(action);
    149150            KeyStroke ks = action.getShortcut().getKeyStroke();
    150151            if (ks != null) {
     
    152153            }
    153154        }
     155        return menuitem;
    154156    }
    155157
  • trunk/src/org/openstreetmap/josm/gui/MapFrame.java

    r1169 r1180  
    2121import org.openstreetmap.josm.actions.mapmode.SelectAction;
    2222import org.openstreetmap.josm.actions.mapmode.ZoomAction;
     23import org.openstreetmap.josm.gui.ScrollViewport;
    2324import org.openstreetmap.josm.gui.dialogs.CommandStackDialog;
    2425import org.openstreetmap.josm.gui.dialogs.ConflictDialog;
     
    5253     * instead of adding directly to this list. To add a new mode use addMapMode.
    5354     */
    54     public JToolBar toolBarActions = new JToolBar(JToolBar.VERTICAL);
    55     public JToolBar toolBarToggle = new JToolBar(JToolBar.VERTICAL);
     55    private JToolBar toolBarActions = new JToolBar(JToolBar.VERTICAL);
     56    private JToolBar toolBarToggle = new JToolBar(JToolBar.VERTICAL);
    5657    /**
    5758     * The status line below the map
     
    145146     * @param dlg The toggle dialog. It must not be in the list already.
    146147     */
    147     public void addToggleDialog(ToggleDialog dlg) {
     148    public IconToggleButton addToggleDialog(ToggleDialog dlg) {
    148149        IconToggleButton button = new IconToggleButton(dlg.action);
    149150        dlg.action.button = button;
     
    151152        toolBarToggle.add(button);
    152153        toggleDialogs.add(dlg);
     154        return button;
    153155    }
    154156
     
    197199        jb.addSeparator();
    198200        jb.add(toolBarToggle);
    199         panel.add(jb, BorderLayout.WEST);
     201        panel.add(new ScrollViewport(jb, ScrollViewport.VERTICAL_DIRECTION),
     202        BorderLayout.WEST);
    200203        if (statusLine != null)
    201204            panel.add(statusLine, BorderLayout.SOUTH);
  • trunk/src/org/openstreetmap/josm/gui/MapView.java

    r1179 r1180  
    5757
    5858    /**
    59      * Interface to notify listeners of the change of the active layer.
    60      * @author imi
    61      * @deprecated Use Layer.LayerChangeListener instead
    62      */
    63     @Deprecated public interface LayerChangeListener {
    64         void activeLayerChange(Layer oldLayer, Layer newLayer);
    65         void layerAdded(Layer newLayer);
    66         void layerRemoved(Layer oldLayer);
    67     }
    68 
    69     /**
    7059     * A list of all layers currently loaded.
    7160     */
     
    9281
    9382    private BufferedImage offscreenBuffer;
    94 
    95     /**
    96      * The listener of the active layer changes.
    97      * @deprecated Use Layer.listener instead.
    98      */
    99     @Deprecated private Collection<LayerChangeListener> listeners = new LinkedList<LayerChangeListener>();
    10083
    10184    public MapView() {
     
    180163        layers.add(pos, layer);
    181164
    182         // TODO: Deprecated
    183         for (LayerChangeListener l : listeners)
    184             l.layerAdded(layer);
    185165        for (Layer.LayerChangeListener l : Layer.listeners)
    186166            l.layerAdded(layer);
     
    214194    public void removeLayer(Layer layer) {
    215195        if (layers.remove(layer)) {
    216             // TODO: Deprecated
    217             for (LayerChangeListener l : listeners)
    218                 l.layerRemoved(layer);
    219196            for (Layer.LayerChangeListener l : Layer.listeners)
    220197                l.layerRemoved(layer);
     
    347324
    348325    /**
    349      * Add a listener for changes of active layer.
    350      * @param listener The listener that get added.
    351      * @deprecated Use Layer.listener.add instead.
    352      */
    353     @Deprecated public void addLayerChangeListener(LayerChangeListener listener) {
    354         if (listener != null)
    355             listeners.add(listener);
    356     }
    357 
    358     /**
    359      * Remove the listener.
    360      * @param listener The listener that get removed from the list.
    361      * @deprecated Use Layer.listener.remove instead
    362      */
    363     @Deprecated public void removeLayerChangeListener(LayerChangeListener listener) {
    364         listeners.remove(listener);
    365     }
    366 
    367     /**
    368326     * @return An unmodificable list of all layers
    369327     */
     
    388346        activeLayer = layer;
    389347        if (old != layer) {
    390             // TODO: Deprecated
    391             for (LayerChangeListener l : listeners)
    392                 l.activeLayerChange(old, layer);
    393348            for (Layer.LayerChangeListener l : Layer.listeners)
    394349                l.activeLayerChange(old, layer);
  • trunk/src/org/openstreetmap/josm/gui/SideButton.java

    r1169 r1180  
    2525        addActionListener(actionListener);
    2626        setToolTipText(tooltip);
    27     }
    28     @Deprecated
    29     public SideButton(String name, String imagename, String property, String tooltip, int mnemonic, ActionListener actionListener)
    30     {
    31         super(tr(name), ImageProvider.get("dialogs", imagename));
    32         setMnemonic(mnemonic);
    33         setup(name, property, tooltip, actionListener);
    3427    }
    3528    public SideButton(String name, String imagename, String property, String tooltip, Shortcut shortcut, ActionListener actionListener)
  • trunk/src/org/openstreetmap/josm/gui/dialogs/ToggleDialog.java

    r1169 r1180  
    6161    public JPanel parent;
    6262    private final JPanel titleBar = new JPanel(new GridBagLayout());
    63 
    64     @Deprecated
    65     public ToggleDialog(final String name, String iconName, String tooltip, int shortcut, int preferredHeight) {
    66         super(new BorderLayout());
    67         this.prefName = iconName;
    68         ToggleDialogInit(name, iconName, tooltip, Shortcut.registerShortcut("auto:"+name, tooltip, shortcut, Shortcut.GROUP_LAYER), preferredHeight);
    69     }
    7063
    7164    public ToggleDialog(final String name, String iconName, String tooltip, Shortcut shortcut, int preferredHeight) {
  • trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java

    r1169 r1180  
    104104
    105105    /**
    106      * @deprecated Use Main.main.undoRedo.add(...) instead.
    107      */
    108     @Deprecated public void add(final Command c) {
    109         Main.main.undoRedo.add(c);
    110     }
    111 
    112     /**
    113106     * The data behind this layer.
    114107     */
  • trunk/src/org/openstreetmap/josm/gui/preferences/AdvancedPreference.java

    r1169 r1180  
    134134    }
    135135
    136     public void ok() {
     136    public boolean ok() {
    137137        for (int i = 0; i < model.getRowCount(); ++i) {
    138138            String value = model.getValueAt(i,1).toString();
     
    148148        for (Entry<String, String> e : orig.entrySet())
    149149            Main.pref.put(e.getKey(), null);
     150        return false;
    150151    }
    151152
  • trunk/src/org/openstreetmap/josm/gui/preferences/AudioPreference.java

    r1169 r1180  
    158158    }
    159159
    160     public void ok() {
     160    public boolean ok() {
    161161        Main.pref.put("audio.menuinvisible", ! audioMenuVisible.isSelected());
    162162        Main.pref.put("marker.traceaudio", markerAudioTraceVisible.isSelected());
     
    171171        Main.pref.put("audio.leadin", audioLeadIn.getText());
    172172        Main.pref.put("audio.calibration", audioCalibration.getText());
     173        return false;
    173174    }
    174175}
  • trunk/src/org/openstreetmap/josm/gui/preferences/ColorPreference.java

    r1169 r1180  
    175175    }
    176176
    177     public void ok() {
     177    public boolean ok() {
    178178        for (int i = 0; i < colors.getRowCount(); ++i) {
    179             String name = (String)colors.getValueAt(i, 0);
    180             Color col = (Color)colors.getValueAt(i, 1);
    181             Main.pref.put("color." + name, ColorHelper.color2html(col));
     179            Main.pref.putColor((String)colors.getValueAt(i, 0), (Color)colors.getValueAt(i, 1));
    182180        }
    183181        org.openstreetmap.josm.gui.layer.OsmDataLayer.createHatchTexture();
     182        return false;
    184183    }
    185184}
  • trunk/src/org/openstreetmap/josm/gui/preferences/DrawingPreference.java

    r1169 r1180  
    166166    }
    167167
    168     public void ok() {
     168    public boolean ok() {
    169169        Main.pref.put("draw.rawgps.lines", drawRawGpsLines.isSelected());
    170170        Main.pref.put("draw.rawgps.max-line-length", drawRawGpsMaxLineLength.getText());
     
    184184        if(virtualNodes.isSelected()) { if (vn < 1) vn = 8; }
    185185        else { vn = 0; }
    186         Main.pref.put("mappaint.node.virtual-size", Integer.toString(vn));
     186        Main.pref.putInteger("mappaint.node.virtual-size", vn);
     187        return false;
    187188    }
    188189}
  • trunk/src/org/openstreetmap/josm/gui/preferences/FilePreferences.java

    r1169 r1180  
    2828    }
    2929
    30     public void ok() {
     30    public boolean ok() {
    3131        Main.pref.put("save.keepbackup", keepBackup.isSelected());
     32        return false;
    3233    }
    3334}
  • trunk/src/org/openstreetmap/josm/gui/preferences/LafPreference.java

    r1178 r1180  
    6363            }
    6464        });
    65         lafCombo.addActionListener(gui.requireRestartAction);
    6665
    6766        panel = new JPanel(new GridBagLayout());
     
    8988    }
    9089
    91     public void ok() {
    92         Main.pref.put("laf", ((LookAndFeelInfo)lafCombo.getSelectedItem()).getClassName());
     90    public boolean ok() {
    9391        Main.pref.put("draw.splashscreen", showSplashScreen.isSelected());
    9492        Main.pref.put("osm-primitives.showid", showID.isSelected());
     93        return Main.pref.put("laf", ((LookAndFeelInfo)lafCombo.getSelectedItem()).getClassName());
    9594    }
    9695
  • trunk/src/org/openstreetmap/josm/gui/preferences/LanguagePreference.java

    r1169 r1180  
    5353            }
    5454        });
    55         langCombo.addActionListener(gui.requireRestartAction);
    5655
    5756        JPanel panel = null;
     
    6766    }
    6867
    69     public void ok() {
     68    public boolean ok() {
    7069        if(langCombo.getSelectedItem() == null)
    71         {
    72             Main.pref.put("language", null);
    73         }
     70            return Main.pref.put("language", null);
    7471        else
    75         {
    76             String l = ((Locale)langCombo.getSelectedItem()).toString();
    77             Main.pref.put("language", l);
    78         }
     72            return Main.pref.put("language",
     73            ((Locale)langCombo.getSelectedItem()).toString());
    7974    }
    8075}
  • trunk/src/org/openstreetmap/josm/gui/preferences/MapPaintPreference.java

    r1169 r1180  
    1010    }
    1111
    12     public void ok() {
    13         // dummy
     12    public boolean ok() {
     13        return false; // dummy
    1414    }
    1515
  • trunk/src/org/openstreetmap/josm/gui/preferences/PluginPreference.java

    r1169 r1180  
    351351    }
    352352
    353     public void ok() {
     353    public boolean ok() {
    354354        Collection<PluginDescription> toDownload = new LinkedList<PluginDescription>();
    355355        String msg = "";
     
    375375        }
    376376
    377         String oldPlugins = Main.pref.get("plugins");
    378             LinkedList<String> plugins = new LinkedList<String>();
     377        LinkedList<String> plugins = new LinkedList<String>();
    379378        Object pd[] = pluginMap.keySet().toArray();
    380379        Arrays.sort(pd);
     
    384383        }
    385384
    386         Main.pref.putCollection("plugins", plugins);
    387         String newPlugins = Main.pref.get("plugins");
    388         if(oldPlugins == null && plugins == null)
    389             return;
    390         if(plugins == null || oldPlugins == null || !plugins.equals(oldPlugins))
    391             gui.requiresRestart = true;
     385        return Main.pref.putCollection("plugins", plugins);
    392386    }
    393387}
  • trunk/src/org/openstreetmap/josm/gui/preferences/PreferenceDialog.java

    r1169 r1180  
    3535
    3636    public final static Collection<PreferenceSetting> settings = new LinkedList<PreferenceSetting>();
    37 
    38     public boolean requiresRestart = false;
    39     public final RequireRestartAction requireRestartAction = new RequireRestartAction();
    4037
    4138    // some common tabs
     
    9188    }
    9289
    93 
    94 
    95     private final class RequireRestartAction implements ActionListener {
    96         public void actionPerformed(ActionEvent e) {
    97             requiresRestart = true;
     90    public void ok() {
     91        boolean requiresRestart = false;
     92        for (PreferenceSetting setting : settings)
     93        {
     94            if(setting.ok())
     95                requiresRestart = true;
    9896        }
    99     }
    100 
    101     public void ok() {
    102         for (PreferenceSetting setting : settings)
    103             setting.ok();
    10497        if (requiresRestart)
    10598            JOptionPane.showMessageDialog(Main.parent,tr("You have to restart JOSM for some settings to take effect."));
  • trunk/src/org/openstreetmap/josm/gui/preferences/PreferenceSetting.java

    r1169 r1180  
    1212    /**
    1313     * Called when OK is pressed to save the setting in the preferences file.
     14     * Return true when restart is required.
    1415     */
    15     void ok();
     16    boolean ok();
    1617}
  • trunk/src/org/openstreetmap/josm/gui/preferences/ProjectionPreference.java

    r1169 r1180  
    4141        }
    4242
    43         projectionCombo.addActionListener(gui.requireRestartAction);
    44         coordinatesCombo.addActionListener(gui.requireRestartAction);
    45 
    4643        JPanel projPanel = new JPanel();
    4744        projPanel.setBorder(BorderFactory.createTitledBorder(BorderFactory.createLineBorder(Color.gray), tr("Map Projection")));
     
    5653    }
    5754
    58     public void ok() {
    59         Main.pref.put("projection", projectionCombo.getSelectedItem().getClass().getName());
    60         Main.pref.put("coordinates", ((CoordinateFormat)coordinatesCombo.getSelectedItem()).name());
     55    public boolean ok() {
     56        boolean restart = Main.pref.put("projection",
     57        projectionCombo.getSelectedItem().getClass().getName());
     58        if(Main.pref.put("coordinates",
     59        ((CoordinateFormat)coordinatesCombo.getSelectedItem()).name()))
     60            restart = true;
     61        return restart;
    6162    }
    6263}
  • trunk/src/org/openstreetmap/josm/gui/preferences/ProxyPreferences.java

    r1169 r1180  
    7878    }
    7979
    80     public void ok() {
     80    public boolean ok() {
    8181        Main.pref.put(PROXY_ENABLE, proxyEnable.isSelected());
    8282        Main.pref.put(PROXY_HOST, proxyHost.getText());
     
    8585        Main.pref.put(PROXY_USER, proxyUser.getText());
    8686        Main.pref.put(PROXY_PASS, new String(proxyPass.getPassword()));
     87        return false;
    8788    }
    88 
    8989}
  • trunk/src/org/openstreetmap/josm/gui/preferences/ServerAccessPreference.java

    r1169 r1180  
    5151    }
    5252
    53     public void ok() {
     53    public boolean ok() {
    5454        Main.pref.put("osm-server.url", osmDataServer.getText());
    5555        Main.pref.put("osm-server.username", osmDataUsername.getText());
    56         String pwd = String.valueOf(osmDataPassword.getPassword());
    57         if (pwd.equals(""))
    58             pwd = null;
    59         Main.pref.put("osm-server.password", pwd);
     56        Main.pref.put("osm-server.password", String.valueOf(osmDataPassword.getPassword()));
     57        return false;
    6058    }
    6159}
  • trunk/src/org/openstreetmap/josm/gui/preferences/ShortcutPreference.java

    r1169 r1180  
    3030    }
    3131
    32     public void ok() {
    33    }
     32    public boolean ok() {
     33        return false;
     34    }
    3435
    3536    // Maybe move this to prefPanel? There's no need for it to be here.
     
    8990        }
    9091    }
    91 
    9292}
  • trunk/src/org/openstreetmap/josm/gui/preferences/TaggingPresetPreference.java

    r1169 r1180  
    88import java.awt.event.ActionEvent;
    99import java.awt.event.ActionListener;
     10import java.util.ArrayList;
    1011import java.util.Collection;
    1112import java.util.HashMap;
     
    4445                Main.pref.getBoolean("taggingpreset.enable-defaults", true));
    4546
    46         String annos = Main.pref.get("taggingpreset.sources");
    47         StringTokenizer st = new StringTokenizer(annos, ";");
    48         while (st.hasMoreTokens())
    49             ((DefaultListModel)taggingPresetSources.getModel()).addElement(st.nextToken());
     47        Collection<String> sources = Main.pref.getCollection("taggingpreset.sources", null);
     48        if(sources != null)
     49            for(String s : sources)
     50                ((DefaultListModel)taggingPresetSources.getModel()).addElement(s);
    5051
    5152        JButton addAnno = new JButton(tr("Add"));
     
    5354            public void actionPerformed(ActionEvent e) {
    5455                String source = JOptionPane.showInputDialog(Main.parent, tr("Tagging preset source"));
    55                 if (source == null)
    56                     return;
    57                 ((DefaultListModel)taggingPresetSources.getModel()).addElement(source);
    58                 gui.requiresRestart = true;
     56                if (source != null)
     57                    ((DefaultListModel)taggingPresetSources.getModel()).addElement(source);
    5958            }
    6059        });
     
    6766                else {
    6867                    String source = JOptionPane.showInputDialog(Main.parent, tr("Tagging preset source"), taggingPresetSources.getSelectedValue());
    69                     if (source == null)
    70                         return;
    71                     ((DefaultListModel)taggingPresetSources.getModel()).setElementAt(source, taggingPresetSources.getSelectedIndex());
    72                     gui.requiresRestart = true;
     68                    if (source != null)
     69                        ((DefaultListModel)taggingPresetSources.getModel()).setElementAt(source, taggingPresetSources.getSelectedIndex());
    7370                }
    7471            }
     
    8279                else {
    8380                    ((DefaultListModel)taggingPresetSources.getModel()).remove(taggingPresetSources.getSelectedIndex());
    84                     gui.requiresRestart = true;
    8581                }
    8682            }
     
    107103    }
    108104
    109     public void ok() {
     105    public boolean ok() {
    110106        Main.pref.put("taggingpreset.enable-defaults", enableDefault.getSelectedObjects() != null);
    111         if (taggingPresetSources.getModel().getSize() > 0) {
    112             StringBuilder sb = new StringBuilder();
    113             for (int i = 0; i < taggingPresetSources.getModel().getSize(); ++i)
    114                 sb.append(";"+taggingPresetSources.getModel().getElementAt(i));
    115             Main.pref.put("taggingpreset.sources", sb.toString().substring(1));
    116         } else
    117             Main.pref.put("taggingpreset.sources", null);
     107        int num = taggingPresetSources.getModel().getSize();
     108        boolean restart;
     109        if (num > 0)
     110        {
     111            ArrayList<String> l = new ArrayList<String>();
     112            for (int i = 0; i < num; ++i)
     113                l.add((String)taggingPresetSources.getModel().getElementAt(i));
     114            restart = Main.pref.putCollection("taggingpreset.sources", l);
     115        }
     116        else
     117            restart = Main.pref.putCollection("taggingpreset.sources", null);
     118        return restart;
    118119    }
    119120
  • trunk/src/org/openstreetmap/josm/gui/preferences/ToolbarPreferences.java

    r1169 r1180  
    234234    }
    235235
    236     public void ok() {
     236    public boolean ok() {
    237237        StringBuilder b = new StringBuilder();
    238238        for (int i = 0; i < selected.size(); ++i) {
     
    250250        Main.pref.put("toolbar", s);
    251251        refreshToolbarControl();
     252        return false;
    252253    }
    253254
Note: See TracChangeset for help on using the changeset viewer.