public override void OnApplyTemplate() { base.OnApplyTemplate(); upButton = (DragRepeatButton)Template.FindName("PART_UpButton", this); downButton = (DragRepeatButton)Template.FindName("PART_DownButton", this); textBox = (TextBox)Template.FindName("PART_TextBox", this); upButton.Click += upButton_Click; downButton.Click += downButton_Click; textBox.LostFocus += (sender, e) => OnLostFocus(e); var upDrag = new DragListener(upButton); var downDrag = new DragListener(downButton); upDrag.Started += drag_Started; upDrag.Changed += drag_Changed; upDrag.Completed += drag_Completed; downDrag.Started += drag_Started; downDrag.Changed += drag_Changed; downDrag.Completed += drag_Completed; Print(); }
void Target_MouseMove(object sender, MouseEventArgs e) { if (IsDown) { DeltaDelta = e.GetPosition(null) - CurrentPoint; CurrentPoint += DeltaDelta; if (!IsActive) { if (Math.Abs(Delta.X) >= SystemParameters.MinimumHorizontalDragDistance || Math.Abs(Delta.Y) >= SystemParameters.MinimumVerticalDragDistance) { IsActive = true; CurrentListener = this; if (Started != null) { Started(this); } } } if (IsActive && Changed != null) { Changed(this); } } }
void Complete() { IsActive = false; CurrentListener = null; if (Completed != null) { Completed(this); } }
protected void drag_Changed(DragListener drag) { var mprt = drag.Target as PathThumb; if (mprt != null) { _isDragging = true; MovePoints(drag.Delta.X, drag.Delta.Y); } }
// TODO : Remove all hide/show extensions from here. protected void drag_Started(DragListener drag) { //get current thumb var mprt = (drag.Target as PathThumb); if (mprt != null) { SetOperation(); } }
protected void drag_Completed(DragListener drag) { var mprt = drag.Target as PathThumb; if (mprt != null) { if (operation != null && drag.IsCanceled) { operation.Abort(); } else if (drag.IsCanceled) { changeGroup.Abort(); } CommitOperation(); } }
protected virtual PathThumb CreateThumb(PlacementAlignment alignment, Cursor cursor, int index, PathPoint pathpoint, Transform transform) { var designerThumb = new PathThumb(index, pathpoint) { Cursor = cursor }; designerThumb.OperationMenu = BuildMenu(pathpoint); designerThumb.InnerRenderTransform = ((Transform)transform.Inverse); if (pathpoint.TargetPathPoint != null) { designerThumb.IsEllipse = true; designerThumb.Foreground = Brushes.Blue; var bnd = new Binding("TranslatedPoint") { Source = pathpoint.TargetPathPoint, Mode = BindingMode.OneWay, Converter = new RelativeToPointConverter(pathpoint) }; designerThumb.SetBinding(PathThumb.RelativeToPointProperty, bnd); } AdornerPanel.SetPlacement(designerThumb, designerThumb.AdornerPlacement); adornerPanel.Children.Add(designerThumb); DragListener drag = new DragListener(designerThumb); drag.Transform = transform; WeakEventManager <DesignerThumb, MouseButtonEventArgs> .AddHandler(designerThumb, "PreviewMouseLeftButtonDown", ResizeThumbOnMouseLeftButtonUp); drag.MouseDown += drag_MouseDown; drag.Started += drag_Started; drag.Changed += drag_Changed; drag.Completed += drag_Completed; return(designerThumb); }
protected void drag_MouseDown(DragListener drag) { }
void drag_Completed(DragListener drag) { IsDragging = false; OnDragCompleted(); }
void drag_Changed(DragListener drag) { IsDragging = true; MoveValue(-drag.DeltaDelta.Y * SmallChange); }
void drag_Started(DragListener drag) { OnDragStarted(); }