From 2da7adf5f47edf88cef3c5d9042d689f6f1761d4 Mon Sep 17 00:00:00 2001 From: Sam Lantinga Date: Sat, 29 Dec 2007 06:08:17 +0000 Subject: [PATCH] Fixed bug #464 Added X1/X2 button constants --- WhatsNew | 3 +++ include/SDL_mouse.h | 4 ++++ src/video/wincommon/SDL_sysevents.c | 4 ++-- 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/WhatsNew b/WhatsNew index 8538e93ac..aa0b8d2c3 100644 --- a/WhatsNew +++ b/WhatsNew @@ -3,6 +3,9 @@ This is a list of API changes in SDL's version history. Version 1.0: +1.2.13: + Added SDL_BUTTON_X1 and SDL_BUTTON_X2 constants. + 1.2.12: Added SDL_VIDEO_ALLOW_SCREENSAVER to override SDL's disabling of the screensaver on Mac OS X and X11. diff --git a/include/SDL_mouse.h b/include/SDL_mouse.h index c2364d859..019497fbb 100644 --- a/include/SDL_mouse.h +++ b/include/SDL_mouse.h @@ -122,9 +122,13 @@ extern DECLSPEC int SDLCALL SDL_ShowCursor(int toggle); #define SDL_BUTTON_RIGHT 3 #define SDL_BUTTON_WHEELUP 4 #define SDL_BUTTON_WHEELDOWN 5 +#define SDL_BUTTON_X1 6 +#define SDL_BUTTON_X2 7 #define SDL_BUTTON_LMASK SDL_BUTTON(SDL_BUTTON_LEFT) #define SDL_BUTTON_MMASK SDL_BUTTON(SDL_BUTTON_MIDDLE) #define SDL_BUTTON_RMASK SDL_BUTTON(SDL_BUTTON_RIGHT) +#define SDL_BUTTON_X1MASK SDL_BUTTON(SDL_BUTTON_X1) +#define SDL_BUTTON_X2MASK SDL_BUTTON(SDL_BUTTON_X2) /* Ends C function definitions when using C++ */ diff --git a/src/video/wincommon/SDL_sysevents.c b/src/video/wincommon/SDL_sysevents.c index ac538d390..74d27bdd8 100644 --- a/src/video/wincommon/SDL_sysevents.c +++ b/src/video/wincommon/SDL_sysevents.c @@ -520,12 +520,12 @@ LRESULT CALLBACK WinMessage(HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) break; case WM_XBUTTONDOWN: xbuttonval = GET_XBUTTON_WPARAM(wParam); - button = SDL_BUTTON_WHEELDOWN + xbuttonval; + button = SDL_BUTTON_X1 + xbuttonval - 1; state = SDL_PRESSED; break; case WM_XBUTTONUP: xbuttonval = GET_XBUTTON_WPARAM(wParam); - button = SDL_BUTTON_WHEELDOWN + xbuttonval; + button = SDL_BUTTON_X1 + xbuttonval - 1; state = SDL_RELEASED; break; default: