comparison flys-artifacts/src/main/java/de/intevation/flys/jfree/StyledAreaSeriesCollection.java @ 2666:6da7e064ae90

Allow basic and styled area labels, yet on static position within plot. flys-artifacts/trunk@4344 c6561f87-3c4e-4783-a992-168aeb5c3f6f
author Felix Wolfsteller <felix.wolfsteller@intevation.de>
date Thu, 03 May 2012 20:27:01 +0000
parents a026d005accd
children b75681c09ef8
comparison
equal deleted inserted replaced
2665:bcf4011fa3f1 2666:6da7e064ae90
9 import org.w3c.dom.Document; 9 import org.w3c.dom.Document;
10 10
11 import org.jfree.data.xy.XYSeriesCollection; 11 import org.jfree.data.xy.XYSeriesCollection;
12 12
13 import de.intevation.flys.utils.ThemeUtil; 13 import de.intevation.flys.utils.ThemeUtil;
14 import de.intevation.flys.utils.ThemeAccess;
14 import de.intevation.flys.jfree.StableXYDifferenceRenderer; 15 import de.intevation.flys.jfree.StableXYDifferenceRenderer;
15 16
16 17
17 /** 18 /**
18 * One or more dataseries to draw a polygon (either "open up/downwards", or 19 * One or more dataseries to draw a polygon (either "open up/downwards", or
66 ) { 67 ) {
67 applyFillColor(renderer); 68 applyFillColor(renderer);
68 applyShowShape(renderer); 69 applyShowShape(renderer);
69 applyOutlineColor(renderer); 70 applyOutlineColor(renderer);
70 applyOutlineStyle(renderer); 71 applyOutlineStyle(renderer);
71 72 applyShowArea(renderer);
73 if (mode == FILL_MODE.UNDER) {
74 renderer.setAreaCalculationMode(StableXYDifferenceRenderer.CALCULATE_NEGATIVE_AREA);
75 }
76 else if (mode == FILL_MODE.ABOVE) {
77 renderer.setAreaCalculationMode(StableXYDifferenceRenderer.CALCULATE_POSITIVE_AREA);
78 }
79 else {
80 renderer.setAreaCalculationMode(StableXYDifferenceRenderer.CALCULATE_ALL_AREA);
81 }
82 // TODO apply all the text style for the calc. area label.
83 new ThemeAccess(theme).parseTextStyle().apply(renderer);
72 return renderer; 84 return renderer;
73 } 85 }
74 86
75 87
76 /** 88 /**
122 134
123 protected void applyOutlineWidth(StableXYDifferenceRenderer renderer) { 135 protected void applyOutlineWidth(StableXYDifferenceRenderer renderer) {
124 int size = ThemeUtil.parseLineWidth(theme); 136 int size = ThemeUtil.parseLineWidth(theme);
125 } 137 }
126 138
139 /** Inform renderer whether it should draw a label. */
140 protected void applyShowArea(StableXYDifferenceRenderer renderer) {
141 renderer.setLabelArea(ThemeUtil.parseShowArea(theme));
142 }
143
127 protected void applyOutlineStyle(StableXYDifferenceRenderer renderer) { 144 protected void applyOutlineStyle(StableXYDifferenceRenderer renderer) {
128 float[] dashes = ThemeUtil.parseLineStyle(theme); 145 float[] dashes = ThemeUtil.parseLineStyle(theme);
129 int size = ThemeUtil.parseLineWidth(theme); 146 int size = ThemeUtil.parseLineWidth(theme);
130 147
131 Stroke stroke = null; 148 Stroke stroke = null;

http://dive4elements.wald.intevation.org