コード例 #1
0
 protected override void OnMouseUp(GraphMouseEventArgs e)
 {
     CircleNode[] nodes = this.mGraph.Nodes;
     for (int i = 0; i < nodes.Length; i++)
     {
         nodes[i].MouseGrabbed = false;
     }
     e.Handled = true;
 }
コード例 #2
0
ファイル: AGraphNode.cs プロジェクト: Nofasar/s3pi-wrappers
 protected override bool OnMouseDown(GraphMouseEventArgs e)
 {
     if (!this.bMouseGrabbed && !e.Handled)
     {
         this.bMouseGrabbed = true;
         this.Invalidate();
     }
     return(base.OnMouseDown(e));
 }
コード例 #3
0
 protected override void OnMouseDown(GraphMouseEventArgs e)
 {
     if (!this.mouseGrabbed)
     {
         this.mouseGrabbed = true;
         this.Invalidate();
     }
     e.Handled = true;
 }
コード例 #4
0
 protected override void OnMouseUp(GraphMouseEventArgs e)
 {
     if (this.mouseGrabbed)
     {
         this.mouseGrabbed = false;
         this.Invalidate();
         e.Handled = true;
     }
 }
コード例 #5
0
ファイル: StateEdge.cs プロジェクト: Nofasar/s3pi-wrappers
 protected override bool OnMouseDown(GraphMouseEventArgs e)
 {
     if (!e.Handled)
     {
         StateMachineScene sms = this.Parent as StateMachineScene;
         sms.SelectStateEdge(this,
                             (Control.ModifierKeys & Keys.Control) != Keys.Control);
     }
     return(base.OnMouseDown(e));
 }
コード例 #6
0
        /// <summary>
        /// Overrides the <see cref="GraphElement.OnMouseUp(GraphMouseEventArgs)"/> function
        /// in order to "ungrab" <see cref="AGraphNode"/> instances that had been previously
        /// "grabbed" by the mouse from an earlier MouseDown event sent to the scene.
        /// </summary>
        /// <param name="e">The mouse event data of this event.</param>
        /// <returns>true to signify that mouse event has been handled by this event handler.
        /// </returns>
        protected override bool OnMouseUp(GraphMouseEventArgs e)
        {
            AGraphNode node;

            for (int i = 0; i < this.mNodeCount; i++)
            {
                node = this.mNodes[i];
                node.MouseGrabbed = false;
            }
            return(base.OnMouseUp(e));
        }
コード例 #7
0
 protected override void OnMouseUp(GraphMouseEventArgs e)
 {
     foreach (GraphElement item in this.Children)
     {
         Node node = item as Node;
         if (node != null)
         {
             node.MouseGrabbed = false;
         }
     }
     e.Handled = true;
 }
コード例 #8
0
ファイル: DGNode.cs プロジェクト: ChaosMageX/s3pi-wrappers
        protected override bool OnMouseDown(GraphMouseEventArgs e)
        {
            bool flag = base.OnMouseDown(e);

            this.mScene.ClearStateNodeSelection();
            this.mScene.ClearStateEdgeSelection();
            if (!e.Handled)
            {
                this.mScene.SelectDGNode(this,
                                         (Control.ModifierKeys & Keys.Control) != Keys.Control);
            }
            return(flag);
        }
コード例 #9
0
        protected override bool OnMouseDown(GraphMouseEventArgs e)
        {
            bool flag = base.OnMouseDown(e);

            if (!e.Handled)
            {
                if (this.ClipsChildrenToShape)
                {
                    this.mScene.SelectStateNode(this,
                                                (Control.ModifierKeys & kSelectKey) != kSelectKey);
                }
                else
                {
                    return(false);
                }
            }
            this.mScene.OnStateNodePressed(this);
            return(flag);
        }
コード例 #10
0
        protected override void OnMouseMove(GraphMouseEventArgs e)
        {
            PointF pos;

            foreach (GraphElement item in this.Children)
            {
                Node node = item as Node;
                if (node != null && node.MouseGrabbed)
                {
                    pos           = node.Position;
                    node.Position = new PointF(
                        pos.X + e.SceneX - this.lastMouseX,
                        pos.Y + e.SceneY - this.lastMouseY);
                }
            }
            this.lastMouseX = e.SceneX;
            this.lastMouseY = e.SceneY;
            e.Handled       = true;
        }
コード例 #11
0
 protected override bool OnMouseDoubleClick(GraphMouseEventArgs e)
 {
     if (!e.Handled)
     {
         if (this.bMinimized)
         {
             this.SetMinimized(false);
         }
         if (this.ClipsChildrenToShape)
         {
             this.mScene.SetFocusedState(this);
         }
         else
         {
             return(false);
         }
     }
     return(base.OnMouseDoubleClick(e));
 }
