public void DragSelectedElement(Point delta) { bool connectorAttached = selectedElement.SnapCheck(GripType.Start, ref delta) || selectedElement.SnapCheck(GripType.End, ref delta); selectedElement.Connections.ForEach(c => c.ToElement.MoveElementOrAnchor(c.ToConnectionPoint.Type, delta)); MoveElement(selectedElement, delta); UpdateSelectedElement.Fire(this, new ElementEventArgs() { Element = SelectedElement }); if (!connectorAttached) { DetachFromAllShapes(selectedElement); } }
public override void DragSelectedElements(Point delta) { if (selectedElements.Count == 1) { GraphicElement el = selectedElements[0]; bool connectorAttached = el.SnapCheck(GripType.Start, ref delta) || el.SnapCheck(GripType.End, ref delta); el.Connections.ForEach(c => c.ToElement.MoveElementOrAnchor(c.ToConnectionPoint.Type, delta)); if (!connectorAttached) { DetachFromAllShapes(el); } MoveElement(el, delta); UpdateSelectedElement.Fire(this, new ElementEventArgs() { Element = el }); } else { MoveSelectedElements(delta); } }