private static void OnFaceFillPropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { LargeCompass compass = d as LargeCompass; Brush brush = e.NewValue as Brush; compass.faceFill = brush; if (compass.CompassFace != null) { compass.CompassFace.Fill = brush; } }
private static void OnScalePropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { LargeCompass compass = d as LargeCompass; double value = Convert.ToDouble(e.NewValue); compass.scale = value; if (compass.CompassScale != null) { compass.CompassScale.ScaleX = value; compass.CompassScale.ScaleY = value; } }
private static void OnExpandOnMouseOverChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { LargeCompass compass = d as LargeCompass; object obj = e.NewValue; if (obj != null) { compass.MouseEnter -= compass.compass_MouseEnter; compass.MouseLeave -= compass.compass_MouseLeave; bool expand = (bool)obj; compass.expandOnMouseOver = expand; if (expand) { compass.MouseEnter += compass.compass_MouseEnter; compass.MouseLeave += compass.compass_MouseLeave; } } }
/// <summary> /// When overridden in a derived class, is invoked whenever application code or /// internal processes (such as a rebuilding layout pass) call /// <see cref="M:System.Windows.Controls.Control.ApplyTemplate"/>. /// </summary> public override void OnApplyTemplate() { compass = this; CompassScale = GetTemplateChild("CompassScale") as ScaleTransform; CompassFace = GetTemplateChild("compassFace") as Ellipse; if (scale != 1) { compass.CompassScale.ScaleX = scale; compass.CompassScale.ScaleY = scale; } if (expandOnMouseOver) { compass.MouseEnter += new MouseEventHandler(compass_MouseEnter); compass.MouseLeave += new MouseEventHandler(compass_MouseLeave); } if (faceFill != null) { CompassFace.Fill = faceFill; } }
/// <summary> /// When overridden in a derived class, is invoked whenever application code or /// internal processes (such as a rebuilding layout pass) call /// <see cref="M:System.Windows.Controls.Control.ApplyTemplate"/>. /// </summary> public override void OnApplyTemplate() { compass = this; CompassScale = GetTemplateChild("CompassScale") as ScaleTransform; CompassFace = GetTemplateChild("compassFace") as Ellipse; if (scale != 1) { compass.CompassScale.ScaleX = scale; compass.CompassScale.ScaleY = scale; } if (expandOnMouseOver) { compass.MouseEnter += new MouseEventHandler(compass_MouseEnter); compass.MouseLeave += new MouseEventHandler(compass_MouseLeave); } if (faceFill != null) CompassFace.Fill = faceFill; }