annotate flys-artifacts/src/main/java/de/intevation/flys/themes/TextStyle.java @ 5627:2d9eb188fa51

Flys Issue 759 write longer strings and explicitly break the lines This makes the dem hover item layout more robust as it works with different string lengths
author Andre Heinecke <aheinecke@intevation.de>
date Wed, 10 Apr 2013 10:25:33 +0200
parents 0b9b2a0c4e64
children
rev   line source
3464
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
1 package de.intevation.flys.themes;
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
2
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
3 import de.intevation.flys.jfree.StableXYDifferenceRenderer;
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
4
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
5 import java.awt.Color;
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
6 import java.awt.Font;
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
7
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
8 import org.apache.log4j.Logger;
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
9 import org.jfree.chart.annotations.XYTextAnnotation;
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
10
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
11 public class TextStyle {
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
12 @SuppressWarnings("unused")
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
13 private static Logger log = Logger.getLogger(TextStyle.class);
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
14
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
15 protected Color textColor;
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
16 protected Font font;
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
17 protected Color bgColor;
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
18 protected boolean showBg;
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
19 protected boolean isVertical;
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
20
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
21 public TextStyle(Color fgColor, Font font, Color bgColor,
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
22 boolean showBg, boolean isVertical
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
23 ) {
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
24 this.textColor = fgColor;
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
25 this.font = font;
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
26 this.bgColor = bgColor;
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
27 this.showBg = showBg;
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
28 this.isVertical = isVertical;
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
29 }
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
30
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
31 public void apply(XYTextAnnotation ta) {
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
32 ta.setPaint(textColor);
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
33 ta.setFont(font);
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
34 if (this.showBg) {
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
35 ta.setBackgroundPaint(bgColor);
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
36 }
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
37 if (this.isVertical) {
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
38 ta.setRotationAngle(270f*Math.PI/180f);
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
39 }
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
40 else {
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
41 ta.setRotationAngle(0);
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
42 }
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
43 }
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
44
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
45 public void apply(StableXYDifferenceRenderer renderer) {
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
46 renderer.setLabelColor(textColor);
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
47 renderer.setLabelFont(font);
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
48 if (this.showBg) {
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
49 renderer.setLabelBGColor(bgColor);
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
50 }
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
51 }
0b9b2a0c4e64 Point labels can have a background color now.
Christian Lins <christian.lins@intevation.de>
parents:
diff changeset
52 }

http://dive4elements.wald.intevation.org