source: josm/trunk/src/org/openstreetmap/josm/data/osm/visitor/paint/MapPaintSettings.java@ 3159

Last change on this file since 3159 was 3159, checked in by bastiK, 14 years ago

fixed #2801 - Display junction nodes with a different style à la Potlatch

  • Property svn:eol-style set to native
  • Property svn:mime-type set to text/plain
File size: 4.4 KB
Line 
1// License: GPL. For details, see LICENSE file.
2package org.openstreetmap.josm.data.osm.visitor.paint;
3
4import java.awt.Color;
5
6import org.openstreetmap.josm.Main;
7import org.openstreetmap.josm.data.Preferences.PreferenceChangeEvent;
8import org.openstreetmap.josm.data.Preferences.PreferenceChangedListener;
9
10public class MapPaintSettings implements PreferenceChangedListener {
11
12 public static final MapPaintSettings INSTANCE = new MapPaintSettings();
13
14 private boolean useRealWidth;
15 private boolean showDirectionArrow;
16 private boolean showRelevantDirectionsOnly;
17 private int defaultSegmentWidth;
18 private boolean showOrderNumber;
19 private boolean showHeadArrowOnly;
20 private int showNamesDistance;
21 private int useStrokesDistance;
22 private int showIconsDistance;
23 private int selectedNodeSize;
24 private int junctionNodeSize;
25 private int unselectedNodeSize;
26 private boolean fillSelectedNode;
27 private boolean fillUnselectedNode;
28 private boolean fillTaggedNode;
29 private Color selectedColor;
30 private Color highlightColor;
31 private Color inactiveColor;
32 private Color nodeColor;
33
34 private MapPaintSettings() {
35 load();
36 Main.pref.addPreferenceChangeListener(this);
37 }
38
39 private void load() {
40 showDirectionArrow = Main.pref.getBoolean("draw.segment.direction", true);
41 showRelevantDirectionsOnly = Main.pref.getBoolean("draw.segment.relevant_directions_only", true);
42 useRealWidth = Main.pref.getBoolean("mappaint.useRealWidth", false);
43 defaultSegmentWidth = Main.pref.getInteger("mappaint.segment.default-width", 2);
44
45 selectedColor = PaintColors.SELECTED.get();
46 highlightColor = PaintColors.HIGHLIGHT.get();
47 inactiveColor = PaintColors.INACTIVE.get();
48 nodeColor = PaintColors.NODE.get();
49
50 showOrderNumber = Main.pref.getBoolean("draw.segment.order_number", false);
51 showHeadArrowOnly = Main.pref.getBoolean("draw.segment.head_only", false);
52
53 showNamesDistance = Main.pref.getInteger("mappaint.shownames", 10000000);
54 useStrokesDistance = Main.pref.getInteger("mappaint.strokes", 10000000);
55 showIconsDistance = Main.pref.getInteger("mappaint.showicons", 10000000);
56
57 selectedNodeSize = Main.pref.getInteger("mappaint.node.selected-size", 5);
58 unselectedNodeSize = Main.pref.getInteger("mappaint.node.unselected-size", 3);
59 junctionNodeSize = Main.pref.getInteger("mappaint.node.junction-size", 5);
60 fillSelectedNode = Main.pref.getBoolean("mappaint.node.fill-selected", true);
61 fillUnselectedNode = Main.pref.getBoolean("mappaint.node.fill-unselected", false);
62 fillTaggedNode = Main.pref.getBoolean("mappaint.node.fill-tagged", true);
63 }
64
65 public void preferenceChanged(PreferenceChangeEvent e) {
66 load();
67 }
68
69 public boolean isUseRealWidth() {
70 return useRealWidth;
71 }
72
73 public boolean isShowDirectionArrow() {
74 return showDirectionArrow;
75 }
76
77 public boolean isShowRelevantDirectionsOnly() {
78 return showRelevantDirectionsOnly;
79 }
80
81 public int getDefaultSegmentWidth() {
82 return defaultSegmentWidth;
83 }
84
85 public Color getSelectedColor() {
86 return selectedColor;
87 }
88
89 public Color getHighlightColor() {
90 return highlightColor;
91 }
92
93 public Color getInactiveColor() {
94 return inactiveColor;
95 }
96
97 public boolean isShowOrderNumber() {
98 return showOrderNumber;
99 }
100
101 public void setShowHeadArrowOnly(boolean showHeadArrowOnly) {
102 this.showHeadArrowOnly = showHeadArrowOnly;
103 }
104
105 public boolean isShowHeadArrowOnly() {
106 return showHeadArrowOnly;
107 }
108
109 public int getShowNamesDistance() {
110 return showNamesDistance;
111 }
112
113 public int getUseStrokesDistance() {
114 return useStrokesDistance;
115 }
116
117 public Color getNodeColor() {
118 return nodeColor;
119 }
120
121 public int getShowIconsDistance() {
122 return showIconsDistance;
123 }
124
125 public int getSelectedNodeSize() {
126 return selectedNodeSize;
127 }
128
129 public int getJunctionNodeSize() {
130 return junctionNodeSize;
131 }
132
133 public int getUnselectedNodeSize() {
134 return unselectedNodeSize;
135 }
136
137 public boolean isFillSelectedNode() {
138 return fillSelectedNode;
139 }
140
141 public boolean isFillUnselectedNode() {
142 return fillUnselectedNode;
143 }
144
145 public boolean isFillTaggedNode() {
146 return fillTaggedNode;
147 }
148}
Note: See TracBrowser for help on using the repository browser.