コード例 #12
0
        /// <summary>
        /// Overrides the <see cref="GraphElement.OnMouseMove(GraphMouseEventArgs)"/> function
        /// in order to move around <see cref="AGraphNode"/> instances that have been "grabbed"
        /// by the mouse and invoke the <see cref="AGraphNodeScene.OnNodeMovedByMouse(AGraphNode)"/>
        /// function for each of those <see cref="AGraphNode"/> instances.
        /// </summary>
        /// <param name="e">The mouse event data of this event.</param>
        /// <returns>true to signify that mouse event has been handled by this event handler.
        /// </returns>
        protected override bool OnMouseMove(GraphMouseEventArgs e)
        {
            AGraphNode node;

            for (int i = 0; i < this.mNodeCount; i++)
            {
                node = this.mNodes[i];
                if (node.MouseGrabbed)
                {
                    node.SetPosition(
                        node.X + e.SceneX - this.mLastMouseX,
                        node.Y + e.SceneY - this.mLastMouseY);
                    this.OnNodeMovedByMouse(node);
                }
            }
            this.mLastMouseX = e.SceneX;
            this.mLastMouseY = e.SceneY;
            return(base.OnMouseMove(e));
        }
コード例 #13
0
        protected override void OnMouseMove(GraphMouseEventArgs e)
        {
            CircleNode[] nodes = this.mGraph.Nodes;
            CircleNode   node;
            PointF       pos;

            for (int i = 0; i < nodes.Length; i++)
            {
                node = nodes[i];
                if (node.MouseGrabbed)
                {
                    pos           = node.Position;
                    node.Position = new PointF(
                        pos.X + e.SceneX - this.mLastMouseX,
                        pos.Y + e.SceneY - this.mLastMouseY);
                }
            }
            this.mLastMouseX = e.SceneX;
            this.mLastMouseY = e.SceneY;
            e.Handled        = true;
        }
コード例 #14
0
ファイル: AnchorPoint.cs プロジェクト: Nofasar/s3pi-wrappers
 protected override bool OnMouseDown(GraphMouseEventArgs e)
 {
     this.mOwner.Scene.OnAnchorPressed(this);
     return(base.OnMouseDown(e));
 }
コード例 #15
0
 protected override bool OnMouseMove(GraphMouseEventArgs e)
 {
     this.mScene.OnStateNodeHovered(this);
     return(base.OnMouseMove(e));
 }
コード例 #16
0
 protected override void OnMouseDown(GraphMouseEventArgs e)
 {
     this.mLastMouseX = e.SceneX;
     this.mLastMouseY = e.SceneY;
     e.Handled        = true;
 }
コード例 #17
0
 protected override bool OnMouseMove(GraphMouseEventArgs e)
 {
     this.mOwner.Scene.OnAnchorHovered(this);
     return base.OnMouseMove(e);
 }
コード例 #18
0
 protected override bool OnMouseDown(GraphMouseEventArgs e)
 {
     this.mOwner.Scene.OnAnchorPressed(this);
     return base.OnMouseDown(e);
 }
コード例 #19
0
ファイル: AnchorPoint.cs プロジェクト: Nofasar/s3pi-wrappers
 protected override bool OnMouseMove(GraphMouseEventArgs e)
 {
     this.mOwner.Scene.OnAnchorHovered(this);
     return(base.OnMouseMove(e));
 }
コード例 #20
0
 /// <summary>
 /// Overrides the <see cref="GraphElement.OnMouseDown(GraphMouseEventArgs)"/> function
 /// in order to record the last point in the scene at which the mouse was depressed.
 /// </summary>
 /// <param name="e">The mouse event data of this event.</param>
 /// <returns>true to signify that mouse event has been handled by this event handler.
 /// </returns>
 protected override bool OnMouseDown(GraphMouseEventArgs e)
 {
     this.mLastMouseX = e.SceneX;
     this.mLastMouseY = e.SceneY;
     return(base.OnMouseDown(e));
 }
コード例 #21
0
ファイル: Graph.cs プロジェクト: eylvisaker/tbsuite
        private GraphMouseEventArgs getMouseEventArgs(MouseEventArgs e)
        {
            GraphMouseEventArgs ret = new GraphMouseEventArgs();

            ret.Button = e.Button;
            ret.Clicks = e.Clicks;
            ret.Delta = e.Delta;
            ret.ScreenLocation = new Point(e.Location.X, e.Location.Y);

            ret.GraphLocation = boxToGraph(e.Location);

            PointF origin = boxToGraph(new PointF(0, 0));
            PointF one = boxToGraph(new PointF(1, 1));

            PointF pixelSize = new PointF(Math.Abs(one.X - origin.X), Math.Abs(one.Y - origin.Y));

            for (int index = 0; index < DataSets.Count; index++)
            {
                GraphDataSet d = DataSets[index];
                PointF diff = new PointF();

                for (int j = 0; j < d.Points.Count; j++)
                {
                    diff.X = ret.GraphLocation.X - d.Points[j].X;
                    diff.Y = ret.GraphLocation.Y - d.Points[j].Y;

                    if (Math.Abs(diff.X) < pixelSize.X * mMouseRadius &&
                        Math.Abs(diff.Y) < pixelSize.Y * mMouseRadius)
                    {
                        GraphMouseEventArgs.GraphDataSetHover val = new GraphMouseEventArgs.GraphDataSetHover();

                        val.dataSet = d;
                        val.pointIndex = j;
                        val.point = d.Points[j];

                        ret.DataSetIndices.Add(val);

                        break;
                    }
                }
            }

            return ret;
        }