private static void OnSelectedCurveChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e) { CurveGraph c = sender as CurveGraph; if (c != null) { c.SelectedPoint = c.SelectedCurve.CurvePoints.FirstOrDefault(); } }
public Anchor(CurveGraph g, LinkedListNode <CurvePoint> p) { graph = g; point = p; X = graph.localX(point.Value.InVal); Y = graph.localY(point.Value.OutVal); this.DragDelta += OnDragDelta; this.DragStarted += OnDragStarted; this.MouseDown += Anchor_MouseDown; leftHandle = new Handle(this, true); graph.graph.Children.Add(leftHandle); rightHandle = new Handle(this, false); graph.graph.Children.Add(rightHandle); leftBez = null; rightBez = null; }
private static void OnSelectedPointChanged(DependencyObject sender, DependencyPropertyChangedEventArgs e) { CurveGraph c = sender as CurveGraph; if (c != null) { foreach (var o in c.graph.Children) { Anchor a; if (o is Anchor) { a = o as Anchor; if (a.point.Value != e.NewValue as CurvePoint) { a.IsSelected = false; } } } c.SelectedPointChanged?.Invoke(c, new RoutedPropertyChangedEventArgs <CurvePoint>(e.OldValue as CurvePoint, e.NewValue as CurvePoint)); } }
public BezierSegment(CurveGraph g) { graph = g; }
public BezierSegment(CurveGraph g) { graph = g; }
public Anchor(CurveGraph g, LinkedListNode<CurvePoint> p) { graph = g; point = p; X = graph.localX(point.Value.InVal); Y = graph.localY(point.Value.OutVal); this.DragDelta += OnDragDelta; this.DragStarted += OnDragStarted; this.MouseDown += Anchor_MouseDown; leftHandle = new Handle(this, true); graph.graph.Children.Add(leftHandle); rightHandle = new Handle(this, false); graph.graph.Children.Add(rightHandle); leftBez = null; rightBez = null; }