public bool CanConnectToPin(IThumb pin) { return(pin != null && ( !StringUtil.Compare(pin.GetUid(), Constants.PinStandalone) || (Context.IsControlPressed != null && Context.IsControlPressed()) )); }
public void DragStart(ICanvas canvas, IThumb element) { Snapshot(canvas, false); Context.MoveAllSelected = element.GetSelected(); if (Context.MoveAllSelected == false) { element.SetSelected(true); } }
public void Drag(ICanvas canvas, IThumb element, double dX, double dY) { bool snap = IsSnapOnDragEnabled(); if (Context.MoveAllSelected == true) { MoveSelectedElements(canvas, dX, dY, snap); } else { MoveRoot(element, dX, dY, snap); } }
public void DragEnd(ICanvas canvas, IThumb element) { if (Context.SnapOnRelease == true && Context.EnableSnap == true) { if (Context.MoveAllSelected == true) { MoveSelectedElements(canvas, 0.0, 0.0, Context.EnableSnap); } else { element.SetSelected(false); MoveRoot(element, 0.0, 0.0, Context.EnableSnap); } } else { if (Context.MoveAllSelected != true) { element.SetSelected(false); } } Context.MoveAllSelected = false; }
private void Connect(ICanvas canvas, IThumb pin, IDiagramCreator creator) { if (pin == null) { return; } Context.CurrentRoot = pin.GetParent() as IThumb; double x; double y; ModelEditor.GetPinPosition(Context.CurrentRoot, pin, out x, out y); Context.CurrentLine = WireEditor.Connect(canvas, Context.CurrentRoot, Context.CurrentLine, x, y, creator); if (Context.CurrentLine == null) { Context.CurrentRoot = null; } }
private void SetElementDragDeltaHandler(IElement element, IThumb thumb, Action <IElement, IThumb, double, double> drag) { (thumb.Native as Thumb).DragDelta += (sender, e) => drag(element, thumb, e.HorizontalChange, e.VerticalChange); }
public bool CanConnectToPin(IThumb pin) { return pin != null && ( !StringUtil.Compare(pin.GetUid(), Constants.PinStandalone) || (Context.IsControlPressed != null && Context.IsControlPressed()) ); }
private void SetLineDragDeltaHandler(ILine line, IThumb thumb, Action <ILine, IThumb, double, double> drag) { (thumb.Native as Thumb).DragDelta += (sender, e) => drag(line, thumb, e.HorizontalChange, e.VerticalChange); }
private void Connect(ICanvas canvas, IThumb pin, IDiagramCreator creator) { if (pin == null) return; Context.CurrentRoot = pin.GetParent() as IThumb; double x; double y; ModelEditor.GetPinPosition(Context.CurrentRoot, pin, out x, out y); Context.CurrentLine = WireEditor.Connect(canvas, Context.CurrentRoot, Context.CurrentLine, x, y, creator); if (Context.CurrentLine == null) Context.CurrentRoot = null; }
public bool MouseEventPreviewLeftDown(ICanvas canvas, IPoint point, IThumb pin) { if (CanConnectToPin(pin)) { if (Context.CurrentLine == null) Snapshot(canvas, true); Connect(canvas, pin, Context.DiagramCreator); return true; } else if (Context.CurrentLine != null) { var element = MouseGetElementAtPoint(canvas, point); if (CanSplitWire(element)) { if (Context.CurrentLine == null) Snapshot(canvas, true); bool result = WireEditor.Split(canvas, element as ILine, Context.CurrentLine, point, Context.DiagramCreator, Context.EnableSnap); Context.CurrentRoot = null; Context.CurrentLine = null; return result; } } if (CanToggleLine()) MouseToggleLineSelection(canvas, point); return false; }
public void DragStart(ICanvas canvas, IThumb element) { Snapshot(canvas, false); Context.MoveAllSelected = element.GetSelected(); if (Context.MoveAllSelected == false) element.SetSelected(true); }
public void DragEnd(ICanvas canvas, IThumb element) { if (Context.SnapOnRelease == true && Context.EnableSnap == true) { if (Context.MoveAllSelected == true) { MoveSelectedElements(canvas, 0.0, 0.0, Context.EnableSnap); } else { element.SetSelected(false); MoveRoot(element, 0.0, 0.0, Context.EnableSnap); } } else { if (Context.MoveAllSelected != true) element.SetSelected(false); } Context.MoveAllSelected = false; }
public void Drag(ICanvas canvas, IThumb element, double dX, double dY) { bool snap = IsSnapOnDragEnabled(); if (Context.MoveAllSelected == true) MoveSelectedElements(canvas, dX, dY, snap); else MoveRoot(element, dX, dY, snap); }