Index: src/Common/DelftTools.Controls.Swf/Charting/Tracker.cs =================================================================== diff -u -r8f6ae890fed8e8eae3a32f9c0498a10f82e0ddf9 -r5fc71a385897af92ccb092f2f969b5709afab85a --- src/Common/DelftTools.Controls.Swf/Charting/Tracker.cs (.../Tracker.cs) (revision 8f6ae890fed8e8eae3a32f9c0498a10f82e0ddf9) +++ src/Common/DelftTools.Controls.Swf/Charting/Tracker.cs (.../Tracker.cs) (revision 5fc71a385897af92ccb092f2f969b5709afab85a) @@ -2,77 +2,85 @@ namespace DelftTools.Controls.Swf.Charting { - class Tracker + internal class Tracker { - public enum Style { simpleRect, LargeMove }; - private Bitmap bitmap; - public Bitmap Bitmap { get { return bitmap; } } + public enum Style + { + simpleRect, + LargeMove + }; private int size = 8; + + private Color backColor = Color.Tomato; + + private Color foreColor = Color.Black; + + private Style trackerStyle = Style.simpleRect; + + public Tracker(Style trackerStyle, int size, Color backColor, Color foreColor) + { + this.trackerStyle = trackerStyle; + this.size = size; + this.backColor = backColor; + this.foreColor = foreColor; + Generate(); + } + + public Bitmap Bitmap { get; private set; } + public int Size { - get { return size; } + get + { + return size; + } set { size = value; Generate(); } } - private Color backColor = Color.Tomato; public Color BackColor { - get { return backColor; } + get + { + return backColor; + } set { backColor = value; Generate(); } } - private Color foreColor = Color.Black; public Color ForeColor { - get { return foreColor; } + get + { + return foreColor; + } set { foreColor = value; Generate(); } } - private Style trackerStyle = Style.simpleRect; public Style TrackerStyle { - get { return trackerStyle; } + get + { + return trackerStyle; + } set { trackerStyle = value; Generate(); } } - public Tracker(Style trackerStyle, int size, Color backColor, Color foreColor) - { - this.trackerStyle = trackerStyle; - this.size = size; - this.backColor = backColor; - this.foreColor = foreColor; - Generate(); - } - - private void Generate() - { - if (trackerStyle == Style.simpleRect) - { - bitmap = GenerateSimpleTrackerImage(new Pen(foreColor), new SolidBrush(BackColor), Size, Size); - } - else - { - bitmap = GenerateCompositeTrackerImage(new Pen(foreColor), new SolidBrush(BackColor), Size, Size, 6, 6); - } - } - /// /// GenerateSimpleTrackerImage creates a rectangular image. Please note /// the offset of 2 pixels to counter a mismath in sharpmap? @@ -91,6 +99,7 @@ graphics.Dispose(); return bm; } + public static Bitmap GenerateCompositeTrackerImage(Pen pen, Brush brush, int totalWidth, int totaHeight, int width, int height) { @@ -114,5 +123,17 @@ graphics.Dispose(); return bm; } + + private void Generate() + { + if (trackerStyle == Style.simpleRect) + { + Bitmap = GenerateSimpleTrackerImage(new Pen(foreColor), new SolidBrush(BackColor), Size, Size); + } + else + { + Bitmap = GenerateCompositeTrackerImage(new Pen(foreColor), new SolidBrush(BackColor), Size, Size, 6, 6); + } + } } } \ No newline at end of file