01 package de.java2html.options;
02
03 import de.java2html.util.HtmlUtilities;
04 import de.java2html.util.RGB;
05
06 /**
07 * Object defining color and other style options for output.
08 *
09 * @author Markus Gebhard
10 */
11 public class JavaSourceStyleEntry {
12 private RGB color;
13 private String htmlColor;
14 private boolean bold;
15 private boolean italic;
16
17 public JavaSourceStyleEntry(RGB color) {
18 this(color, false, false);
19 }
20
21 public JavaSourceStyleEntry(RGB color, boolean bold, boolean italic) {
22 this.color = color;
23 this.italic = italic;
24 this.bold = bold;
25 }
26
27 @Override
28 public boolean equals(Object obj) {
29 if (!(obj instanceof JavaSourceStyleEntry)) {
30 return false;
31 }
32 final JavaSourceStyleEntry other = (JavaSourceStyleEntry) obj;
33 return color.equals(other.color) && bold == other.bold && italic == other.italic;
34 }
35
36 @Override
37 public int hashCode() {
38 return color.hashCode();
39 }
40
41 /**
42 * @deprecated As of Dec 21, 2003 (Markus Gebhard): object is immutable and cloning not necessary.
43 */
44 @Deprecated
45 public JavaSourceStyleEntry getClone() {
46 return new JavaSourceStyleEntry(color, bold, italic);
47 }
48
49 public String getHtmlColor() {
50 if (htmlColor==null) {
51 htmlColor = HtmlUtilities.toHTML(getColor());
52 }
53 return htmlColor;
54 }
55
56 public RGB getColor() {
57 return color;
58 }
59
60 public boolean isBold() {
61 return bold;
62 }
63
64 public boolean isItalic() {
65 return italic;
66 }
67 }
|