public static ICommand RequestMove(this IEditor editor, Size moveDelta) { var req = new ChangeBoundsRequest(); req.MoveDelta = moveDelta; return(editor.PerformRequest(req)); }
// ------------------------------ // protected // ------------------------------ protected virtual Rectangle GetNewBounds(Rectangle oldBounds, ChangeBoundsRequest request) { return(new Rectangle( GetGridAdjustedPoint(oldBounds.Location + request.MoveDelta), oldBounds.Size )); }
// ======================================== // constructor // ======================================== public AdjustSpaceTool(EditorCanvas canvas, ITool toolOnFinished) { _canvas = canvas; _moveRequest = new ChangeBoundsRequest(); _spaceRequest = new AdjustSpaceRequest(); _toolOnFinished = toolOnFinished; }
protected override void OnFigureDragCancel() { base.OnFigureDragCancel(); var req = new ChangeBoundsRequest(); Host.HideFeedback(req); }
public static ICommand RequestResize(this IEditor editor, Size sizeDelta, Directions resizeDirection, bool adjustSize) { var req = new ChangeBoundsRequest(); req.SizeDelta = sizeDelta; req.ResizeDirection = resizeDirection; req.AdjustSize = adjustSize; return(editor.PerformRequest(req)); }
protected override void OnFigureDragFinish(MouseEventArgs e) { base.OnFigureDragFinish(e); Host.RequestResize(new Size(e.X - _dragStartLocation.X, 0), Directions.Right, true); var req = new ChangeBoundsRequest(); Host.HideFeedback(req); }
protected override void OnFigureDragMove(MouseEventArgs e) { base.OnFigureDragMove(e); var req = new ChangeBoundsRequest(); req.ResizeDirection = Directions.Right; req.SizeDelta = (Size)e.Location - (Size)_dragStartLocation; Host.ShowFeedback(req); }
// ------------------------------ // protected // ------------------------------ protected virtual Rectangle GetNewBounds(Rectangle oldBounds, ChangeBoundsRequest request) { var r = new Rectangle(oldBounds.Location + request.MoveDelta, oldBounds.Size); if (_adjustToGrid) { return(GetGridAdjustedRect(r, request.AdjustSize)); } else { return(r); } }
protected override Rectangle GetNewBounds(Rectangle oldBounds, ChangeBoundsRequest request) { var moveDelta = request.MoveDelta; var sizeDelta = request.SizeDelta; var left = GetGridAdjustedX(oldBounds.Left + moveDelta.Width); var top = GetGridAdjustedY(oldBounds.Top + moveDelta.Height); var width = oldBounds.Width; var height = oldBounds.Height; if (!sizeDelta.IsEmpty) { // todo: request.AdjustSize == false対応 var node = _Host.Figure as INode; var gridAdLeft = GetGridAdjustedX(left + sizeDelta.Width); var gridAdWidth = width - (gridAdLeft - left); var gridAdTop = GetGridAdjustedY(top + sizeDelta.Height); var gridAdHeight = height - (gridAdTop - top); var gridAdSize = node.MeasureAutoSize(new Size(gridAdWidth, gridAdHeight)); if (EnumUtil.HasAllFlags((int)request.ResizeDirection, (int)Directions.Left)) { width = gridAdSize.Width; left = left - (width - oldBounds.Width); } if (EnumUtil.HasAllFlags((int)request.ResizeDirection, (int)Directions.Up)) { height = gridAdSize.Height; top = top - (height - oldBounds.Height); } if (EnumUtil.HasAllFlags((int)request.ResizeDirection, (int)Directions.Right)) { width = width + sizeDelta.Width + GetGridAdjustedDiffX(left + width + sizeDelta.Width); } if (EnumUtil.HasAllFlags((int)request.ResizeDirection, (int)Directions.Down)) { height = height + sizeDelta.Height + GetGridAdjustedDiffY(top + height + sizeDelta.Height); } } return(new Rectangle(left, top, width, height)); }
private Size GetTargetConnectableMoveDelta(IEdge edge, ChangeBoundsRequest req) { var tgtLoc = edge.Target.Location; return((Size)GetGridAdjustedPoint(tgtLoc + req.MoveDelta) - (Size)tgtLoc); }
private Size GetSourceConnectableMoveDelta(IEdge edge, ChangeBoundsRequest req) { var srcLoc = edge.Source.Location; return((Size)GetGridAdjustedPoint(srcLoc + req.MoveDelta) - (Size)srcLoc); }
// ======================================== // constructor // ======================================== public AbstractResizeHandle() { _request = new ChangeBoundsRequest(); }
// ======================================== // constructor // ======================================== public MoveScenario(IHandle handle) : base(handle) { _moveRequest = new ChangeBoundsRequest(); }
// ======================================== // constructor // ======================================== public ResizeScenario(IHandle handle) : base(handle) { _request = new ChangeBoundsRequest(); }