My Project
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
SDL_events.h
Go to the documentation of this file.
1 /*
2  Simple DirectMedia Layer
3  Copyright (C) 1997-2016 Sam Lantinga <slouken@libsdl.org>
4 
5  This software is provided 'as-is', without any express or implied
6  warranty. In no event will the authors be held liable for any damages
7  arising from the use of this software.
8 
9  Permission is granted to anyone to use this software for any purpose,
10  including commercial applications, and to alter it and redistribute it
11  freely, subject to the following restrictions:
12 
13  1. The origin of this software must not be misrepresented; you must not
14  claim that you wrote the original software. If you use this software
15  in a product, an acknowledgment in the product documentation would be
16  appreciated but is not required.
17  2. Altered source versions must be plainly marked as such, and must not be
18  misrepresented as being the original software.
19  3. This notice may not be removed or altered from any source distribution.
20 */
21 
28 #ifndef _SDL_events_h
29 #define _SDL_events_h
30 
31 #include "SDL_stdinc.h"
32 #include "SDL_error.h"
33 #include "SDL_video.h"
34 #include "SDL_keyboard.h"
35 #include "SDL_mouse.h"
36 #include "SDL_joystick.h"
37 #include "SDL_gamecontroller.h"
38 #include "SDL_quit.h"
39 #include "SDL_gesture.h"
40 #include "SDL_touch.h"
41 
42 #include "begin_code.h"
43 /* Set up for C function definitions, even when using C++ */
44 #ifdef __cplusplus
45 extern "C" {
46 #endif
47 
48 /* General keyboard/mouse state definitions */
49 #define SDL_RELEASED 0
50 #define SDL_PRESSED 1
51 
55 typedef enum
56 {
59  /* Application events */
60  SDL_QUIT = 0x100,
62  /* These application events have special meaning on iOS, see README-ios.md for details */
88  /* Window events */
89  SDL_WINDOWEVENT = 0x200,
92  /* Keyboard events */
93  SDL_KEYDOWN = 0x300,
101  /* Mouse events */
102  SDL_MOUSEMOTION = 0x400,
107  /* Joystick events */
116  /* Game controller events */
124  /* Touch events */
125  SDL_FINGERDOWN = 0x700,
126  SDL_FINGERUP,
127  SDL_FINGERMOTION,
128 
129  /* Gesture events */
130  SDL_DOLLARGESTURE = 0x800,
131  SDL_DOLLARRECORD,
132  SDL_MULTIGESTURE,
133 
134  /* Clipboard events */
137  /* Drag and drop events */
138  SDL_DROPFILE = 0x1000,
140  /* Audio hotplug events */
144  /* Render events */
151  SDL_USEREVENT = 0x8000,
152 
156  SDL_LASTEVENT = 0xFFFF
157 } SDL_EventType;
158 
162 typedef struct SDL_CommonEvent
163 {
164  Uint32 type;
165  Uint32 timestamp;
167 
171 typedef struct SDL_WindowEvent
172 {
174  Uint32 timestamp;
177  Uint8 padding1;
178  Uint8 padding2;
179  Uint8 padding3;
183 
187 typedef struct SDL_KeyboardEvent
188 {
190  Uint32 timestamp;
194  Uint8 padding2;
195  Uint8 padding3;
198 
199 #define SDL_TEXTEDITINGEVENT_TEXT_SIZE (32)
200 
203 typedef struct SDL_TextEditingEvent
204 {
206  Uint32 timestamp;
208  char text[SDL_TEXTEDITINGEVENT_TEXT_SIZE];
212 
213 
214 #define SDL_TEXTINPUTEVENT_TEXT_SIZE (32)
215 
218 typedef struct SDL_TextInputEvent
219 {
221  Uint32 timestamp;
223  char text[SDL_TEXTINPUTEVENT_TEXT_SIZE];
225 
229 typedef struct SDL_MouseMotionEvent
230 {
232  Uint32 timestamp;
241 
245 typedef struct SDL_MouseButtonEvent
246 {
248  Uint32 timestamp;
254  Uint8 padding1;
258 
262 typedef struct SDL_MouseWheelEvent
263 {
265  Uint32 timestamp;
272 
276 typedef struct SDL_JoyAxisEvent
277 {
279  Uint32 timestamp;
280  SDL_JoystickID which;
282  Uint8 padding1;
283  Uint8 padding2;
284  Uint8 padding3;
286  Uint16 padding4;
288 
292 typedef struct SDL_JoyBallEvent
293 {
295  Uint32 timestamp;
296  SDL_JoystickID which;
298  Uint8 padding1;
299  Uint8 padding2;
300  Uint8 padding3;
304 
308 typedef struct SDL_JoyHatEvent
309 {
311  Uint32 timestamp;
312  SDL_JoystickID which;
321  Uint8 padding1;
322  Uint8 padding2;
324 
328 typedef struct SDL_JoyButtonEvent
329 {
331  Uint32 timestamp;
332  SDL_JoystickID which;
335  Uint8 padding1;
336  Uint8 padding2;
338 
342 typedef struct SDL_JoyDeviceEvent
343 {
345  Uint32 timestamp;
348 
349 
354 {
356  Uint32 timestamp;
357  SDL_JoystickID which;
359  Uint8 padding1;
360  Uint8 padding2;
361  Uint8 padding3;
363  Uint16 padding4;
365 
366 
371 {
373  Uint32 timestamp;
374  SDL_JoystickID which;
377  Uint8 padding1;
378  Uint8 padding2;
380 
381 
386 {
388  Uint32 timestamp;
391 
395 typedef struct SDL_AudioDeviceEvent
396 {
398  Uint32 timestamp;
401  Uint8 padding1;
402  Uint8 padding2;
403  Uint8 padding3;
405 
406 
410 typedef struct SDL_TouchFingerEvent
411 {
413  Uint32 timestamp;
414  SDL_TouchID touchId;
415  SDL_FingerID fingerId;
416  float x;
417  float y;
418  float dx;
419  float dy;
420  float pressure;
422 
423 
427 typedef struct SDL_MultiGestureEvent
428 {
430  Uint32 timestamp;
431  SDL_TouchID touchId;
432  float dTheta;
433  float dDist;
434  float x;
435  float y;
436  Uint16 numFingers;
437  Uint16 padding;
439 
440 
445 {
447  Uint32 timestamp;
448  SDL_TouchID touchId;
449  SDL_GestureID gestureId;
450  Uint32 numFingers;
451  float error;
452  float x;
453  float y;
455 
456 
462 typedef struct SDL_DropEvent
463 {
465  Uint32 timestamp;
466  char *file;
467 } SDL_DropEvent;
468 
469 
473 typedef struct SDL_QuitEvent
474 {
476  Uint32 timestamp;
477 } SDL_QuitEvent;
478 
482 typedef struct SDL_OSEvent
483 {
485  Uint32 timestamp;
486 } SDL_OSEvent;
487 
491 typedef struct SDL_UserEvent
492 {
494  Uint32 timestamp;
497  void *data1;
498  void *data2;
499 } SDL_UserEvent;
500 
501 
502 struct SDL_SysWMmsg;
503 typedef struct SDL_SysWMmsg SDL_SysWMmsg;
504 
511 typedef struct SDL_SysWMEvent
512 {
514  Uint32 timestamp;
517 
521 typedef union SDL_Event
522 {
549  /* This is necessary for ABI compatibility between Visual C++ and GCC
550  Visual C++ will respect the push pack pragma and use 52 bytes for
551  this structure, and GCC will use the alignment of the largest datatype
552  within the union, which is 8 bytes.
553 
554  So... we'll add padding to force the size to be 56 bytes for both.
555  */
556  Uint8 padding[56];
557 } SDL_Event;
558 
559 
560 /* Function prototypes */
561 
569 extern DECLSPEC void SDLCALL SDL_PumpEvents(void);
570 
571 /* @{ */
572 typedef enum
573 {
574  SDL_ADDEVENT,
575  SDL_PEEKEVENT,
576  SDL_GETEVENT
577 } SDL_eventaction;
578 
597 extern DECLSPEC int SDLCALL SDL_PeepEvents(SDL_Event * events, int numevents,
598  SDL_eventaction action,
599  Uint32 minType, Uint32 maxType);
600 /* @} */
601 
605 extern DECLSPEC SDL_bool SDLCALL SDL_HasEvent(Uint32 type);
606 extern DECLSPEC SDL_bool SDLCALL SDL_HasEvents(Uint32 minType, Uint32 maxType);
607 
614 extern DECLSPEC void SDLCALL SDL_FlushEvent(Uint32 type);
615 extern DECLSPEC void SDLCALL SDL_FlushEvents(Uint32 minType, Uint32 maxType);
616 
625 extern DECLSPEC int SDLCALL SDL_PollEvent(SDL_Event * event);
626 
635 extern DECLSPEC int SDLCALL SDL_WaitEvent(SDL_Event * event);
636 
647 extern DECLSPEC int SDLCALL SDL_WaitEventTimeout(SDL_Event * event,
648  int timeout);
649 
656 extern DECLSPEC int SDLCALL SDL_PushEvent(SDL_Event * event);
657 
658 typedef int (SDLCALL * SDL_EventFilter) (void *userdata, SDL_Event * event);
659 
685 extern DECLSPEC void SDLCALL SDL_SetEventFilter(SDL_EventFilter filter,
686  void *userdata);
687 
692 extern DECLSPEC SDL_bool SDLCALL SDL_GetEventFilter(SDL_EventFilter * filter,
693  void **userdata);
694 
698 extern DECLSPEC void SDLCALL SDL_AddEventWatch(SDL_EventFilter filter,
699  void *userdata);
700 
704 extern DECLSPEC void SDLCALL SDL_DelEventWatch(SDL_EventFilter filter,
705  void *userdata);
706 
711 extern DECLSPEC void SDLCALL SDL_FilterEvents(SDL_EventFilter filter,
712  void *userdata);
713 
714 /* @{ */
715 #define SDL_QUERY -1
716 #define SDL_IGNORE 0
717 #define SDL_DISABLE 0
718 #define SDL_ENABLE 1
719 
729 extern DECLSPEC Uint8 SDLCALL SDL_EventState(Uint32 type, int state);
730 /* @} */
731 #define SDL_GetEventState(type) SDL_EventState(type, SDL_QUERY)
732 
740 extern DECLSPEC Uint32 SDLCALL SDL_RegisterEvents(int numevents);
741 
742 /* Ends C function definitions when using C++ */
743 #ifdef __cplusplus
744 }
745 #endif
746 #include "close_code.h"
747 
748 #endif /* _SDL_events_h */
749 
750 /* vi: set ts=4 sw=4 expandtab: */
struct SDL_JoyButtonEvent SDL_JoyButtonEvent
Joystick button event structure (event.jbutton.*)
DECLSPEC void SDLCALL SDL_DelEventWatch(SDL_EventFilter filter, void *userdata)
typedef int(SDLCALL *SDL_EventFilter)(void *userdata
uint8_t Uint8
An unsigned 8-bit integer type.
Definition: SDL_stdinc.h:139
Uint8 state
Definition: SDL_events.h:252
SDL_AudioDeviceEvent adevice
Definition: SDL_events.h:540
Uint32 type
Definition: SDL_events.h:475
Definition: SDL_events.h:146
DECLSPEC int SDLCALL SDL_WaitEvent(SDL_Event *event)
Waits indefinitely for the next available event.
Definition: SDL_events.h:79
struct SDL_ControllerAxisEvent SDL_ControllerAxisEvent
Game controller axis motion event structure (event.caxis.*)
Uint8 ball
Definition: SDL_events.h:297
Uint8 axis
Definition: SDL_events.h:281
SDL_WindowEvent window
Definition: SDL_events.h:525
Game controller button event structure (event.cbutton.*)
Definition: SDL_events.h:370
struct SDL_KeyboardEvent SDL_KeyboardEvent
Keyboard button event structure (event.key.*)
struct SDL_OSEvent SDL_OSEvent
OS Specific event.
Joystick trackball motion event structure (event.jball.*)
Definition: SDL_events.h:292
SDL_KeyboardEvent key
Definition: SDL_events.h:526
Definition: SDL_events.h:141
Mouse motion event structure (event.motion.*)
Definition: SDL_events.h:229
Uint32 state
Definition: SDL_events.h:235
SDL_JoyAxisEvent jaxis
Definition: SDL_events.h:532
uint32_t Uint32
An unsigned 32-bit integer type.
Definition: SDL_stdinc.h:155
Joystick button event structure (event.jbutton.*)
Definition: SDL_events.h:328
struct SDL_JoyBallEvent SDL_JoyBallEvent
Joystick trackball motion event structure (event.jball.*)
Sint32 y
Definition: SDL_events.h:237
Uint32 type
Definition: SDL_events.h:344
Definition: SDL_events.h:102
struct SDL_JoyDeviceEvent SDL_JoyDeviceEvent
Joystick device event structure (event.jdevice.*)
Uint32 type
Definition: SDL_events.h:310
Uint32 windowID
Definition: SDL_events.h:191
Sint16 xrel
Definition: SDL_events.h:301
Definition: SDL_events.h:108
uint16_t Uint16
An unsigned 16-bit integer type.
Definition: SDL_stdinc.h:147
Uint32 direction
Definition: SDL_events.h:270
struct SDL_TextEditingEvent SDL_TextEditingEvent
Keyboard text editing event structure (event.edit.*)
Definition: SDL_events.h:97
SDL_CommonEvent common
Definition: SDL_events.h:524
Sint32 x
Definition: SDL_events.h:236
Sint32 y
Definition: SDL_events.h:256
Sint32 length
Definition: SDL_events.h:210
Definition: SDL_events.h:63
Uint32 type
Definition: SDL_events.h:205
Joystick hat position change event structure (event.jhat.*)
Definition: SDL_events.h:308
Definition: SDL_events.h:142
struct SDL_MultiGestureEvent SDL_MultiGestureEvent
Multiple Finger Gesture Event (event.mgesture.*)
union SDL_Event SDL_Event
General event structure.
SDL_EventType
The types of events that can be delivered.
Definition: SDL_events.h:55
Definition: SDL_events.h:145
Uint32 type
Definition: SDL_events.h:484
Uint8 value
Definition: SDL_events.h:314
struct SDL_JoyAxisEvent SDL_JoyAxisEvent
Joystick axis motion event structure (event.jaxis.*)
Audio device event structure (event.adevice.*)
Definition: SDL_events.h:395
The SDL keysym structure, used in key events.
Definition: SDL_keyboard.h:47
DECLSPEC Uint8 SDLCALL SDL_EventState(Uint32 type, int state)
char text[SDL_TEXTEDITINGEVENT_TEXT_SIZE]
Definition: SDL_events.h:208
struct SDL_SysWMEvent SDL_SysWMEvent
A video driver dependent system event (event.syswm.*) This event is disabled by default, you can enable it with SDL_EventState()
Uint32 type
Definition: SDL_events.h:493
Definition: SDL_events.h:117
Uint32 type
Definition: SDL_events.h:173
Dollar Gesture Event (event.dgesture.*)
Definition: SDL_events.h:444
DECLSPEC SDL_bool SDLCALL SDL_GetEventFilter(SDL_EventFilter *filter, void **userdata)
Definition: SDL_events.h:103
SDL_Keysym keysym
Definition: SDL_events.h:196
Sint16 yrel
Definition: SDL_events.h:302
Definition: SDL_events.h:120
void * data2
Definition: SDL_events.h:498
Definition: SDL_events.h:71
Uint8 clicks
Definition: SDL_events.h:253
Uint8 button
Definition: SDL_events.h:333
Uint32 type
Definition: SDL_events.h:189
DECLSPEC void SDLCALL SDL_FlushEvent(Uint32 type)
Touch finger event structure (event.tfinger.*)
Definition: SDL_events.h:410
Definition: SDL_events.h:94
Definition: SDL_events.h:112
Definition: SDL_events.h:110
Definition: SDL_events.h:119
SDL_MouseMotionEvent motion
Definition: SDL_events.h:529
SDL_QuitEvent quit
Definition: SDL_events.h:541
Uint8 state
Definition: SDL_events.h:376
Definition: SDL_events.h:105
Definition: SDL_events.h:89
SDL_TouchID touchId
Definition: SDL_events.h:431
Uint32 type
Definition: SDL_events.h:464
Definition: SDL_events.h:156
float x
Definition: SDL_events.h:452
Sint32 yrel
Definition: SDL_events.h:239
General event structure.
Definition: SDL_events.h:521
SDL_TouchID touchId
Definition: SDL_events.h:448
The "quit requested" event.
Definition: SDL_events.h:473
Definition: SDL_events.h:57
Uint8 button
Definition: SDL_events.h:375
Definition: SDL_events.h:111
Definition: SDL_events.h:60
Joystick device event structure (event.jdevice.*)
Definition: SDL_events.h:342
Definition: SDL_events.h:151
Uint32 windowID
Definition: SDL_events.h:266
struct SDL_ControllerDeviceEvent SDL_ControllerDeviceEvent
Controller device event structure (event.cdevice.*)
Uint8 hat
Definition: SDL_events.h:313
float x
Definition: SDL_events.h:416
struct SDL_MouseButtonEvent SDL_MouseButtonEvent
Mouse button event structure (event.button.*)
Joystick axis motion event structure (event.jaxis.*)
Definition: SDL_events.h:276
SDL_MouseWheelEvent wheel
Definition: SDL_events.h:531
Uint32 type
Definition: SDL_events.h:264
SDL_MouseButtonEvent button
Definition: SDL_events.h:530
SDL_TouchFingerEvent tfinger
Definition: SDL_events.h:544
Uint32 type
Definition: SDL_events.h:220
struct SDL_ControllerButtonEvent SDL_ControllerButtonEvent
Game controller button event structure (event.cbutton.*)
DECLSPEC void SDLCALL SDL_PumpEvents(void)
Uint8 event
Definition: SDL_events.h:176
Sint32 data2
Definition: SDL_events.h:181
float dx
Definition: SDL_events.h:418
struct SDL_AudioDeviceEvent SDL_AudioDeviceEvent
Audio device event structure (event.adevice.*)
Definition: SDL_events.h:67
SDL_JoystickID which
Definition: SDL_events.h:280
Uint32 type
Definition: SDL_events.h:278
float pressure
Definition: SDL_events.h:420
Sint32 start
Definition: SDL_events.h:209
Uint32 type
Definition: SDL_events.h:355
Uint32 windowID
Definition: SDL_events.h:222
DECLSPEC Uint32 SDLCALL SDL_RegisterEvents(int numevents)
Definition: SDL_events.h:83
A user-defined event type (event.user.*)
Definition: SDL_events.h:491
Uint32 windowID
Definition: SDL_events.h:207
DECLSPEC int SDLCALL SDL_PollEvent(SDL_Event *event)
Polls for currently pending events.
Multiple Finger Gesture Event (event.mgesture.*)
Definition: SDL_events.h:427
struct SDL_UserEvent SDL_UserEvent
A user-defined event type (event.user.*)
SDL_JoystickID which
Definition: SDL_events.h:374
SDL_DollarGestureEvent dgesture
Definition: SDL_events.h:546
DECLSPEC SDL_bool SDLCALL SDL_HasEvent(Uint32 type)
Uint32 type
Definition: SDL_events.h:372
SDL_TextInputEvent text
Definition: SDL_events.h:528
Uint32 type
Definition: SDL_events.h:523
SDL_JoystickID which
Definition: SDL_events.h:312
DECLSPEC void SDLCALL SDL_FilterEvents(SDL_EventFilter filter, void *userdata)
Definition: SDL_events.h:122
SDL_ControllerButtonEvent cbutton
Definition: SDL_events.h:538
char * file
Definition: SDL_events.h:466
Uint32 type
Definition: SDL_events.h:387
int32_t Sint32
A signed 32-bit integer type.
Definition: SDL_stdinc.h:151
SDL_JoystickID which
Definition: SDL_events.h:332
Uint32 type
Definition: SDL_events.h:397
struct SDL_TouchFingerEvent SDL_TouchFingerEvent
Touch finger event structure (event.tfinger.*)
Fields shared by every event.
Definition: SDL_events.h:162
struct SDL_QuitEvent SDL_QuitEvent
The "quit requested" event.
Uint32 type
Definition: SDL_events.h:247
char text[SDL_TEXTINPUTEVENT_TEXT_SIZE]
Definition: SDL_events.h:223
Keyboard button event structure (event.key.*)
Definition: SDL_events.h:187
Game controller axis motion event structure (event.caxis.*)
Definition: SDL_events.h:353
Uint32 which
Definition: SDL_events.h:399
struct SDL_WindowEvent SDL_WindowEvent
Window state change event data (event.window.*)
SDL_ControllerDeviceEvent cdevice
Definition: SDL_events.h:539
Uint8 iscapture
Definition: SDL_events.h:400
Sint32 x
Definition: SDL_events.h:268
struct SDL_MouseWheelEvent SDL_MouseWheelEvent
Mouse wheel event structure (event.wheel.*)
Definition: SDL_events.h:114
Uint8 axis
Definition: SDL_events.h:358
float y
Definition: SDL_events.h:453
Keyboard text input event structure (event.text.*)
Definition: SDL_events.h:218
SDL_TextEditingEvent edit
Definition: SDL_events.h:527
SDL_JoyButtonEvent jbutton
Definition: SDL_events.h:535
DECLSPEC void SDLCALL SDL_AddEventWatch(SDL_EventFilter filter, void *userdata)
Uint32 which
Definition: SDL_events.h:250
Uint8 repeat
Definition: SDL_events.h:193
float dy
Definition: SDL_events.h:419
Sint32 x
Definition: SDL_events.h:255
struct SDL_TextInputEvent SDL_TextInputEvent
Keyboard text input event structure (event.text.*)
struct SDL_CommonEvent SDL_CommonEvent
Fields shared by every event.
Definition: SDL_events.h:93
struct SDL_DollarGestureEvent SDL_DollarGestureEvent
Dollar Gesture Event (event.dgesture.*)
struct SDL_JoyHatEvent SDL_JoyHatEvent
Joystick hat position change event structure (event.jhat.*)
Definition: SDL_events.h:96
SDL_ControllerAxisEvent caxis
Definition: SDL_events.h:537
An event used to request a file open by the system (event.drop.*) This event is enabled by default...
Definition: SDL_events.h:462
Sint32 y
Definition: SDL_events.h:269
struct SDL_MouseMotionEvent SDL_MouseMotionEvent
Mouse motion event structure (event.motion.*)
DECLSPEC int SDLCALL SDL_WaitEventTimeout(SDL_Event *event, int timeout)
Waits until the specified timeout (in milliseconds) for the next available event. ...
Mouse wheel event structure (event.wheel.*)
Definition: SDL_events.h:262
Uint32 which
Definition: SDL_events.h:267
Uint32 windowID
Definition: SDL_events.h:175
Controller device event structure (event.cdevice.*)
Definition: SDL_events.h:385
Uint32 type
Definition: SDL_events.h:513
Definition: SDL_syswm.h:129
Uint32 type
Definition: SDL_events.h:446
Definition: SDL_events.h:104
Uint32 type
Definition: SDL_events.h:231
Uint32 which
Definition: SDL_events.h:234
OS Specific event.
Definition: SDL_events.h:482
SDL_JoystickID which
Definition: SDL_events.h:296
Definition: SDL_events.h:95
SDL_JoyHatEvent jhat
Definition: SDL_events.h:534
Keyboard text editing event structure (event.edit.*)
Definition: SDL_events.h:203
SDL_SysWMmsg * msg
Definition: SDL_events.h:515
SDL_UserEvent user
Definition: SDL_events.h:542
Definition: SDL_events.h:113
SDL_SysWMEvent syswm
Definition: SDL_events.h:543
Uint8 state
Definition: SDL_events.h:334
Sint32 which
Definition: SDL_events.h:389
Uint32 type
Definition: SDL_events.h:412
SDL_TouchID touchId
Definition: SDL_events.h:414
Uint32 windowID
Definition: SDL_events.h:249
SDL_JoyDeviceEvent jdevice
Definition: SDL_events.h:536
Sint16 value
Definition: SDL_events.h:362
Uint32 type
Definition: SDL_events.h:429
Mouse button event structure (event.button.*)
Definition: SDL_events.h:245
SDL_JoyBallEvent jball
Definition: SDL_events.h:533
Definition: SDL_events.h:75
Definition: SDL_events.h:135
Definition: SDL_events.h:138
Uint8 state
Definition: SDL_events.h:192
int16_t Sint16
A signed 16-bit integer type.
Definition: SDL_stdinc.h:143
SDL_DropEvent drop
Definition: SDL_events.h:547
Sint32 which
Definition: SDL_events.h:346
Window state change event data (event.window.*)
Definition: SDL_events.h:171
Uint32 windowID
Definition: SDL_events.h:233
float y
Definition: SDL_events.h:417
Definition: SDL_events.h:90
Sint32 xrel
Definition: SDL_events.h:238
DECLSPEC int SDLCALL SDL_PushEvent(SDL_Event *event)
Add an event to the event queue.
SDL_JoystickID which
Definition: SDL_events.h:357
Uint8 button
Definition: SDL_events.h:251
Sint32 data1
Definition: SDL_events.h:180
struct SDL_DropEvent SDL_DropEvent
An event used to request a file open by the system (event.drop.*) This event is enabled by default...
Uint32 type
Definition: SDL_events.h:330
SDL_MultiGestureEvent mgesture
Definition: SDL_events.h:545
A video driver dependent system event (event.syswm.*) This event is disabled by default, you can enable it with SDL_EventState()
Definition: SDL_events.h:511
Definition: SDL_events.h:118
Uint32 type
Definition: SDL_events.h:294
void * data1
Definition: SDL_events.h:497
Sint16 value
Definition: SDL_events.h:285
DECLSPEC int SDLCALL SDL_PeepEvents(SDL_Event *events, int numevents, SDL_eventaction action, Uint32 minType, Uint32 maxType)
Definition: SDL_events.h:109
Sint32 code
Definition: SDL_events.h:496
DECLSPEC void SDLCALL SDL_SetEventFilter(SDL_EventFilter filter, void *userdata)
Definition: SDL_events.h:121
Uint32 windowID
Definition: SDL_events.h:495