Radegast.Rendering.SceneWindow.glControl_MouseDown C# (CSharp) Method

glControl_MouseDown() private method

private glControl_MouseDown ( object sender, MouseEventArgs e ) : void
sender object
e MouseEventArgs
return void
        private void glControl_MouseDown(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                dragging = true;
                downX = dragX = e.X;
                downY = dragY = e.Y;

                if (ModifierKeys == Keys.None)
                {
                    object picked;
                    if (TryPick(e.X, e.Y, out picked, out LeftclickedFaceID))
                    {
                        if (picked is RenderPrimitive)
                        {
                            TryTouchObject((RenderPrimitive)picked);
                        }
                    }
                }
                else if (ModifierKeys == Keys.Alt)
                {
                    object picked;
                    int LeftclickedFaceID;
                    Vector3 worldPosition;
                    if (TryPick(e.X, e.Y, out picked, out LeftclickedFaceID, out worldPosition))
                    {
                        trackedObject = null;
                        Camera.FocalPoint = worldPosition;
                        Point screenCenter = new Point(glControl.Width / 2, glControl.Height / 2);
                        Cursor.Position = glControl.PointToScreen(screenCenter);
                        downX = dragX = screenCenter.X;
                        downY = dragY = screenCenter.Y;
                        Cursor.Hide();
                    }
                }
            }
            else if (e.Button == MouseButtons.Right)
            {
                object picked;
                RightclickedObject = null;
                if (TryPick(e.X, e.Y, out picked, out RightclickedFaceID, out RightclickedPosition))
                {
                    if (picked is SceneObject)
                    {
                        RightclickedObject = (SceneObject)picked;
                    }
                }
                ctxMenu.Show(glControl, e.X, e.Y);
            }
        }
SceneWindow