/// <summary>
        /// Constructor
        /// </summary>
        /// <param name="designer">Diagram designer.</param>
        /// <param name="sourceConnector">Source item of the relationship.</param>
        public DiagramConnectorAdorner(DesignerCanvas designer, DiagramConnector sourceConnector, Point startPoint)
            : base(designer)
        {
            this.diagramDesigner = designer;
            this.sourceConnector = sourceConnector;
            this.startPoint = startPoint;

            sourceItem = sourceConnector.DiagramItem;

            drawingPen = new Pen(Brushes.LightSlateGray, 1);
            drawingPen.LineJoin = PenLineJoin.Round;

            this.Cursor = Cursors.Cross;
        }
Esempio n. 2
0
        /// <summary>
        /// Constructor
        /// </summary>
        /// <param name="designer">Diagram designer.</param>
        /// <param name="sourceConnector">Source item of the relationship.</param>
        public DiagramConnectorAdorner(DesignerCanvas designer, DiagramConnector sourceConnector, Point startPoint)
            : base(designer)
        {
            this.diagramDesigner = designer;
            this.sourceConnector = sourceConnector;
            this.startPoint      = startPoint;

            sourceItem = sourceConnector.DiagramItem;

            drawingPen          = new Pen(Brushes.LightSlateGray, 1);
            drawingPen.LineJoin = PenLineJoin.Round;

            this.Cursor = Cursors.Cross;
        }
        /// <summary>
        /// Hit testing.
        /// </summary>
        /// <param name="hitPoint">Location to do a hit test at.</param>
        private void HitTesting(Point hitPoint)
        {
            DependencyObject hitObject = diagramDesigner.InputHitTest(hitPoint) as DependencyObject;
            while (hitObject != null)
            {
                if (hitObject is DesignerItem)
                {
                    hitItem = hitObject as DesignerItem;
                    if ((hitItem as DesignerItem).DataContext is TreeNodeViewModel)
                    {
                        if (sourceItem != null && hitItem != null)
                        {
                            return;
                        }
                    }

                    hitItem = null;
                    return;
                }

                hitObject = VisualTreeHelper.GetParent(hitObject);
            }

            hitItem = null;
        }