comparison artifacts/src/main/java/org/dive4elements/river/jfree/StyledAreaSeriesCollection.java @ 9186:eec4df8165a1

Implemented 'ShowLineLabel' for area themes.
author gernotbelger
date Thu, 28 Jun 2018 10:47:04 +0200
parents 77eb4553245b
children d8e753d0fdb9
comparison
equal deleted inserted replaced
9185:4778333ea2cd 9186:eec4df8165a1
75 applyShowArea(renderer); 75 applyShowArea(renderer);
76 applyOutlineColor(renderer); 76 applyOutlineColor(renderer);
77 applyOutlineStyle(renderer); 77 applyOutlineStyle(renderer);
78 applyShowLine(renderer); 78 applyShowLine(renderer);
79 applyShowAreaLabel(renderer); 79 applyShowAreaLabel(renderer);
80 applyShowLineLabel(renderer);
80 applyPointStyle(renderer); 81 applyPointStyle(renderer);
82 applyShowMinimumMaximum(renderer);
81 if (this.mode == FILL_MODE.UNDER) { 83 if (this.mode == FILL_MODE.UNDER) {
82 renderer.setAreaCalculationMode( 84 renderer.setAreaCalculationMode(
83 StableXYDifferenceRenderer.CALCULATE_NEGATIVE_AREA); 85 StableXYDifferenceRenderer.CALCULATE_NEGATIVE_AREA);
84 } 86 }
85 else if (this.mode == FILL_MODE.ABOVE) { 87 else if (this.mode == FILL_MODE.ABOVE) {
92 } 94 }
93 95
94 // Apply text style. 96 // Apply text style.
95 this.theme.parseComplexTextStyle().apply(renderer); 97 this.theme.parseComplexTextStyle().apply(renderer);
96 return renderer; 98 return renderer;
99 }
100
101 private void applyShowMinimumMaximum(final StableXYDifferenceRenderer renderer) {
102
103 // TODO: nice to have
104
105 // final boolean minimumVisible = this.theme.parseShowMinimum();
106 // renderer.setIsMinimumShapeVisible(minimumVisible);
107 //
108 // final boolean maximumVisible = this.theme.parseShowMaximum();
109 // renderer.setIsMaximumShapeVisible(maximumVisible);
97 } 110 }
98 111
99 private void applyFillColor(final StableXYDifferenceRenderer renderer) { 112 private void applyFillColor(final StableXYDifferenceRenderer renderer) {
100 113
101 Paint paint = parseFillPaint(); 114 Paint paint = parseFillPaint();
167 private void applyOutlineColor(final StableXYDifferenceRenderer renderer) { 180 private void applyOutlineColor(final StableXYDifferenceRenderer renderer) {
168 final Color c = this.theme.parseLineColorField(); 181 final Color c = this.theme.parseLineColorField();
169 renderer.setOutlinePaint(c); 182 renderer.setOutlinePaint(c);
170 } 183 }
171 184
172 /** Inform renderer whether it should draw a label. */
173 private void applyShowAreaLabel(final StableXYDifferenceRenderer renderer) { 185 private void applyShowAreaLabel(final StableXYDifferenceRenderer renderer) {
174 renderer.setLabelArea(this.theme.parseShowAreaLabel()); 186 renderer.setShowAreaLabel(this.theme.parseShowAreaLabel());
187 }
188
189 private void applyShowLineLabel(final StableXYDifferenceRenderer renderer) {
190 // REMARK: using 'showlinelabel' to activate labeling the line with the title of the theme. This is the same behaviour
191 // as for line-themes.
192 final boolean showLabelLine = this.theme.parseShowLineLabel();
193 renderer.setShowTitleLabel(showLabelLine);
175 } 194 }
176 195
177 private void applyOutlineStyle(final StableXYDifferenceRenderer renderer) { 196 private void applyOutlineStyle(final StableXYDifferenceRenderer renderer) {
178 final float[] dashes = this.theme.parseLineStyle(); 197 final float[] dashes = this.theme.parseLineStyle();
179 final int size = this.theme.parseLineWidth(); 198 final int size = this.theme.parseLineWidth();

http://dive4elements.wald.intevation.org