internal ConnectorInfo GetInfo() { ConnectorInfo info = new ConnectorInfo(); info.DesignerItemLeft = DesignerCanvas.GetLeft(this.ParentDesignerItem); info.DesignerItemTop = DesignerCanvas.GetTop(this.ParentDesignerItem); info.DesignerItemSize = new Size(this.ParentDesignerItem.ActualWidth, this.ParentDesignerItem.ActualHeight); info.Orientation = this.Orientation; info.Position = this.Position; return(info); }
protected override void OnMouseLeftButtonDown(MouseButtonEventArgs e) { base.OnMouseLeftButtonDown(e); DesignerCanvas canvas = GetDesignerCanvas(this); if (canvas != null) { // position relative to DesignerCanvas this.dragStartPoint = new Point?(e.GetPosition(canvas)); e.Handled = true; } }
private void ShowAdorner() { // the ConnectionAdorner is created once for each Connection if (this.connectionAdorner == null) { DesignerCanvas designer = VisualTreeHelper.GetParent(this) as DesignerCanvas; AdornerLayer adornerLayer = AdornerLayer.GetAdornerLayer(this); if (adornerLayer != null) { this.connectionAdorner = new ConnectionAdorner(designer, this); adornerLayer.Add(this.connectionAdorner); } } this.connectionAdorner.Visibility = Visibility.Visible; }
public ConnectionAdorner(DesignerCanvas designer, Connection connection) : base(designer) { this.designerCanvas = designer; adornerCanvas = new Canvas(); this.visualChildren = new VisualCollection(this); this.visualChildren.Add(adornerCanvas); this.connection = connection; this.connection.PropertyChanged += new PropertyChangedEventHandler(AnchorPositionChanged); InitializeDragThumbs(); drawingPen = new Pen(Brushes.LightSlateGray, 1); drawingPen.LineJoin = PenLineJoin.Round; base.Unloaded += new RoutedEventHandler(ConnectionAdorner_Unloaded); }
void Connection_Unloaded(object sender, RoutedEventArgs e) { // do some housekeeping when Connection is unloaded // remove event handler this.Source = null; this.Sink = null; // remove adorner if (this.connectionAdorner != null) { DesignerCanvas designer = VisualTreeHelper.GetParent(this) as DesignerCanvas; AdornerLayer adornerLayer = AdornerLayer.GetAdornerLayer(this); if (adornerLayer != null) { adornerLayer.Remove(this.connectionAdorner); this.connectionAdorner = null; } } }
public SelectionService(DesignerCanvas canvas) { this.designerCanvas = canvas; }