예제 #1
0
        /// <summary>
        /// Gets the current pressed Mouse Buttons
        /// </summary>
        public WinMouseButtons MouseButtons(MouseState state)
        {
            WinMouseButtons none = WinMouseButtons.None;

            if (state.LeftButton == ButtonState.Pressed)
            {
                none |= WinMouseButtons.Left;
            }
            if (state.RightButton == ButtonState.Pressed)
            {
                none |= WinMouseButtons.Right;
            }
            if (state.MiddleButton == ButtonState.Pressed)
            {
                none |= WinMouseButtons.Middle;
            }
            if (state.XButton1 == ButtonState.Pressed)
            {
                none |= WinMouseButtons.XButton1;
            }
            if (state.XButton2 == ButtonState.Pressed)
            {
                none |= WinMouseButtons.XButton2;
            }

            return(none);
        }
예제 #2
0
        private WinMouseButtons translateWParamIntoMouseButtons(int wParam)
        {
            WinMouseButtons mb = WinMouseButtons.None;

            if ((wParam & 0x0001) == 0x0001)
            {
                mb |= WinMouseButtons.Left;
            }
            if ((wParam & 0x0002) == 0x0002)
            {
                mb |= WinMouseButtons.Right;
            }
            if ((wParam & 0x0002) == 0x0010)
            {
                mb |= WinMouseButtons.Middle;
            }
            if ((wParam & 0x0002) == 0x0020)
            {
                mb |= WinMouseButtons.XButton1;
            }
            if ((wParam & 0x0002) == 0x0040)
            {
                mb |= WinMouseButtons.XButton2;
            }
            return(mb);
        }
예제 #3
0
 public InputEventMouse(MouseEvent eventType, InputEventMouse parent)
     : base(parent)
 {
     EventType = eventType;
     m_Button = parent.m_Button;
     m_Clicks = parent.m_Clicks;
     X = parent.X;
     Y = parent.Y;
     MouseData = parent.MouseData;
 }
예제 #4
0
 public InputEventMouse(MouseEvent eventType, InputEventMouse parent)
     : base(parent)
 {
     EventType  = eventType;
     _buttons   = parent._buttons;
     _clicks    = parent._clicks;
     X          = parent.X;
     Y          = parent.Y;
     _mouseData = parent._mouseData;
 }
예제 #5
0
 public InputEventMouse(MouseEvent eventType, InputEventMouse parent)
     : base(parent)
 {
     EventType   = eventType;
     m_Buttons   = parent.m_Buttons;
     m_Clicks    = parent.m_Clicks;
     X           = parent.X;
     Y           = parent.Y;
     m_MouseData = parent.m_MouseData;
 }
예제 #6
0
 public InputEventMouse(MouseEvent eventType, InputEventMouse parent)
     : base(parent)
 {
     m_eventType = eventType;
     m_button    = parent.m_button;
     m_clicks    = parent.m_clicks;
     m_x         = parent.m_x;
     m_y         = parent.m_y;
     m_mouseData = parent.m_mouseData;
 }
예제 #7
0
 public InputEventMouse(MouseEvent eventType, WinMouseButtons button, int clicks, int x, int y, int mouseData, WinKeys modifiers)
     : base(modifiers)
 {
     Vector2 dpi = DpiManager.GetSystemDpiScalar();
     EventType = eventType;
     m_Button = button;
     m_Clicks = clicks;
     X = (int)(x / dpi.X);
     Y = (int)(y / dpi.Y);
     MouseData = mouseData;
 }
예제 #8
0
 /// <summary>
 /// Reads the supplied message and executes any Mouse Up events required.
 /// </summary>
 /// <param name="message">The Message to parse</param>
 /// <param name="button">The Mouse Button the Message is for</param>
 /// <param name="clicks">The number of clicks for the Message</param>
 private void WmMouseUp(ref Message message, WinMouseButtons button, int clicks)
 {
     // HandleMouseBindings();
     invokeMouseUp(new InputEventMouse(MouseEvent.Up,
                                       button,
                                       clicks,
                                       Message.SignedLowWord(message.LParam),
                                       Message.SignedHighWord(message.LParam),
                                       (int)(long)message.WParam,
                                       ModifierKeys
                                       ));
 }
예제 #9
0
        public InputEventMouse(MouseEvent type, WinMouseButtons btn, int clicks, int x, int y, int data, WinKeys modifiers)
            : base(modifiers)
        {
            Vector2 dpi = DpiManager.GetSystemDpiScalar();

            EventType   = type;
            m_Buttons   = btn;
            m_Clicks    = clicks;
            X           = (int)(x / dpi.X);
            Y           = (int)(y / dpi.Y);
            m_MouseData = data;
        }
예제 #10
0
        public InputEventMouse(MouseEvent type, WinMouseButtons btn, int clicks, int x, int y, int data, WinKeys modifiers)
            : base(modifiers)
        {
            var dpi = DpiManager.GetSystemDpiScalar();

            EventType  = type;
            _buttons   = btn;
            _clicks    = clicks;
            X          = (int)(x / dpi.x);
            Y          = (int)(y / dpi.y);
            _mouseData = data;
        }
예제 #11
0
        public InputEventMouse(MouseEvent eventType, WinMouseButtons button, int clicks, int x, int y, int mouseData, WinKeys modifiers)
            : base(modifiers)
        {
            Vector2 dpi = DpiManager.GetSystemDpiScalar();

            m_eventType = eventType;
            m_button    = button;
            m_clicks    = clicks;
            m_x         = (int)(x / dpi.X);
            m_y         = (int)(y / dpi.Y);
            m_mouseData = mouseData;
        }
예제 #12
0
파일: WndProc.cs 프로젝트: jorsi/UltimaXNA
 /// <summary>
 /// Reads the supplied message and executes any Mouse Up events required.
 /// </summary>
 /// <param name="message">The Message to parse</param>
 /// <param name="button">The Mouse Button the Message is for</param>
 /// <param name="clicks">The number of clicks for the Message</param>
 private void WmMouseUp(ref Message message, WinMouseButtons button, int clicks)
 {
     // HandleMouseBindings();
     invokeMouseUp(new InputEventMouse(MouseEvent.Up,
         button,
         clicks,
         Message.SignedLowWord(message.LParam),
         Message.SignedHighWord(message.LParam),
         (int)(long)message.WParam,
         ModifierKeys
         ));
 }
예제 #13
0
 public InputEventMouse(MouseEvent eventType, InputEventMouse parent)
     : base(parent)
 {
     m_eventType = eventType;
     m_button = parent.m_button;
     m_clicks = parent.m_clicks;
     m_x = parent.m_x;
     m_y = parent.m_y;
     m_mouseData = parent.m_mouseData;
 }