Mercurial > dive4elements > river
annotate artifacts/src/main/java/org/dive4elements/river/themes/ThemeDocument.java @ 8885:e5f688820951
Some minor changes on chart: allow area-themes to consider range; allow for axis-margins
author | gernotbelger |
---|---|
date | Wed, 14 Feb 2018 18:10:28 +0100 |
parents | 5e38e2924c07 |
children | d9c89651bd67 |
rev | line source |
---|---|
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
1 /* Copyright (C) 2011, 2012, 2013 by Bundesanstalt für Gewässerkunde |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
2 * Software engineering by Intevation GmbH |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
3 * |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
4 * This file is Free Software under the GNU AGPL (>=v3) |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
5 * and comes with ABSOLUTELY NO WARRANTY! Check out the |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
6 * documentation coming with Dive4Elements River for details. |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
7 */ |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
8 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
9 package org.dive4elements.river.themes; |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
10 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
11 import java.awt.Color; |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
12 import java.awt.Font; |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
13 import java.util.HashMap; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
14 import java.util.Map; |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
15 |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
16 import org.apache.log4j.Logger; |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
17 import org.dive4elements.artifacts.CallMeta; |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
18 import org.dive4elements.river.artifacts.model.MapserverStyle; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
19 import org.dive4elements.river.artifacts.model.MapserverStyle.Clazz; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
20 import org.dive4elements.river.artifacts.model.MapserverStyle.Expression; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
21 import org.dive4elements.river.artifacts.model.MapserverStyle.Label; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
22 import org.dive4elements.river.artifacts.model.MapserverStyle.Style; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
23 import org.dive4elements.river.artifacts.resources.Resources; |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
24 import org.w3c.dom.Document; |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
25 import org.w3c.dom.Element; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
26 import org.w3c.dom.NodeList; |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
27 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
28 public class ThemeDocument |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
29 { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7820
diff
changeset
|
30 private static Logger log = Logger.getLogger(ThemeDocument.class); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
31 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
32 private static final String MSG_ISOBATH_CLASS = "floodmap.isobath.class"; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
33 |
8856 | 34 private static final String MSG_ISOBATH_LASTCLASS = |
35 "floodmap.isobath.lastclass"; | |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
36 |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
37 public final static String FILL_COLOR = "fillcolor"; |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
38 |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
39 public final static String LINE_COLOR = "linecolor"; |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
40 |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
41 public final static String AREA_LINE_COLOR = "areabordercolor"; |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
42 |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
43 public static final String LINE_SIZE = "linesize"; |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
44 |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
45 public static final String LINE_STYLE = "linetype"; |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
46 |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
47 public static final String POINT_SIZE = "pointsize"; |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
48 |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
49 public static final String POINT_COLOR = "pointcolor"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
50 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
51 public final static String SHOW_BORDER = "showborder"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
52 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
53 public final static String AREA_SHOW_BORDER = "showborder"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
54 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
55 public final static String SHOW_POINTS = "showpoints"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
56 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
57 public final static String SHOW_LINE = "showlines"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
58 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
59 public final static String SHOW_VERTICAL_LINE = "showverticalline"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
60 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
61 public final static String SHOW_HORIZONTAL_LINE = "showhorizontalline"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
62 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
63 public final static String SHOW_LINE_LABEL = "showlinelabel"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
64 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
65 public final static String SHOW_POINT_LABEL = "showpointlabel"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
66 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
67 public final static String SHOW_WIDTH = "showwidth"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
68 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
69 public final static String SHOW_LEVEL = "showlevel"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
70 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
71 public final static String TRANSPARENCY = "transparency"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
72 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
73 public final static String AREA_TRANSPARENCY = "areatransparency"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
74 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
75 public final static String SHOW_AREA = "showarea"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
76 |
7119
988dde49ae65
Fix area label rendering.
Andre Heinecke <aheinecke@intevation.de>
parents:
6962
diff
changeset
|
77 public final static String SHOW_AREA_LABEL = "showarealabel"; |
988dde49ae65
Fix area label rendering.
Andre Heinecke <aheinecke@intevation.de>
parents:
6962
diff
changeset
|
78 |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
79 public final static String SHOW_MIDDLE_HEIGHT = "showmiddleheight"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
80 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
81 public final static String LABEL_FONT_COLOR = "labelfontcolor"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
82 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
83 public final static String LABEL_FONT_SIZE = "labelfontsize"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
84 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
85 public final static String LABEL_FONT_FACE = "labelfontface"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
86 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
87 public final static String LABEL_FONT_STYLE = "labelfontstyle"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
88 |
7582
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
89 public final static String FONT = "font"; |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
90 |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
91 public final static String TEXT_SIZE = "textsize"; |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
92 |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
93 public final static String TEXT_STYLE = "textstyle"; |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
94 |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
95 public final static String TEXT_ORIENTATION = "textorientation"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
96 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
97 public final static String LABEL_BGCOLOR = "labelbgcolor"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
98 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
99 public final static String LABEL_SHOW_BACKGROUND = "labelshowbg"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
100 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
101 public final static String BACKGROUND_COLOR = "backgroundcolor"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
102 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
103 public final static String AREA_BACKGROUND_COLOR = "areabgcolor"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
104 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
105 public final static String SYMBOL = "symbol"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
106 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
107 public final static String SHOW_MINIMUM = "showminimum"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
108 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
109 public final static String SHOW_MAXIMUM = "showmaximum"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
110 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
111 public final static String WSPLGEN_STARTCOLOR = "startcolor"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
112 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
113 public final static String WSPLGEN_ENDCOLOR = "endcolor"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
114 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
115 public final static String WSPLGEN_NUMCLASSES = "numclasses"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
116 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
117 public final static String BANDWIDTH = "bandwidth"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
118 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
119 public final static String SHOWEXTRAMARK = "showextramark"; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
120 |
7545
4dbbdf0c8b2c
More on flys/issue1585: Do not fill circle for interpolated W/Q points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7119
diff
changeset
|
121 public final static String USE_FILL_PAINT = "usefillpaint"; |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
122 |
8885
e5f688820951
Some minor changes on chart: allow area-themes to consider range; allow for axis-margins
gernotbelger
parents:
8856
diff
changeset
|
123 /* boolean parameter if the range of this theme should be considered when auto-zooming. Only works for area-series at the moment */ |
e5f688820951
Some minor changes on chart: allow area-themes to consider range; allow for axis-margins
gernotbelger
parents:
8856
diff
changeset
|
124 private static final String CALCULATE_RANGE = "calculateRange"; |
e5f688820951
Some minor changes on chart: allow area-themes to consider range; allow for axis-margins
gernotbelger
parents:
8856
diff
changeset
|
125 |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
126 private Map<String, String> values; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
127 |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
128 public ThemeDocument() { |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
129 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
130 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
131 public ThemeDocument(Document document) { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
132 values = extractValues(document); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
133 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
134 |
7545
4dbbdf0c8b2c
More on flys/issue1585: Do not fill circle for interpolated W/Q points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7119
diff
changeset
|
135 public ThemeDocument(ThemeDocument other) { |
4dbbdf0c8b2c
More on flys/issue1585: Do not fill circle for interpolated W/Q points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7119
diff
changeset
|
136 values = new HashMap<String, String>(other.values); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
137 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
138 |
7545
4dbbdf0c8b2c
More on flys/issue1585: Do not fill circle for interpolated W/Q points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7119
diff
changeset
|
139 |
4dbbdf0c8b2c
More on flys/issue1585: Do not fill circle for interpolated W/Q points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7119
diff
changeset
|
140 public String getValue(String key) { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
141 return values.get(key); |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
142 } |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
143 |
7545
4dbbdf0c8b2c
More on flys/issue1585: Do not fill circle for interpolated W/Q points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7119
diff
changeset
|
144 public void setValue(String key, String value) { |
4dbbdf0c8b2c
More on flys/issue1585: Do not fill circle for interpolated W/Q points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7119
diff
changeset
|
145 values.put(key, value); |
4dbbdf0c8b2c
More on flys/issue1585: Do not fill circle for interpolated W/Q points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7119
diff
changeset
|
146 } |
4dbbdf0c8b2c
More on flys/issue1585: Do not fill circle for interpolated W/Q points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7119
diff
changeset
|
147 |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
148 private static Map<String, String> extractValues(Document document) { |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
149 Map<String, String> values = new HashMap<String, String>(); |
6962
234b1a3b527d
Workaround for flys/issue14070. TODO: Find the reason why a null document is given to the ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6912
diff
changeset
|
150 if (document == null) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7820
diff
changeset
|
151 log.error("Invalid null document given."); |
6962
234b1a3b527d
Workaround for flys/issue14070. TODO: Find the reason why a null document is given to the ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6912
diff
changeset
|
152 return values; |
234b1a3b527d
Workaround for flys/issue14070. TODO: Find the reason why a null document is given to the ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6912
diff
changeset
|
153 } |
234b1a3b527d
Workaround for flys/issue14070. TODO: Find the reason why a null document is given to the ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6912
diff
changeset
|
154 |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
155 NodeList fields = document.getElementsByTagName("field"); |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
156 for (int i = 0, N = fields.getLength(); i < N; ++i) { |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
157 Element field = (Element)fields.item(i); |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
158 String name = field.getAttribute("name"); |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
159 String value = field.getAttribute("default"); |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
160 if (!name.isEmpty() && !value.isEmpty()) { |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
161 values.put(name, value); |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
162 } |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
163 } |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7820
diff
changeset
|
164 if (log.isDebugEnabled()) { |
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7820
diff
changeset
|
165 log.debug("Theme values: " + values); |
6912
058b8dc4e8b6
Artifacts: ThemeDocument. More debug output. Make more getters private to only expose the parsed values.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6909
diff
changeset
|
166 } |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
167 return values; |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
168 } |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
169 |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
170 /** Parse string to be boolean with default if empty or unrecognized. */ |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
171 private static boolean parseBoolean(String value, boolean defaultsTo) { |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
172 if (value == null) { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
173 return defaultsTo; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
174 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
175 if (value.equals("false")) { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
176 return false; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
177 } |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
178 if (value.equals("true")) { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
179 return true; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
180 } |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
181 return defaultsTo; |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
182 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
183 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
184 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
185 /** |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
186 * Attempt converting \param value to an integer, in failing cases, |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
187 * return \param defaultsTo. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
188 * @param value String to be converted to integer. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
189 * @param defaultsTo Default to return if conversion failed. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
190 * @return \param value as integer or defaultsto if conversion failed. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
191 */ |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
192 private static int parseInteger(String value, int defaultsTo) { |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
193 if (value == null) { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
194 return defaultsTo; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
195 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
196 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
197 try { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
198 return Integer.parseInt(value); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
199 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
200 catch (NumberFormatException nfe) { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
201 // do nothing |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
202 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
203 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
204 return defaultsTo; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
205 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
206 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
207 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
208 /** |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
209 * Attempt converting \param value to a double, in failing cases, |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
210 * return \param defaultsTo. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
211 * @param value String to be converted to double. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
212 * @param defaultsTo Default to return if conversion failed. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
213 * @return \param value as integer or defaultsto if conversion failed. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
214 */ |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
215 private static double parseDouble(String value, double defaultsTo) { |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
216 if (value == null) { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
217 return defaultsTo; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
218 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
219 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
220 try { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
221 return Double.parseDouble(value); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
222 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
223 catch (NumberFormatException nfe) { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
224 // do nothing |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
225 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
226 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
227 return defaultsTo; |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
228 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
229 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
230 public boolean parseShowLineLabel() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
231 String show = getValue(SHOW_LINE_LABEL); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
232 return parseBoolean(show, false); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
233 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
234 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
235 public boolean parseShowWidth() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
236 String show = getValue(SHOW_WIDTH); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
237 return parseBoolean(show, false); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
238 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
239 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
240 public boolean parseShowLevel() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
241 String show = getValue(SHOW_LEVEL); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
242 return parseBoolean(show, false); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
243 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
244 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
245 public String parseTextOrientation() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
246 String o = getValue(TEXT_ORIENTATION); |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
247 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
248 return o != null && "true".equals(o) |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
249 ? "horizontal" |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
250 : "vertical"; |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
251 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
252 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
253 public boolean parseShowMiddleHeight() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
254 String show = getValue(SHOW_MIDDLE_HEIGHT); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
255 return parseBoolean(show, false); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
256 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
257 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
258 public boolean parseLabelShowBackground() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
259 String show = getValue(LABEL_SHOW_BACKGROUND); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
260 return parseBoolean(show, false); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
261 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
262 |
7582
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
263 public Font parseFont() { |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
264 String font = getValue(FONT); |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7820
diff
changeset
|
265 log.debug(" font is " + font); |
7582
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
266 if (font == null) { |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
267 return null; |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
268 } |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
269 |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
270 int size = parseFontSize(); |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
271 int style = parseFontStyle(); |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
272 Font f = new Font(font, style, size); |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
273 return f; |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
274 } |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
275 |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
276 public Font parseTextFont() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
277 String font = getValue(LABEL_FONT_FACE); |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
278 if (font == null) { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
279 return null; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
280 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
281 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
282 int size = parseTextSize(); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
283 int style = parseTextStyle(); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
284 Font f = new Font(font, style, size); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
285 return f; |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
286 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
287 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
288 public Color parseTextColor() { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
289 return parseRGB(getTextColorString()); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
290 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
291 |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
292 private String getTextColorString() { |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
293 return getValue(LABEL_FONT_COLOR); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
294 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
295 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
296 public Color parseTextBackground() { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
297 String color = getLabelBackgroundColorString(); |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
298 return color != null |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
299 ? parseRGB(color) |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
300 : Color.WHITE; |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
301 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
302 |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
303 private String getLabelBackgroundColorString() { |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
304 return getValue(LABEL_BGCOLOR); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
305 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
306 |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
307 public int parseLineWidth() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
308 String size = getValue(LINE_SIZE); |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
309 if (size == null) { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
310 return 0; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
311 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
312 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
313 try { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
314 return Integer.parseInt(size); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
315 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
316 catch (NumberFormatException nfe) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7820
diff
changeset
|
317 log.warn("Unable to set line size from string: '" + size + "'"); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
318 } |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
319 return 0; |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
320 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
321 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
322 public float [] parseLineStyle() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
323 String dash = getValue(LINE_STYLE); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
324 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
325 float[] def = {10}; |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
326 if (dash == null) { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
327 return def; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
328 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
329 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
330 String[] pattern = dash.split(","); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
331 if(pattern.length == 1) { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
332 return def; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
333 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
334 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
335 try { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
336 float[] dashes = new float[pattern.length]; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
337 for (int i = 0; i < pattern.length; i++) { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
338 dashes[i] = Float.parseFloat(pattern[i]); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
339 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
340 return dashes; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
341 } |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
342 catch (NumberFormatException nfe) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7820
diff
changeset
|
343 log.warn("Unable to set dash from string: '" + dash + "'"); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
344 return def; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
345 } |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
346 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
347 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
348 public int parsePointWidth() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
349 String width = getValue(POINT_SIZE); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
350 return parseInteger(width, 3); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
351 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
352 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
353 public Color parsePointColor() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
354 String color = getValue(POINT_COLOR); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
355 return parseColor(color); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
356 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
357 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
358 public boolean parseShowPoints() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
359 String show = getValue(SHOW_POINTS); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
360 return parseBoolean(show, false); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
361 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
362 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
363 public boolean parseShowLine() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
364 String show = getValue(SHOW_LINE); |
8635
c421c9530aba
Do not show lines if showlines is not set.
Andre Heinecke <andre.heinecke@intevation.de>
parents:
8444
diff
changeset
|
365 return parseBoolean(show, false); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
366 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
367 |
7582
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
368 public int parseFontStyle() { |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
369 String style = getValue(TEXT_STYLE); |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
370 if (style == null) { |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
371 return Font.PLAIN; |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
372 } |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
373 |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
374 if (style.equals("italic")) { |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
375 return Font.ITALIC; |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
376 } |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
377 if (style.equals("bold")) { |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
378 return Font.BOLD; |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
379 } |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
380 return Font.PLAIN; |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
381 } |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
382 |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
383 public int parseTextStyle() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
384 String style = getValue(LABEL_FONT_STYLE); |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
385 if (style == null) { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
386 return Font.PLAIN; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
387 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
388 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
389 if (style.equals("italic")) { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
390 return Font.ITALIC; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
391 } |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
392 if (style.equals("bold")) { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
393 return Font.BOLD; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
394 } |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
395 return Font.PLAIN; |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
396 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
397 |
7583
4b67eb1a3a68
issue1606: Handle annotation text as well.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7582
diff
changeset
|
398 /** Handle info for label or annotation text. */ |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
399 public TextStyle parseComplexTextStyle() { |
7583
4b67eb1a3a68
issue1606: Handle annotation text as well.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7582
diff
changeset
|
400 Font font = parseTextFont(); |
4b67eb1a3a68
issue1606: Handle annotation text as well.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7582
diff
changeset
|
401 // Try the annotation text styles. |
4b67eb1a3a68
issue1606: Handle annotation text as well.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7582
diff
changeset
|
402 if (font == null) { |
4b67eb1a3a68
issue1606: Handle annotation text as well.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7582
diff
changeset
|
403 font = parseFont(); |
4b67eb1a3a68
issue1606: Handle annotation text as well.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7582
diff
changeset
|
404 } |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
405 return new TextStyle( |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
406 parseTextColor(), |
7583
4b67eb1a3a68
issue1606: Handle annotation text as well.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7582
diff
changeset
|
407 font, |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
408 parseTextBackground(), |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
409 parseLabelShowBackground(), |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
410 !parseTextOrientation().equals("horizontal")); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
411 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
412 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
413 public LineStyle parseComplexLineStyle() { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
414 return new LineStyle( |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
415 parseLineColorField(), |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
416 Integer.valueOf(parseLineWidth())); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
417 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
418 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
419 public boolean parseShowVerticalLine() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
420 String show = getValue(SHOW_VERTICAL_LINE); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
421 return parseBoolean(show, true); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
422 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
423 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
424 public boolean parseShowHorizontalLine() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
425 String show = getValue(SHOW_HORIZONTAL_LINE); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
426 return parseBoolean(show, true); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
427 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
428 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
429 public double parseBandWidth() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
430 String bandWidth = getValue(BANDWIDTH); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
431 return parseDouble(bandWidth, 0); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
432 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
433 |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
434 private static Color parseColor(String colorString) { |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
435 if (colorString == null) { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
436 return null; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
437 } |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
438 if (colorString.indexOf("#") == 0) { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
439 return parseHexColor(colorString); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
440 } |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
441 if (colorString.indexOf(",") >= 0) { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
442 return parseRGB(colorString); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
443 } |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
444 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
445 return null; |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
446 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
447 |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
448 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
449 /** |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
450 * Parse a string like "#00CC22" and return the corresponding color. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
451 * |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
452 * @param hex The hex color value. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
453 * |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
454 * @return a Color or null, if <i>hex</i> is empty. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
455 */ |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
456 private static Color parseHexColor(String hex) { |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
457 return hex != null |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
458 ? Color.decode(hex) |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
459 : null; |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
460 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
461 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
462 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
463 public boolean parseShowArea() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
464 String show = getValue(SHOW_AREA); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
465 return parseBoolean(show, false); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
466 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
467 |
7119
988dde49ae65
Fix area label rendering.
Andre Heinecke <aheinecke@intevation.de>
parents:
6962
diff
changeset
|
468 public boolean parseShowAreaLabel() { |
988dde49ae65
Fix area label rendering.
Andre Heinecke <aheinecke@intevation.de>
parents:
6962
diff
changeset
|
469 String show = getValue(SHOW_AREA_LABEL); |
988dde49ae65
Fix area label rendering.
Andre Heinecke <aheinecke@intevation.de>
parents:
6962
diff
changeset
|
470 return parseBoolean(show, false); |
988dde49ae65
Fix area label rendering.
Andre Heinecke <aheinecke@intevation.de>
parents:
6962
diff
changeset
|
471 } |
988dde49ae65
Fix area label rendering.
Andre Heinecke <aheinecke@intevation.de>
parents:
6962
diff
changeset
|
472 |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
473 public boolean parseShowPointLabel() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
474 String show = getValue(SHOW_POINT_LABEL); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
475 return parseBoolean(show, false); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
476 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
477 |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
478 public boolean parseShowExtraMark() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
479 String show = getValue(SHOWEXTRAMARK); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
480 return parseBoolean(show, false); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
481 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
482 |
7545
4dbbdf0c8b2c
More on flys/issue1585: Do not fill circle for interpolated W/Q points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7119
diff
changeset
|
483 public Boolean parseUseFillPaint() { |
4dbbdf0c8b2c
More on flys/issue1585: Do not fill circle for interpolated W/Q points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7119
diff
changeset
|
484 String use = getValue(USE_FILL_PAINT); |
4dbbdf0c8b2c
More on flys/issue1585: Do not fill circle for interpolated W/Q points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7119
diff
changeset
|
485 return use != null |
4dbbdf0c8b2c
More on flys/issue1585: Do not fill circle for interpolated W/Q points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7119
diff
changeset
|
486 ? parseBoolean(use, false) |
4dbbdf0c8b2c
More on flys/issue1585: Do not fill circle for interpolated W/Q points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7119
diff
changeset
|
487 : null; |
4dbbdf0c8b2c
More on flys/issue1585: Do not fill circle for interpolated W/Q points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7119
diff
changeset
|
488 } |
4dbbdf0c8b2c
More on flys/issue1585: Do not fill circle for interpolated W/Q points.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7119
diff
changeset
|
489 |
7582
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
490 public int parseFontSize() { |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
491 String size = getValue(TEXT_SIZE); |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
492 if (size == null) { |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
493 return 10; |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
494 } |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
495 |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
496 try { |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
497 return Integer.parseInt(size); |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
498 } |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
499 catch (NumberFormatException nfe) { |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
500 // Do nothing |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
501 } |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
502 return 10; |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
503 } |
8ebca831486b
issue1606: Added methods to parse omitted theme properties.
Felix Wolfsteller <felix.wolfsteller@intevation.de>
parents:
7545
diff
changeset
|
504 |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
505 public int parseTextSize() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
506 String size = getValue(LABEL_FONT_SIZE); |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
507 if (size == null) { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
508 return 10; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
509 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
510 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
511 try { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
512 return Integer.parseInt(size); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
513 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
514 catch (NumberFormatException nfe) { |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
515 // Do nothing |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
516 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
517 return 10; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
518 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
519 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
520 /** |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
521 * Parse a string like "103, 100, 0" and return a corresping color. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
522 * @param rgbtext Color as string representation, e.g. "255,0,20". |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
523 * @return Color, null in case of issues. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
524 */ |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
525 public static Color parseRGB(String rgbtext) { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
526 if (rgbtext == null) { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
527 return null; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
528 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
529 String rgb[] = rgbtext.split(","); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
530 try { |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
531 return new Color( |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
532 Integer.parseInt(rgb[0].trim()), |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
533 Integer.parseInt(rgb[1].trim()), |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
534 Integer.parseInt(rgb[2].trim())); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
535 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
536 catch (NumberFormatException nfe) { |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
537 // Do nothing |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
538 } |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
539 return null; |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
540 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
541 |
6912
058b8dc4e8b6
Artifacts: ThemeDocument. More debug output. Make more getters private to only expose the parsed values.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6909
diff
changeset
|
542 private String getLineColorString() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
543 return getValue(LINE_COLOR); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
544 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
545 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
546 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
547 /** Get show border as string. */ |
6912
058b8dc4e8b6
Artifacts: ThemeDocument. More debug output. Make more getters private to only expose the parsed values.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6909
diff
changeset
|
548 private String getShowBorderString() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
549 return getValue(SHOW_BORDER); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
550 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
551 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
552 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
553 /** Get fill color as string. */ |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
554 private String getFillColorString() { |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
555 return getValue(FILL_COLOR); |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
556 } |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
557 |
6912
058b8dc4e8b6
Artifacts: ThemeDocument. More debug output. Make more getters private to only expose the parsed values.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6909
diff
changeset
|
558 private String getSymbol() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
559 return getValue(SYMBOL); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
560 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
561 |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
562 private String getTransparencyString() { |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
563 return getValue(TRANSPARENCY); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
564 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
565 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
566 |
6912
058b8dc4e8b6
Artifacts: ThemeDocument. More debug output. Make more getters private to only expose the parsed values.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6909
diff
changeset
|
567 private String getAreaTransparencyString() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
568 return getValue(AREA_TRANSPARENCY); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
569 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
570 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
571 |
6912
058b8dc4e8b6
Artifacts: ThemeDocument. More debug output. Make more getters private to only expose the parsed values.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6909
diff
changeset
|
572 private String getShowMinimum() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
573 return getValue(SHOW_MINIMUM); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
574 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
575 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
576 |
6912
058b8dc4e8b6
Artifacts: ThemeDocument. More debug output. Make more getters private to only expose the parsed values.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6909
diff
changeset
|
577 private String getShowMaximum() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
578 return getValue(SHOW_MAXIMUM); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
579 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
580 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
581 /** |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
582 * Gets color from color field. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
583 * @param theme the theme document. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
584 * @return color. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
585 */ |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
586 public Color parseFillColorField() { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
587 return parseRGB(getFillColorString()); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
588 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
589 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
590 public boolean parseShowBorder() { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
591 return parseBoolean(getShowBorderString(), false); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
592 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
593 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
594 public int parseTransparency() { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
595 return parseInteger(getTransparencyString(), 50); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
596 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
597 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
598 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
599 /** |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
600 * Gets color from color field. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
601 * @return color. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
602 */ |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
603 public Color parseLineColorField() { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
604 String lineColorStr = getLineColorString(); |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7820
diff
changeset
|
605 if (log.isDebugEnabled()) { |
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7820
diff
changeset
|
606 log.debug("parseLineColorField: lineColorStr = " + |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
607 (lineColorStr == null |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
608 ? "null" |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
609 : lineColorStr)); |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
610 } |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
611 return parseColor(lineColorStr); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
612 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
613 |
8885
e5f688820951
Some minor changes on chart: allow area-themes to consider range; allow for axis-margins
gernotbelger
parents:
8856
diff
changeset
|
614 // FIXME: check, this is defined in default.xml, but never used. Instead the StyledAreaSeriesCollection used lineColor etc |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
615 public Color parseAreaLineColorField() { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
616 String lineColorStr = getAreaLineColorString(); |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7820
diff
changeset
|
617 if (log.isDebugEnabled()) { |
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7820
diff
changeset
|
618 log.debug("parseLineColorField: lineColorStr = " + |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
619 (lineColorStr == null |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
620 ? "null" |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
621 : lineColorStr)); |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
622 } |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
623 return parseColor(lineColorStr); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
624 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
625 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
626 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
627 private String getAreaLineColorString() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
628 return getValue(AREA_LINE_COLOR); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
629 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
630 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
631 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
632 public boolean parseShowMinimum() { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
633 return parseBoolean(getShowMinimum(), false); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
634 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
635 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
636 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
637 public boolean parseShowMaximum() { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
638 return parseBoolean(getShowMaximum(), false); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
639 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
640 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
641 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
642 /** |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
643 * Creates a MapserverStyle from the given XML theme. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
644 * This method uses a start- and endcolor to interpolate a |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
645 * given number of color classes for the MapserverStyle. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
646 * @param theme |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
647 * @return String representation of the MapserverStyle |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
648 */ |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
649 public String createDynamicMapserverStyle( |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
650 float from, |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
651 float to, |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
652 float step, |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
653 CallMeta meta |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
654 ) { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
655 MapserverStyle ms = new MapserverStyle(); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
656 |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
657 String strStartColor = getValue(WSPLGEN_STARTCOLOR); |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
658 Color startColor = strStartColor != null |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
659 ? parseColor(strStartColor) |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
660 : new Color(178, 201, 215); |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
661 String strEndColor = getValue(WSPLGEN_ENDCOLOR); |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
662 Color endColor = strEndColor != null |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
663 ? parseColor(strEndColor) |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
664 : new Color(2, 27, 42); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
665 |
7820
6b880df95a3a
Fixed WSPLGEN classes. Allow 0 for 'to' in differences.
Raimund Renkert <rrenkert@intevation.de>
parents:
7583
diff
changeset
|
666 to = to >= 0 ? to : 9999; |
8444
666ac28a0256
In case to equals from, and only in this case, there should be only one class. Then we have to set an arbitrary value > 0 for step because the user is allowed to give step=0.
"Tom Gottfried <tom@intevation.de>"
parents:
8202
diff
changeset
|
667 step = to != from ? step : 1; |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
668 |
8444
666ac28a0256
In case to equals from, and only in this case, there should be only one class. Then we have to set an arbitrary value > 0 for step because the user is allowed to give step=0.
"Tom Gottfried <tom@intevation.de>"
parents:
8202
diff
changeset
|
669 int numClasses = (int)((to - from) / step + 1); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
670 |
8856 | 671 float rd = (endColor.getRed() - startColor.getRed()) |
672 / (float)numClasses; | |
673 float gd = (endColor.getGreen() - startColor.getGreen()) | |
674 / (float)numClasses; | |
675 float bd = (endColor.getBlue() - startColor.getBlue()) | |
676 / (float)numClasses; | |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
677 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
678 for (int n = 0; n < numClasses; n++) { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
679 StringBuilder newColor = new StringBuilder(); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
680 newColor.append(startColor.getRed() + Math.round(n * rd)); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
681 newColor.append(' '); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
682 newColor.append(startColor.getGreen() + Math.round(n * gd)); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
683 newColor.append(' '); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
684 newColor.append(startColor.getBlue() + Math.round(n * bd)); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
685 |
8856 | 686 String expr = createWSPLGENClassExpression( |
687 from + n * step, step, n + 1, numClasses); | |
688 String name = createWSPLGENClassName( | |
689 from + n * step, step, n + 1, numClasses, meta); | |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
690 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
691 Clazz c = new Clazz(name); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
692 Style s = new Style(); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
693 s.setColor(newColor.toString()); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
694 s.setSize(5); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
695 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
696 c.addItem(new Expression("(" + expr + ")")); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
697 c.addItem(s); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
698 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
699 ms.addClazz(c); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
700 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
701 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
702 return ms.toString(); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
703 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
704 |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
705 |
8856 | 706 protected static String createWSPLGENClassExpression( |
707 float val, | |
708 float step, | |
709 int idx, | |
710 int maxIdx | |
711 ) { | |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
712 if (idx < maxIdx) { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
713 return "[DIFF] >= " + val + " AND [DIFF] < " + (val + step); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
714 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
715 else { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
716 return "[DIFF] >= " + val; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
717 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
718 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
719 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
720 /** |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
721 * Creates a class name for the mapfile style that visualizes a floodmap. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
722 * The class names are used in the map's legend. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
723 * |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
724 * @param val Current isobath value. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
725 * @param step Difference between to class values. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
726 * @param idx Current class index that is being processed. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
727 * @param maxIdx Highest class index. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
728 * @param meta Caller meta object used to determine locale. |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
729 * @return |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
730 */ |
6912
058b8dc4e8b6
Artifacts: ThemeDocument. More debug output. Make more getters private to only expose the parsed values.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6909
diff
changeset
|
731 protected static String createWSPLGENClassName( |
058b8dc4e8b6
Artifacts: ThemeDocument. More debug output. Make more getters private to only expose the parsed values.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6909
diff
changeset
|
732 float val, |
058b8dc4e8b6
Artifacts: ThemeDocument. More debug output. Make more getters private to only expose the parsed values.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6909
diff
changeset
|
733 float step, |
058b8dc4e8b6
Artifacts: ThemeDocument. More debug output. Make more getters private to only expose the parsed values.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6909
diff
changeset
|
734 int idx, |
058b8dc4e8b6
Artifacts: ThemeDocument. More debug output. Make more getters private to only expose the parsed values.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6909
diff
changeset
|
735 int maxIdx, |
058b8dc4e8b6
Artifacts: ThemeDocument. More debug output. Make more getters private to only expose the parsed values.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6909
diff
changeset
|
736 CallMeta meta |
058b8dc4e8b6
Artifacts: ThemeDocument. More debug output. Make more getters private to only expose the parsed values.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6909
diff
changeset
|
737 ) { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
738 assert meta != null : "CallMeta instance is null"; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
739 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
740 if (idx < maxIdx) { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
741 return Resources.getMsg(meta, MSG_ISOBATH_CLASS, |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
742 new Object[] {val, val + step}); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
743 } |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
744 return Resources.getMsg(meta, MSG_ISOBATH_LASTCLASS, |
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
745 new Object[] {val}); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
746 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
747 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
748 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
749 public String createMapserverStyle() { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
750 String symbol = getSymbol(); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
751 String backcolor = getLabelBackgroundColorString(); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
752 String linecolor = getLineColorString(); |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
753 if (linecolor == null) { |
8202
e4606eae8ea5
sed src/**/*.java 's/logger/log/g'
Sascha L. Teichmann <teichmann@intevation.de>
parents:
7820
diff
changeset
|
754 log.warn("createMapserverStyle: linecolor String is empty"); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
755 linecolor = "0,128,255"; |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
756 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
757 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
758 int linewidth = parseLineWidth(); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
759 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
760 MapserverStyle ms = new MapserverStyle(); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
761 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
762 Clazz c = new Clazz(" "); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
763 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
764 Style s = new Style(); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
765 s.setOutlineColor(linecolor.replace(",", " ")); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
766 |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
767 if (backcolor != null) { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
768 s.setColor(backcolor.replace(",", " ")); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
769 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
770 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
771 s.setSize(linewidth); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
772 s.setSymbol(symbol); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
773 c.addItem(s); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
774 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
775 String textcolor = getTextColorString(); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
776 int textsize = parseTextSize(); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
777 |
6909
835e07ee769d
Artifacts: ThemeDocument. Removed some zero length checks because we do not store zero length strings in the backing map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6908
diff
changeset
|
778 if (textcolor != null && textsize > 0) { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
779 Label l = new Label(); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
780 l.setColor(textcolor.replace(",", " ")); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
781 l.setSize(textsize); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
782 c.addItem(l); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
783 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
784 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
785 ms.addClazz(c); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
786 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
787 return ms.toString(); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
788 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
789 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
790 |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
791 private String getAreaBackgroundColorString() { |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
792 return getValue(AREA_BACKGROUND_COLOR); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
793 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
794 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
795 |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
796 public Color parseAreaBackgroundColor() { |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
797 return parseColor(getAreaBackgroundColorString()); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
798 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
799 |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
800 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
801 public int parseAreaTransparency() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
802 return parseAreaTransparency(50); |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
803 } |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
804 |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
805 public int parseAreaTransparency(int alpha) { |
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
806 return parseInteger(getAreaTransparencyString(), alpha); |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
807 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
808 |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
809 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
810 public boolean parseAreaShowBorder() { |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
811 return parseBoolean(getAreaShowBorderString(), false); |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
812 } |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
813 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
814 |
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
815 private String getAreaShowBorderString() { |
6908
819481cc9195
Artifacts: ThemeDocument. The bloody part: Removal of the XPaths. Now the theme XML document is scanned once(!) at construction time for field values and the resulting key/value pairs are store in a map.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6906
diff
changeset
|
816 return getValue(AREA_SHOW_BORDER); |
6906
7a9cbb3a3d5a
Artifacts: Moved logic of ThemeUtils into ThemeDocument. TODO: Remove ThemeUtils
Sascha L. Teichmann <teichmann@intevation.de>
parents:
6905
diff
changeset
|
817 } |
8885
e5f688820951
Some minor changes on chart: allow area-themes to consider range; allow for axis-margins
gernotbelger
parents:
8856
diff
changeset
|
818 |
e5f688820951
Some minor changes on chart: allow area-themes to consider range; allow for axis-margins
gernotbelger
parents:
8856
diff
changeset
|
819 |
e5f688820951
Some minor changes on chart: allow area-themes to consider range; allow for axis-margins
gernotbelger
parents:
8856
diff
changeset
|
820 public boolean parseCalculateRange() { |
e5f688820951
Some minor changes on chart: allow area-themes to consider range; allow for axis-margins
gernotbelger
parents:
8856
diff
changeset
|
821 return parseBoolean(getCalculateRangeString(), false); |
e5f688820951
Some minor changes on chart: allow area-themes to consider range; allow for axis-margins
gernotbelger
parents:
8856
diff
changeset
|
822 } |
e5f688820951
Some minor changes on chart: allow area-themes to consider range; allow for axis-margins
gernotbelger
parents:
8856
diff
changeset
|
823 |
e5f688820951
Some minor changes on chart: allow area-themes to consider range; allow for axis-margins
gernotbelger
parents:
8856
diff
changeset
|
824 |
e5f688820951
Some minor changes on chart: allow area-themes to consider range; allow for axis-margins
gernotbelger
parents:
8856
diff
changeset
|
825 private String getCalculateRangeString() { |
e5f688820951
Some minor changes on chart: allow area-themes to consider range; allow for axis-margins
gernotbelger
parents:
8856
diff
changeset
|
826 return getValue(CALCULATE_RANGE); |
e5f688820951
Some minor changes on chart: allow area-themes to consider range; allow for axis-margins
gernotbelger
parents:
8856
diff
changeset
|
827 } |
6905
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
828 } |
1b35b2ddfc28
Artifacts: Introduce ThemeDocument & make stuff compileable again. THIS BREAKS THE SYSTEM! TODO: Move ThemeUtils into ThemeDocument.
Sascha L. Teichmann <teichmann@intevation.de>
parents:
diff
changeset
|
829 // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 : |