# HG changeset patch # User Sascha L. Teichmann # Date 1383923738 -3600 # Node ID 4dbbdf0c8b2c6196adb3d2e7f1ebd54c899eb21b # Parent 34faa9c55b4b326f5b59bd42e539cc863b636b1e More on flys/issue1585: Do not fill circle for interpolated W/Q points. diff -r 34faa9c55b4b -r 4dbbdf0c8b2c artifacts/src/main/java/org/dive4elements/river/exports/fixings/FixWQCurveGenerator.java --- a/artifacts/src/main/java/org/dive4elements/river/exports/fixings/FixWQCurveGenerator.java Fri Nov 08 12:27:08 2013 +0100 +++ b/artifacts/src/main/java/org/dive4elements/river/exports/fixings/FixWQCurveGenerator.java Fri Nov 08 16:15:38 2013 +0100 @@ -297,6 +297,12 @@ double w = factor*(qwd.getW()-gaugeDatum); + // Force empty symbol. + if (qwd.getInterpolated()) { + doc = new ThemeDocument(doc); // prevent potential side effects. + doc.setValue(ThemeDocument.USE_FILL_PAINT, "true"); + } + XYSeries series = new StyledXYSeries( aaf.getFacetDescription(), doc, @@ -337,6 +343,12 @@ return; } + // Force empty symbol. + if (qwd.getInterpolated()) { + doc = new ThemeDocument(doc); // prevent potential side effects. + doc.setValue(ThemeDocument.USE_FILL_PAINT, "true"); + } + XYSeries series = new StyledXYSeries( aaf.getFacetDescription(), false, true, doc, diff -r 34faa9c55b4b -r 4dbbdf0c8b2c artifacts/src/main/java/org/dive4elements/river/jfree/XYStyle.java --- a/artifacts/src/main/java/org/dive4elements/river/jfree/XYStyle.java Fri Nov 08 12:27:08 2013 +0100 +++ b/artifacts/src/main/java/org/dive4elements/river/jfree/XYStyle.java Fri Nov 08 16:15:38 2013 +0100 @@ -58,6 +58,7 @@ // Hurray we already applied nothing :) return r; } + applyUseFillPaint(r); applyLineColor(r, idx); applyLineSize(r, idx); applyLineType(r, idx); @@ -86,17 +87,20 @@ return r; } + protected void applyUseFillPaint(XYLineAndShapeRenderer r) { + Boolean use = theme.parseUseFillPaint(); + if (use != null) { + r.setUseFillPaint(use); + } + } + /** Set line color to renderer. */ protected void applyLineColor(XYLineAndShapeRenderer r, int idx) { Color c = theme.parseLineColorField(); - if(c != null) { - logger.debug("applyLineColor " + c.toString()); + if (c != null) { r.setSeriesPaint(idx, c); } - else { - logger.warn("applyLineColor: color is null - malformed linecolor field?"); - } } diff -r 34faa9c55b4b -r 4dbbdf0c8b2c artifacts/src/main/java/org/dive4elements/river/themes/ThemeDocument.java --- a/artifacts/src/main/java/org/dive4elements/river/themes/ThemeDocument.java Fri Nov 08 12:27:08 2013 +0100 +++ b/artifacts/src/main/java/org/dive4elements/river/themes/ThemeDocument.java Fri Nov 08 16:15:38 2013 +0100 @@ -111,8 +111,7 @@ public final static String SHOWEXTRAMARK = "showextramark"; - - private Document document; + public final static String USE_FILL_PAINT = "usefillpaint"; private Map values; @@ -120,18 +119,22 @@ } public ThemeDocument(Document document) { - this.document = document; values = extractValues(document); } - public Document getDocument() { - return document; + public ThemeDocument(ThemeDocument other) { + values = new HashMap(other.values); } - private String getValue(String key) { + + public String getValue(String key) { return values.get(key); } + public void setValue(String key, String value) { + values.put(key, value); + } + private static Map extractValues(Document document) { Map values = new HashMap(); if (document == null) { @@ -433,6 +436,13 @@ return parseBoolean(show, false); } + public Boolean parseUseFillPaint() { + String use = getValue(USE_FILL_PAINT); + return use != null + ? parseBoolean(use, false) + : null; + } + public int parseTextSize() { String size = getValue(LABEL_FONT_SIZE); if (size == null) {