source: josm/trunk/src/org/openstreetmap/josm/data/osm/Filter.java @ 5241

Revision 4895, 2.4 KB checked in by stoecker, 4 months ago (diff)

remove deprecation

  • Property svn:eol-style set to native
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.data.osm;
3
4import static org.openstreetmap.josm.tools.Utils.equal;
5
6import org.openstreetmap.josm.actions.search.SearchAction.SearchMode;
7import org.openstreetmap.josm.actions.search.SearchAction.SearchSetting;
8import org.openstreetmap.josm.data.Preferences.pref;
9import org.openstreetmap.josm.data.Preferences.writeExplicitly;
10import org.openstreetmap.josm.tools.Utils;
11
12/**
13 *
14 * @author Petr_DlouhÜ
15 */
16public class Filter extends SearchSetting {
17    private static final String version = "1";
18
19    public boolean enable = true;
20    public boolean hiding = false;
21    public boolean inverted = false;
22
23    public Filter() {
24        super("", SearchMode.add, false, false, false);
25    }
26    public Filter(String text, SearchMode mode, boolean caseSensitive,
27            boolean regexSearch, boolean allElements) {
28        super(text, mode, caseSensitive, regexSearch, allElements);
29    }
30
31    public Filter(FilterPreferenceEntry e) {
32        super(e.text, SearchMode.add, false, false, false);
33        if (equal(e.mode, "replace")) {
34            mode = SearchMode.replace;
35        } else if (equal(e.mode, "add")) {
36            mode = SearchMode.add;
37        } else if (equal(e.mode, "remove")) {
38            mode = SearchMode.remove;
39        } else  if (equal(e.mode, "in_selection")) {
40            mode = SearchMode.in_selection;
41        }
42        caseSensitive = e.case_sensitive;
43        regexSearch = e.regex_search;
44        enable = e.enable;
45        hiding = e.hiding;
46        inverted = e.inverted;
47    }
48
49    public static class FilterPreferenceEntry {
50        @pref @writeExplicitly public String version = "1";
51        @pref public String text = null;
52        @pref @writeExplicitly public String mode = "add";
53        @pref public boolean case_sensitive = false;
54        @pref public boolean regex_search = false;
55        @pref @writeExplicitly public boolean enable = true;
56        @pref @writeExplicitly public boolean hiding = false;
57        @pref @writeExplicitly public boolean inverted = false;
58    }
59
60    public FilterPreferenceEntry getPreferenceEntry() {
61        FilterPreferenceEntry e = new FilterPreferenceEntry();
62        e.version = version;
63        e.text = text;
64        e.mode = mode.toString();
65        e.case_sensitive = caseSensitive;
66        e.regex_search = regexSearch;
67        e.enable = enable;
68        e.hiding = hiding;
69        e.inverted = inverted;
70        return e;
71    }
72}
Note: See TracBrowser for help on using the repository browser.