public ResizeAdorner(PanelDesigner panelDesigner, UIElement adornedElement) : base(adornedElement) { m_panelDesigner = panelDesigner; m_panelDesigner.SelectedElementChanged += m_panelDesigner_SelectedElementChanged; m_visualChildren = new VisualCollection(this); m_rectangle = new Rectangle(); m_rectangle.Stroke = m_panelDesigner.SelectedElement == AdornedElement ? Brushes.CornflowerBlue : Brushes.LightBlue; m_rectangle.StrokeThickness = 1; m_visualChildren.Add(m_rectangle); BuildResizeAdorner(ref m_bottom, Cursors.SizeNS); BuildResizeAdorner(ref m_bottomLeft, Cursors.SizeNESW); BuildResizeAdorner(ref m_bottomRight, Cursors.SizeNWSE); BuildResizeAdorner(ref m_left, Cursors.SizeWE); BuildResizeAdorner(ref m_right, Cursors.SizeWE); BuildResizeAdorner(ref m_top, Cursors.SizeNS); BuildResizeAdorner(ref m_topLeft, Cursors.SizeNWSE); BuildResizeAdorner(ref m_topRight, Cursors.SizeNESW); m_bottom.DragDelta += new DragDeltaEventHandler(HandleBottom); m_bottomLeft.DragDelta += new DragDeltaEventHandler(HandleBottomLeft); m_bottomRight.DragDelta += new DragDeltaEventHandler(HandleBottomRight); m_left.DragDelta += new DragDeltaEventHandler(HandleLeft); m_right.DragDelta += new DragDeltaEventHandler(HandleRight); m_top.DragDelta += new DragDeltaEventHandler(HandleTop); m_topLeft.DragDelta += new DragDeltaEventHandler(HandleTopLeft); m_topRight.DragDelta += new DragDeltaEventHandler(HandleTopRight); }
public RubberbandAdorner(PanelDesigner panelDesigner, UIElement adornedElement, Point? startPoint) : base(adornedElement) { m_panelDesigner = panelDesigner; m_startPoint = startPoint; m_visualChildren = new VisualCollection(this); m_adornerCanvas = new Canvas(); m_adornerCanvas.Background = Brushes.Transparent; //m_adornerCanvas.Background = Brushes.Yellow; m_visualChildren.Add(m_adornerCanvas); m_rubberBand = new Rectangle(); m_rubberBand.Stroke = Brushes.Black; m_rubberBand.StrokeThickness = 1; m_rubberBand.StrokeDashArray = new DoubleCollection(new double[] { 2 }); m_adornerCanvas.Children.Add(m_rubberBand); }
public AlignAdorner(PanelDesigner panelDesigner) : base(panelDesigner) { m_panelDesigner = panelDesigner; m_visualChildren = new VisualCollection(this); m_adornerCanvas = new Canvas(); m_adornerCanvas.Background = null; m_visualChildren.Add(m_adornerCanvas); m_leftLine = new Line(); m_leftLine.Stroke = Brushes.Green; m_leftLine.StrokeDashArray = new DoubleCollection(new double[] { 2 }); m_leftLine.StrokeThickness = 1; m_leftLine.Visibility = Visibility.Collapsed; m_adornerCanvas.Children.Add(m_leftLine); m_topLine = new Line(); m_topLine.Stroke = Brushes.Green; m_topLine.StrokeDashArray = new DoubleCollection(new double[] { 2 }); m_topLine.StrokeThickness = 1; m_topLine.Visibility = Visibility.Collapsed; m_adornerCanvas.Children.Add(m_topLine); m_rightLine = new Line(); m_rightLine.Stroke = Brushes.Green; m_rightLine.StrokeDashArray = new DoubleCollection(new double[] { 2 }); m_rightLine.StrokeThickness = 1; m_rightLine.Visibility = Visibility.Collapsed; m_adornerCanvas.Children.Add(m_rightLine); m_bottomLine = new Line(); m_bottomLine.Stroke = Brushes.Green; m_bottomLine.StrokeDashArray = new DoubleCollection(new double[] { 2 }); m_bottomLine.StrokeThickness = 1; m_bottomLine.Visibility = Visibility.Collapsed; m_adornerCanvas.Children.Add(m_bottomLine); }