view flys-artifacts/src/main/java/de/intevation/flys/jfree/StyledDomainMarker.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 940cd2ef149f
children 85876e3a5346
line wrap: on
line source
package de.intevation.flys.jfree;

import java.awt.Color;

import org.jfree.chart.plot.IntervalMarker;
import org.w3c.dom.Document;

import de.intevation.flys.utils.ThemeUtil;

/**
 * Marker that represents a highlighted interval.
 *
 * @author <a href="mailto:christian.lins@intevation.de">Christian Lins</a>
 */
public class StyledDomainMarker extends IntervalMarker {

    private static final long serialVersionUID = -4369417661339512342L;

    private final Color fillColor, backgroundColor;

    public StyledDomainMarker(double start, double end, Document theme) {
        super(start, end);

        backgroundColor = ThemeUtil.parseColor(
                ThemeUtil.getBackgroundColorString(theme));
        fillColor = ThemeUtil.parseColor(
                ThemeUtil.getFillColorString(theme));
        useSecondColor(false);

        int alpha = 100 - ThemeUtil.parseInteger(
                ThemeUtil.getTransparencyString(theme), 50);
        setAlpha(alpha / 100.0f);
    }

    /**
     * To properly differentiate several styled domain markers side by side,
     * we can use this switch to toggle between two colors.
     * @param secondColor
     */
    public void useSecondColor(boolean secondColor) {
        if(secondColor) {
            if(backgroundColor != null)
                setPaint(backgroundColor);
        }
        else {
            if(fillColor != null)
                setPaint(fillColor);
        }
    }
}
// vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :

http://dive4elements.wald.intevation.org