public void Initialize()
{
Cursor = Cursors.IBeam;
Children.Clear();
#region default children
rectBG = new Rectangle();
rectBG.Fill = new SolidColorBrush(Colors.Transparent);
rectBG.Width = Width;
rectBG.Height = 15;
Children.Add(rectBG);
EllipseLarge = new Ellipse();
EllipseLarge.Width = 11;
EllipseLarge.Height = 11;
EllipseLarge.Margin = new Thickness(2, 2, 0, 0);
EllipseLarge.Fill = new SolidColorBrush(Colors.Red);
EllipseLarge.Visibility = Visibility.Collapsed;
Children.Add(EllipseLarge);
EllipseSmall = new Ellipse();
EllipseSmall.Width = 9;
EllipseSmall.Height = 9;
EllipseSmall.Margin = new Thickness(3, 3, 0, 0);
EllipseSmall.Fill = new SolidColorBrush(Colors.Yellow);
EllipseSmall.Visibility = Visibility.Collapsed;
Children.Add(EllipseSmall);
tbNumber = new TextBlock();
tbNumber.Text = "1";
tbNumber.Margin = new Thickness(15, 0, 0, 0);
tbNumber.Foreground = new SolidColorBrush(Color.FromArgb(255, 124, 150, 93));
tbNumber.TextAlignment = TextAlignment.Right;
tbNumber.FontFamily = new FontFamily("Verdana");
tbNumber.Width = 23;
Children.Add(tbNumber);
#endregion
rectBG.MouseLeftButtonDown += MouseDown;
EllipseLarge.MouseLeftButtonDown += MouseDown;
EllipseSmall.MouseLeftButtonDown += MouseDown;
// enable debugging?
if (Configuration.Debugger.IsEnabled)
{
rectBG.Cursor = Cursors.Hand;
EllipseLarge.Cursor = Cursors.Hand;
EllipseSmall.Cursor = Cursors.Hand;
}
// enable highlighting when mouse is over Number
tbNumber.MouseLeftButtonDown += OnNumberDown;
tbNumber.MouseEnter += OnNumberMouseEnter;
// hover effect
MouseEnter += (s, e) => Line.PaperLineMouseEnter(s, e);
MouseLeave += (s, e) => Line.PaperLineMouseLeave(s, e);
}