Example #1
0
        }             //InputHandler

        private void HandleMouseLeftButton(GameTime gTime)
        {
            tsTimeSinceLastClick += gTime.ElapsedGameTime;

            if (tsTimeSinceLastClick >= TimeSpan.FromMilliseconds(250))
            {
                nClicksForDoubleClick = 0;
            }//if

            if (mousestatus.LeftButton == ButtonState.Pressed)
            {
                if (mssButtonLeft == MsState.ButtonWasReleased)
                {
                    if (GetMouseX() >= 0 && GetMouseX() <= cG.GetBackBufferWidth())
                    {
                        if (GetMouseY() >= 0 && GetMouseY() <= cG.GetBackBufferHeight())
                        {
                            mssButtonLeft = MsState.ButtonWasPressed;
                            nClicksForDoubleClick++;

                            if (nClicksForDoubleClick == 1)
                            {
                                tsTimeSinceLastClick = TimeSpan.Zero;
                            }//if

                            if (nClicksForDoubleClick == 2)
                            {
                                if (tsTimeSinceLastClick < TimeSpan.FromMilliseconds(250))
                                {
                                    nClicksForDoubleClick = 0;
                                    mssButtonLeft         = MsState.ButtonWasDoublePressed;
                                } //if
                            }     //if

                            if (nClicksForDoubleClick == 3)
                            {
                                nClicksForDoubleClick = 0;
                            }
                        } //if
                    }     //if
                }         //if
                else
                {
                    if (mssButtonLeft == MsState.ButtonWasPressed || mssButtonLeft == MsState.ButtonWasDoublePressed)
                    {
                        mssButtonLeft = MsState.ButtonStillPressed;
                    } //if
                }     //else
            }         //if

            if (mousestatus.LeftButton == ButtonState.Released)
            {
                mssButtonLeft = MsState.ButtonWasReleased;
            } //if
        }     //HandleMouseLeftButton