public MoveAction(IEnumerable <LayoutElement> elements, Guidelines guidelines) { _guidelines = guidelines; _elements = elements.ToList(); _trackingRect = Bounds.FromRectangles(_elements.Select(el => el.Bounds)); _startingPoints = _elements.ToDictionary(x => x.Id, x => x.Bounds.TopLeft); _referencePoint = _trackingRect.TopLeft; }
public ResizeAction(LayoutElement element, string direction, Guidelines guidelines) { _element = element; _direction = direction; _original = element.Clone(); _final = element.Clone(); _guidelines = guidelines; _trackingPoint = GetTrackingPoint(element, direction); _referencePoint = _trackingPoint; }
public DesignCanvas() { InitializeComponent(); _guidelines = new Guidelines(); _guidelinesAdorner = new GuidelinesAdorner(this, _guidelines); Loaded += (s, e) => { var adornerLayer = AdornerLayer.GetAdornerLayer(this); adornerLayer.Add(_guidelinesAdorner); }; _guidelines.LinesUpdated += (s, e) => { _guidelinesAdorner.InvalidateVisual(); }; }
public GuidelinesAdorner(UIElement adornedElement, Guidelines guidelines) : base(adornedElement) { IsHitTestVisible = false; _guidelines = guidelines; }