Mercurial > dive4elements > river
view flys-artifacts/src/main/java/de/intevation/flys/themes/ThemeAccess.java @ 4573:b87073a05f9d
flys-client: Patch to render combobox options as clickable links.
The way of passing data arguments to the links and further to
the Artifact feeding service is somewhat hacked and should be
refactored (later...).
author | Christian Lins <christian.lins@intevation.de> |
---|---|
date | Tue, 27 Nov 2012 12:50:10 +0100 |
parents | 0b9b2a0c4e64 |
children |
line wrap: on
line source
package de.intevation.flys.themes; import de.intevation.flys.utils.ThemeUtil; import java.awt.Color; import java.awt.Font; import org.w3c.dom.Document; public class ThemeAccess { protected Document theme; protected Integer lineWidth; protected Color lineColor; protected Color textColor; protected Font font; protected String textOrientation; protected Color textBackground; protected Boolean showTextBackground; protected Color pointColor; public ThemeAccess(Document theme) { this.theme = theme; } public int parseLineWidth() { if (lineWidth == null) { lineWidth = ThemeUtil.parseLineWidth(theme); } return lineWidth; } public Color parseLineColorField() { if (lineColor == null) { lineColor = ThemeUtil.parseLineColorField(theme); if (lineColor == null) { lineColor = Color.BLACK; } } return lineColor; } public Color parseTextColor() { if (textColor == null) { textColor = ThemeUtil.parseTextColor(theme); if (textColor == null) { textColor = Color.BLACK; } } return textColor; } public Font parseTextFont() { if (font == null) { font = ThemeUtil.parseTextFont(theme); if (font == null) { font = new Font("Arial", Font.BOLD, 10); } } return font; } public String parseTextOrientation() { if (textOrientation == null) { textOrientation = ThemeUtil.parseTextOrientation(theme); } return textOrientation; } public Color parseTextBackground() { if (textBackground == null) { textBackground = ThemeUtil.parseTextBackground(theme); if (textBackground == null) { textBackground = Color.WHITE; } } return textBackground; } public boolean parseLabelShowBackground() { if (showTextBackground == null) { showTextBackground = ThemeUtil.parseLabelShowBackground(theme); } return showTextBackground; } public Color parsePointColor() { if (pointColor == null) { pointColor = ThemeUtil.parsePointColor(theme); if (pointColor == null) { return parseLineColorField(); } } return pointColor; } public LineStyle parseLineStyle() { return new LineStyle(parseLineColorField(), Integer.valueOf(parseLineWidth())); } public TextStyle parseTextStyle() { return new TextStyle( parseTextColor(), parseTextFont(), parseTextBackground(), parseLabelShowBackground(), !parseTextOrientation().equals("horizontal")); } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :