Changeset 17651 in josm for trunk


Ignore:
Timestamp:
2021-03-23T23:31:56+01:00 (4 years ago)
Author:
simon04
Message:

see #19078 - Preset preference: extract property constants

Location:
trunk/src/org/openstreetmap/josm/gui
Files:
7 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/gui/preferences/map/TaggingPresetPreference.java

    r17648 r17651  
    170170    @Override
    171171    public void addGui(PreferenceTabbedPane gui) {
    172         sortMenu = new JCheckBox(tr("Sort presets menu alphabetically"),
    173                 Config.getPref().getBoolean("taggingpreset.sortmenu", false));
     172        sortMenu = new JCheckBox(tr("Sort presets menu alphabetically"), TaggingPresets.SORT_MENU.get());
    174173
    175174        final JPanel panel = new JPanel(new GridBagLayout());
     
    186185    public static class TaggingPresetSourceEditor extends SourceEditor {
    187186
    188         private static final String ICONPREF = "taggingpreset.icon.sources";
    189 
    190187        public TaggingPresetSourceEditor() {
    191188            super(SourceType.TAGGING_PRESET, Config.getUrls().getJOSMWebsite()+"/presets", presetSourceProviders, true);
     
    199196        @Override
    200197        public boolean finish() {
    201             return doFinish(PresetPrefHelper.INSTANCE, ICONPREF);
     198            return doFinish(PresetPrefHelper.INSTANCE, TaggingPresets.ICON_SOURCES.getKey());
    202199        }
    203200
     
    209206        @Override
    210207        public Collection<String> getInitialIconPathsList() {
    211             return Config.getPref().getList(ICONPREF, null);
     208            return TaggingPresets.ICON_SOURCES.get();
    212209        }
    213210
     
    249246    @Override
    250247    public boolean ok() {
    251         if (sources.finish()
    252                 || Config.getPref().putBoolean("taggingpreset.sortmenu", sortMenu.getSelectedObjects() != null)) {
     248        if (sources.finish() || TaggingPresets.SORT_MENU.put(sortMenu.getSelectedObjects() != null)) {
    253249            TaggingPresets.destroy();
    254250            TaggingPresets.initialize();
  • trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPreset.java

    r17643 r17651  
    5252import org.openstreetmap.josm.data.osm.search.SearchCompiler.Match;
    5353import org.openstreetmap.josm.data.osm.search.SearchParseError;
     54import org.openstreetmap.josm.data.preferences.BooleanProperty;
    5455import org.openstreetmap.josm.gui.ExtendedDialog;
    5556import org.openstreetmap.josm.gui.MainApplication;
     
    6768import org.openstreetmap.josm.gui.tagging.presets.items.Space;
    6869import org.openstreetmap.josm.gui.util.GuiHelper;
    69 import org.openstreetmap.josm.spi.preferences.Config;
    7070import org.openstreetmap.josm.tools.GBC;
    7171import org.openstreetmap.josm.tools.ImageProvider;
     
    100100
    101101    /**
     102     * Defines whether the validator should be active in the preset dialog
     103     * @see TaggingPresetValidation
     104     */
     105    public static final BooleanProperty USE_VALIDATOR = new BooleanProperty("taggingpreset.validator", false);
     106
     107    /**
    102108     * The preset group this preset belongs to.
    103109     */
     
    228234        }
    229235        File arch = TaggingPresetReader.getZipIcons();
    230         final Collection<String> s = Config.getPref().getList("taggingpreset.icon.sources", null);
     236        final Collection<String> s = TaggingPresets.ICON_SOURCES.get();
    231237        this.iconFuture = new CompletableFuture<>();
    232238        new ImageProvider(iconName)
     
    359365        }
    360366
    361         if (selected.size() == 1 && Config.getPref().getBoolean("taggingpreset.validator", false)) {
     367        if (selected.size() == 1 && USE_VALIDATOR.get()) {
    362368            itemGuiSupport.addListener((source, key, newValue) ->
    363369                    TaggingPresetValidation.validateAsync(selected.iterator().next(), validationLabel, getChangedTags()));
  • trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresetItem.java

    r17609 r17651  
    2020import org.openstreetmap.josm.data.osm.OsmPrimitive;
    2121import org.openstreetmap.josm.data.osm.Tag;
     22import org.openstreetmap.josm.data.preferences.BooleanProperty;
    2223import org.openstreetmap.josm.gui.tagging.ac.AutoCompletingTextField;
    2324import org.openstreetmap.josm.gui.tagging.ac.AutoCompletionList;
    2425import org.openstreetmap.josm.gui.tagging.ac.AutoCompletionManager;
    2526import org.openstreetmap.josm.gui.util.LruCache;
    26 import org.openstreetmap.josm.spi.preferences.Config;
    2727import org.openstreetmap.josm.tools.ImageProvider;
    2828import org.openstreetmap.josm.tools.Logging;
     
    3737    // cache the parsing of types using a LRU cache
    3838    private static final Map<String, Set<TaggingPresetType>> TYPE_CACHE = new LruCache<>(16);
     39    /**
     40     * Display OSM keys as {@linkplain org.openstreetmap.josm.gui.widgets.OsmIdTextField#setHint hint}
     41     */
     42    protected static BooleanProperty DISPLAY_KEYS_AS_HINT = new BooleanProperty("taggingpreset.display-keys-as-hint", true);
    3943
    4044    protected void initAutoCompletionField(AutoCompletingTextField field, String... key) {
     
    132136     */
    133137    public static ImageIcon loadImageIcon(String iconName, File zipIcons, Integer maxSize) {
    134         final Collection<String> s = Config.getPref().getList("taggingpreset.icon.sources", null);
     138        final Collection<String> s = TaggingPresets.ICON_SOURCES.get();
    135139        ImageProvider imgProv = new ImageProvider(iconName).setDirs(s).setId("presets").setArchive(zipIcons).setOptional(true);
    136140        if (maxSize != null && maxSize > 0) {
  • trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresets.java

    r17161 r17651  
    1818import org.openstreetmap.josm.actions.PreferencesAction;
    1919import org.openstreetmap.josm.data.osm.IPrimitive;
     20import org.openstreetmap.josm.data.preferences.BooleanProperty;
     21import org.openstreetmap.josm.data.preferences.IntegerProperty;
     22import org.openstreetmap.josm.data.preferences.ListProperty;
    2023import org.openstreetmap.josm.gui.MainApplication;
    2124import org.openstreetmap.josm.gui.MainMenu;
     
    2730import org.openstreetmap.josm.gui.tagging.presets.items.Roles;
    2831import org.openstreetmap.josm.gui.tagging.presets.items.Roles.Role;
    29 import org.openstreetmap.josm.spi.preferences.Config;
    3032import org.openstreetmap.josm.tools.Logging;
    3133import org.openstreetmap.josm.tools.MultiMap;
     
    4850    /** The collection of listeners */
    4951    private static final Collection<TaggingPresetListener> listeners = new ArrayList<>();
     52    /**
     53     * Sort presets menu alphabetically
     54     */
     55    public static BooleanProperty SORT_MENU = new BooleanProperty("taggingpreset.sortvalues", true);
     56    /**
     57     * Custom icon sources
     58     */
     59    public static final ListProperty ICON_SOURCES = new ListProperty("taggingpreset.icon.sources", null);
     60    private static final IntegerProperty MIN_ELEMENTS_FOR_SCROLLER = new IntegerProperty("taggingpreset.min-elements-for-scroller", 15);
    5061
    5162    private TaggingPresets() {
     
    107118            }
    108119            for (JMenu submenu : submenus.values()) {
    109                 if (submenu.getItemCount() >= Config.getPref().getInt("taggingpreset.min-elements-for-scroller", 15)) {
     120                if (submenu.getItemCount() >= MIN_ELEMENTS_FOR_SCROLLER.get()) {
    110121                    MenuScroller.setScrollerFor(submenu);
    111122                }
    112123            }
    113124        }
    114         if (Config.getPref().getBoolean("taggingpreset.sortmenu")) {
     125        if (SORT_MENU.get()) {
    115126            TaggingPresetMenu.sortMenu(presetsMenu);
    116127        }
  • trunk/src/org/openstreetmap/josm/gui/tagging/presets/items/Combo.java

    r17639 r17651  
    1919import org.openstreetmap.josm.gui.tagging.ac.AutoCompletingTextField;
    2020import org.openstreetmap.josm.gui.tagging.ac.AutoCompletionList;
     21import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetItem;
    2122import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetItemGuiSupport;
    2223import org.openstreetmap.josm.gui.widgets.JosmComboBox;
    23 import org.openstreetmap.josm.spi.preferences.Config;
    2424import org.openstreetmap.josm.tools.ColorHelper;
    2525import org.openstreetmap.josm.tools.GBC;
     
    6767        AutoCompletingTextField tf = new AutoCompletingTextField();
    6868        initAutoCompletionField(tf, key);
    69         if (Config.getPref().getBoolean("taggingpreset.display-keys-as-hint", true)) {
     69        if (TaggingPresetItem.DISPLAY_KEYS_AS_HINT.get()) {
    7070            tf.setHint(key);
    7171        }
  • trunk/src/org/openstreetmap/josm/gui/tagging/presets/items/ComboMultiSelect.java

    r17639 r17651  
    3131import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetItemGuiSupport;
    3232import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetSelector;
    33 import org.openstreetmap.josm.spi.preferences.Config;
     33import org.openstreetmap.josm.gui.tagging.presets.TaggingPresets;
    3434import org.openstreetmap.josm.tools.GBC;
    3535import org.openstreetmap.josm.tools.Logging;
     
    332332        }
    333333
    334         if (values_sort && Config.getPref().getBoolean("taggingpreset.sortvalues", true)) {
     334        if (values_sort && TaggingPresets.SORT_MENU.get()) {
    335335            Collections.sort(entries);
    336336        }
  • trunk/src/org/openstreetmap/josm/gui/tagging/presets/items/Text.java

    r17610 r17651  
    2828import org.openstreetmap.josm.gui.tagging.ac.AutoCompletingTextField;
    2929import org.openstreetmap.josm.gui.tagging.ac.AutoCompletionManager;
     30import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetItem;
    3031import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetItemGuiSupport;
    3132import org.openstreetmap.josm.gui.widgets.JosmComboBox;
    3233import org.openstreetmap.josm.gui.widgets.JosmTextField;
    33 import org.openstreetmap.josm.spi.preferences.Config;
    3434import org.openstreetmap.josm.tools.GBC;
    3535import org.openstreetmap.josm.tools.Logging;
     
    7979            initAutoCompletionField(textField, key);
    8080        }
    81         if (Config.getPref().getBoolean("taggingpreset.display-keys-as-hint", true)) {
     81        if (TaggingPresetItem.DISPLAY_KEYS_AS_HINT.get()) {
    8282            textField.setHint(key);
    8383        }
Note: See TracChangeset for help on using the changeset viewer.