40
40
public class ChunkStyle
42
public virtual Gdk.Color Color {
42
public virtual Cairo.Color CairoColor {
47
Gdk.Color backColor = Gdk.Color.Zero;
47
public Gdk.Color Color {
49
return (HslColor)CairoColor;
48
53
bool backColorIsZero = true;
49
public virtual Gdk.Color BackgroundColor {
54
Cairo.Color cairoBackgroundColor = new Cairo.Color (0, 0, 0, 0);
55
public virtual Cairo.Color CairoBackgroundColor {
56
get { return cairoBackgroundColor; }
57
set { cairoBackgroundColor = value; backColorIsZero = false; }
60
public Gdk.Color BackgroundColor {
55
backColorIsZero = value.Equal (Gdk.Color.Zero);
62
return (HslColor)CairoBackgroundColor;
93
100
public ChunkStyle (ChunkStyle style)
96
BackgroundColor = style.BackgroundColor;
102
CairoColor = style.CairoColor;
103
if (!style.backColorIsZero)
104
CairoBackgroundColor = style.CairoBackgroundColor;
97
105
ChunkProperties = style.ChunkProperties;
109
117
return Bold ? Pango.Weight.Bold : Pango.Weight.Normal;
112
public ChunkStyle () : this (Gdk.Color.Zero, Gdk.Color.Zero, ChunkProperties.None)
116
public ChunkStyle (Gdk.Color color) : this (color, Gdk.Color.Zero, ChunkProperties.None)
120
public ChunkStyle (Gdk.Color color, ChunkProperties chunkProperties) : this (color, Gdk.Color.Zero, chunkProperties)
124
public ChunkStyle (Gdk.Color color)
126
this.CairoColor =(HslColor) color;
129
public ChunkStyle (Gdk.Color color, ChunkProperties chunkProperties)
131
this.CairoColor = (HslColor)color;
132
this.ChunkProperties = chunkProperties;
124
135
public ChunkStyle (Gdk.Color color, Gdk.Color bgColor) : this (color, bgColor, ChunkProperties.None)
128
139
public ChunkStyle (Gdk.Color color, Gdk.Color bgColor, ChunkProperties chunkProperties)
131
this.BackgroundColor = bgColor;
141
this.CairoColor = (HslColor)color;
142
this.CairoBackgroundColor = (HslColor)bgColor;
143
this.ChunkProperties = chunkProperties;
146
public ChunkStyle (Cairo.Color color, Cairo.Color bgColor, ChunkProperties chunkProperties)
148
this.CairoColor = color;
149
this.CairoBackgroundColor = bgColor;
150
this.ChunkProperties = chunkProperties;
153
public ChunkStyle (Cairo.Color color, ChunkProperties chunkProperties)
155
this.CairoColor = color;
132
156
this.ChunkProperties = chunkProperties;
135
159
public override string ToString ()
137
return string.Format ("[ChunkStyle: Color={0}, BackgroundColor={1}, TransparentBackround={2}, ChunkProperties={3}, Link={4}]", Color, BackgroundColor, TransparentBackround, ChunkProperties, Link);
161
return string.Format ("[ChunkStyle: Color={0}, BackgroundColor={1}, TransparentBackround={2}, ChunkProperties={3}, Link={4}]", CairoColor, CairoBackgroundColor, TransparentBackround, ChunkProperties, Link);
140
164
public override int GetHashCode ()
142
return Color.GetHashCode () ^ Bold.GetHashCode ();
166
return CairoColor.GetHashCode () ^ Bold.GetHashCode ();
145
169
public override bool Equals (object o)
147
171
ChunkStyle c = o as ChunkStyle;
148
return c != null && Bold == c.Bold && Italic == c.Italic && Color.GetHashCode () == c.Color.GetHashCode ();
172
return c != null && Bold == c.Bold && Italic == c.Italic && CairoColor.GetHashCode () == c.CairoColor.GetHashCode ();
151
175
public Gdk.GC CreateBgGC (Gdk.Drawable drawable)