diff src/events/SDL_mouse.c @ 4429:faa9fc8e7f67

General improvements for user custom event registration * Switched event type to enum (int32) * Switched polling by mask to polling by type range * Added SDL_RegisterEvents() to allow dynamic user event registration * Spread events out to allow inserting new related events without breaking binary compatibility * Added padding to event structures so they're the same size regardless of 32-bit compiler structure packing settings * Split SDL_HasEvent() to SDL_HasEvent() for a single event and SDL_HasEvents() for a range of events * Added SDL_GetEventState() as a shortcut for SDL_EventState(X, SDL_QUERY) * Added SDL_FlushEvent() and SDL_FlushEvents() to clear events from the event queue
author Sam Lantinga <slouken@libsdl.org>
date Thu, 25 Mar 2010 01:08:26 -0700
parents f7b03b6838cb
children 3e69e077cb95
line wrap: on
line diff
--- a/src/events/SDL_mouse.c	Wed Mar 10 15:07:20 2010 +0000
+++ b/src/events/SDL_mouse.c	Thu Mar 25 01:08:26 2010 -0700
@@ -365,7 +365,7 @@
 
     mouse->last_x = x;
     mouse->last_y = y;
-    if (SDL_ProcessEvents[type] == SDL_ENABLE) {
+    if (SDL_GetEventState(type) == SDL_ENABLE) {
         SDL_Event event;
         event.proximity.which = (Uint8) index;
         event.proximity.x = x;
@@ -461,7 +461,7 @@
 
     /* Post the event, if desired */
     posted = 0;
-    if (SDL_ProcessEvents[SDL_MOUSEMOTION] == SDL_ENABLE &&
+    if (SDL_GetEventState(SDL_MOUSEMOTION) == SDL_ENABLE &&
         mouse->proximity == SDL_TRUE) {
         SDL_Event event;
         event.motion.type = SDL_MOUSEMOTION;
@@ -493,7 +493,7 @@
     int index = SDL_GetMouseIndexId(id);
     SDL_Mouse *mouse = SDL_GetMouse(index);
     int posted;
-    Uint8 type;
+    Uint32 type;
 
     if (!mouse) {
         return 0;
@@ -524,7 +524,7 @@
 
     /* Post the event, if desired */
     posted = 0;
-    if (SDL_ProcessEvents[type] == SDL_ENABLE) {
+    if (SDL_GetEventState(type) == SDL_ENABLE) {
         SDL_Event event;
         event.type = type;
         event.button.which = (Uint8) index;
@@ -550,7 +550,7 @@
 
     /* Post the event, if desired */
     posted = 0;
-    if (SDL_ProcessEvents[SDL_MOUSEWHEEL] == SDL_ENABLE) {
+    if (SDL_GetEventState(SDL_MOUSEWHEEL) == SDL_ENABLE) {
         SDL_Event event;
         event.type = SDL_MOUSEWHEEL;
         event.wheel.which = (Uint8) index;