예제 #1
0
        private void LeftButton(State state)
        {
            var isADown = state.Gamepad.Buttons.HasFlag(GamepadButtonFlags.A);

            if (isADown && !_wasADown)
            {
                _mouseSimulator.LeftButtonDown();
            }
            if (!isADown && _wasADown)
            {
                _mouseSimulator.LeftButtonUp();
            }
            _wasADown = isADown;
        }
예제 #2
0
        // Bumpers
        private void RightBumper_Button(State state)  // Right Mouse Click
        {
            var isRightBumperDown = state.Gamepad.Buttons.HasFlag(GamepadButtonFlags.RightShoulder);

            if (isRightBumperDown && !_wasRightBumperDown)
            {
                _mouseSimulator.LeftButtonDown();
            }
            if (!isRightBumperDown && _wasRightBumperDown)
            {
                _mouseSimulator.LeftButtonUp();
            }
            _wasRightBumperDown = isRightBumperDown;
        }
예제 #3
0
        public static void MouseButtonUp(this IMouseSimulator mouse, MouseButton button)
        {
            switch (button)
            {
            case MouseButton.LeftButton:
                mouse.LeftButtonUp();
                break;

            case MouseButton.RightButton:
                mouse.RightButtonUp();
                break;

            default:
                break;
            }
        }
예제 #4
0
        private void LeftBtn(State state)
        {
            var aDown = state.Gamepad.Buttons.HasFlag(GamepadButtonFlags.A);

            if (aDown && !aWasDown)
            {
                mouseSimulator.LeftButtonDown();
                CheckA.Dispatcher.Invoke(() => { CheckA.IsChecked = true; });
            }

            if (!aDown && aWasDown)
            {
                mouseSimulator.LeftButtonUp();
                CheckA.Dispatcher.Invoke(() => { CheckA.IsChecked = false; });
            }
            aWasDown = aDown;
        }
예제 #5
0
        public void Release(string button)
        {
            int buttonNumber = ParseMouseButtonNumber(button);

            if (buttonNumber == 1)
            {
                _mouse.LeftButtonUp();
            }
            else if (buttonNumber == 2)
            {
                _mouse.RightButtonUp();
            }
            else if (buttonNumber == 3)
            {
                _mouse.MiddleButtonUp();
            }
            else if (buttonNumber > 3)
            {
                _mouse.XButtonUp(buttonNumber - 3);
            }
        }
예제 #6
0
        public void FireMouseEvent(IMouseSimulator a_ims, mousePacket a_mhs)
        {
            switch ((MouseEventFlag)a_mhs.flags)
            {
            case MouseEventFlag.MOUSEEVENTF_MOVE:
                a_ims.MoveMouseTo(a_mhs.x, a_mhs.y);
                break;

            case MouseEventFlag.MOUSEEVENTF_LEFTDOWN:
                a_ims.LeftButtonDown();
                break;

            case MouseEventFlag.MOUSEEVENTF_LEFTUP:
                a_ims.LeftButtonUp();
                break;

            case MouseEventFlag.MOUSEEVENTF_RIGHTDOWN:
                a_ims.RightButtonDown();
                break;

            case MouseEventFlag.MOUSEEVENTF_RIGHTUP:
                a_ims.RightButtonUp();
                break;

            case MouseEventFlag.MOUSEEVENTF_WHEEL:
                if (a_mhs.y > 0)
                {
                    a_ims.VerticalScroll(3);
                }
                else
                {
                    a_ims.VerticalScroll(-3);
                }
                break;
            }
        }
예제 #7
0
 protected void EndPressing(long ticks, VirtualKeyCode keyCode = VirtualKeyCode.SPACE)
 {
     Log.Debug($"Operation performed. IsKeyDown: {false}. Ticks: {ticks}.");
     //            _keyboard.KeyUp(keyCode);
     _mouse.LeftButtonUp();
 }