Mercurial > dive4elements > river
diff artifacts/src/main/java/org/dive4elements/river/exports/DiagramAttributes.java @ 7241:32db4f89b65f
Add new option to diagram axes "logarithmic" that can be set to an evaluator
author | Andre Heinecke <aheinecke@intevation.de> |
---|---|
date | Fri, 04 Oct 2013 17:02:01 +0200 |
parents | 744df5a03337 |
children | f87f435df856 0a5239a1e46e |
line wrap: on
line diff
--- a/artifacts/src/main/java/org/dive4elements/river/exports/DiagramAttributes.java Fri Oct 04 17:00:05 2013 +0200 +++ b/artifacts/src/main/java/org/dive4elements/river/exports/DiagramAttributes.java Fri Oct 04 17:02:01 2013 +0200 @@ -115,6 +115,7 @@ private boolean includeZero; // TODO: Use Evaluator private Evaluator isInverted; + private Evaluator isLog; public AxisAttributes() { } @@ -124,13 +125,15 @@ boolean isLeftAlign, boolean forceAlign, boolean includeZero, - Evaluator isInverted + Evaluator isInverted, + Evaluator isLog ) { this.name = name; this.isLeftAlign = isLeftAlign; this.forceAlign = forceAlign; this.includeZero = includeZero; this.isInverted = isInverted; + this.isLog = isLog; } public String getName() { @@ -152,6 +155,10 @@ public Evaluator isInverted() { return isInverted; } + + public Evaluator isLog() { + return isLog; + } } // class AxisAttributes public class DomainAxisAttributes extends AxisAttributes { @@ -167,9 +174,11 @@ boolean forceAlign, boolean includeZero, Evaluator isInverted, + Evaluator isLog, Title title ) { - super(name, isLeftAlign, forceAlign, includeZero, isInverted); + super(name, isLeftAlign, forceAlign, includeZero, isInverted, + isLog); this.title = title; } @@ -364,6 +373,7 @@ axisElement.getAttribute("include-zero").trim(); String isInverted = axisElement.getAttribute("inverted"); + String isLog = axisElement.getAttribute("logarithmic"); if (name.isEmpty()) { continue; @@ -379,10 +389,12 @@ Evaluator isInvertedE = parseEvaluator(isInverted, FALSE); + Evaluator isLogE = parseEvaluator(isLog, FALSE); + axesAttrs.add(new AxisAttributes( name, isleftAlign, forceAlign, includeZero.equals("true"), - isInvertedE)); + isInvertedE, isLogE)); } } @@ -466,8 +478,18 @@ private void parseDomainAxis(Element config) { Title title = extractTitle(config, "domain-axis"); - String includeZero = config.getAttribute("include-zero"); - String isInverted = config.getAttribute("inverted"); + String includeZero = ""; + String isInverted = ""; + String isLog = ""; + + NodeList dAlist = config.getElementsByTagName("domain-axis"); + if (dAlist.getLength() > 0) { + Element dAelement = (Element)dAlist.item(0); + + includeZero = dAelement.getAttribute("include-zero"); + isInverted = dAelement.getAttribute("inverted"); + isLog = dAelement.getAttribute("logarithmic"); + } domainAxis = new DomainAxisAttributes( "X", @@ -475,6 +497,7 @@ false, includeZero.equals("true"), parseEvaluator(isInverted, FALSE), + parseEvaluator(isLog, FALSE), title); }