]> git.tdb.fi Git - libs/gui.git/blobdiff - source/input/windows/mouse.cpp
Add constants for mouse axes and buttons
[libs/gui.git] / source / input / windows / mouse.cpp
index aae5141b6d7f16d7593e2a6dc246472d77230801..c9cb8a1489b993ca2e553c2d07b10dfe6d678a8f 100644 (file)
@@ -1,5 +1,6 @@
 #include <windowsx.h>
 #include <msp/graphics/window_private.h>
+#include "keys.h"
 #include "mouse.h"
 
 namespace Msp {
@@ -15,26 +16,26 @@ void Mouse::input_event(const Graphics::Window::Event &event)
        {
        case WM_LBUTTONDOWN:
        case WM_LBUTTONUP:
-               set_button_state(1, event.msg==WM_LBUTTONDOWN, true);
+               set_button_state(MOUSE_LEFT, event.msg==WM_LBUTTONDOWN, true);
                break;
        case WM_MBUTTONDOWN:
        case WM_MBUTTONUP:
-               set_button_state(2, event.msg==WM_MBUTTONDOWN, true);
+               set_button_state(MOUSE_MIDDLE, event.msg==WM_MBUTTONDOWN, true);
                break;
        case WM_RBUTTONDOWN:
        case WM_RBUTTONUP:
-               set_button_state(3, event.msg==WM_RBUTTONDOWN, true);
+               set_button_state(MOUSE_RIGHT, event.msg==WM_RBUTTONDOWN, true);
                break;
        case WM_MOUSEWHEEL:
                {
-                       unsigned btn = (HIWORD(event.wparam)&0x8000) ? 5 : 4;
+                       unsigned btn = (HIWORD(event.wparam)&0x8000) ? MOUSE_WHEEL_DOWN : MOUSE_WHEEL_UP;
                        set_button_state(btn, true, true);
                        set_button_state(btn, false, true);
                }
                break;
        case WM_MOUSEMOVE:
-               set_axis_value(0, GET_X_LPARAM(event.lparam)*2.0/window.get_width()-1.0, true);
-               set_axis_value(1, 1.0-GET_Y_LPARAM(event.lparam)*2.0/window.get_height(), true);
+               set_axis_value(MOUSE_X_AXIS, GET_X_LPARAM(event.lparam)*2.0/window.get_width()-1.0, true);
+               set_axis_value(MOUSE_Y_AXIS, 1.0-GET_Y_LPARAM(event.lparam)*2.0/window.get_height(), true);
                break;
        }
 }