Exemple #1
0
        private void Node_MouseEnter(object sender, MouseEventArgs e)
        {
            ShowName = true;

            SelectOver = this;

            if (SelectOrigin != null)
            {
                if (((SelectOrigin.CanConnect(this) && !SelectOrigin.IsCircular(this)) ||
                     (CanConnect(SelectOrigin) && !IsCircular(SelectOrigin))) && !Node.Graph.ReadOnly)
                {
                    Cursor = Cursors.Arrow;
                }
                else
                {
                    Cursor = Cursors.No;
                }
            }
            else
            {
                Cursor = Cursors.Arrow;
            }
        }
Exemple #2
0
        private void UserControl_MouseDown(object sender, MouseButtonEventArgs e)
        {
            e.Handled = true;
            if (Node.Graph.ReadOnly)
            {
                return;
            }

            if (e.LeftButton == MouseButtonState.Pressed && !Keyboard.IsKeyDown(Key.LeftAlt) && !Keyboard.IsKeyDown(Key.RightAlt))
            {
                if (SelectOrigin == this)
                {
                    SelectOrigin = null;
                }
                else if (SelectOrigin != this && SelectOrigin != null)
                {
                    if (Output != null && SelectOrigin.Output == null)
                    {
                        ConnectToNode(SelectOrigin);
                    }
                    else
                    {
                        SelectOrigin.ConnectToNode(this);
                    }

                    SelectOrigin = null;
                }
                else
                {
                    SelectOrigin = this;
                }
            }
            else if (e.LeftButton == MouseButtonState.Pressed && (Keyboard.IsKeyDown(Key.LeftAlt) || Keyboard.IsKeyDown(Key.RightAlt)))
            {
                Dispose();
            }
        }