My Project
SDL_events.h
Go to the documentation of this file.
1 /*
2  Simple DirectMedia Layer
3  Copyright (C) 1997-2018 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,
143  /* Audio hotplug events */
147  /* Render events */
154  SDL_USEREVENT = 0x8000,
155 
159  SDL_LASTEVENT = 0xFFFF
160 } SDL_EventType;
161 
165 typedef struct SDL_CommonEvent
166 {
167  Uint32 type;
168  Uint32 timestamp;
170 
174 typedef struct SDL_WindowEvent
175 {
176  Uint32 type;
177  Uint32 timestamp;
178  Uint32 windowID;
179  Uint8 event;
180  Uint8 padding1;
181  Uint8 padding2;
182  Uint8 padding3;
183  Sint32 data1;
184  Sint32 data2;
186 
190 typedef struct SDL_KeyboardEvent
191 {
192  Uint32 type;
193  Uint32 timestamp;
194  Uint32 windowID;
195  Uint8 state;
196  Uint8 repeat;
197  Uint8 padding2;
198  Uint8 padding3;
201 
202 #define SDL_TEXTEDITINGEVENT_TEXT_SIZE (32)
203 
206 typedef struct SDL_TextEditingEvent
207 {
208  Uint32 type;
209  Uint32 timestamp;
210  Uint32 windowID;
211  char text[SDL_TEXTEDITINGEVENT_TEXT_SIZE];
212  Sint32 start;
213  Sint32 length;
215 
216 
217 #define SDL_TEXTINPUTEVENT_TEXT_SIZE (32)
218 
221 typedef struct SDL_TextInputEvent
222 {
223  Uint32 type;
224  Uint32 timestamp;
225  Uint32 windowID;
226  char text[SDL_TEXTINPUTEVENT_TEXT_SIZE];
228 
232 typedef struct SDL_MouseMotionEvent
233 {
234  Uint32 type;
235  Uint32 timestamp;
236  Uint32 windowID;
237  Uint32 which;
238  Uint32 state;
239  Sint32 x;
240  Sint32 y;
241  Sint32 xrel;
242  Sint32 yrel;
244 
248 typedef struct SDL_MouseButtonEvent
249 {
250  Uint32 type;
251  Uint32 timestamp;
252  Uint32 windowID;
253  Uint32 which;
254  Uint8 button;
255  Uint8 state;
256  Uint8 clicks;
257  Uint8 padding1;
258  Sint32 x;
259  Sint32 y;
261 
265 typedef struct SDL_MouseWheelEvent
266 {
267  Uint32 type;
268  Uint32 timestamp;
269  Uint32 windowID;
270  Uint32 which;
271  Sint32 x;
272  Sint32 y;
273  Uint32 direction;
275 
279 typedef struct SDL_JoyAxisEvent
280 {
281  Uint32 type;
282  Uint32 timestamp;
284  Uint8 axis;
285  Uint8 padding1;
286  Uint8 padding2;
287  Uint8 padding3;
288  Sint16 value;
289  Uint16 padding4;
291 
295 typedef struct SDL_JoyBallEvent
296 {
297  Uint32 type;
298  Uint32 timestamp;
300  Uint8 ball;
301  Uint8 padding1;
302  Uint8 padding2;
303  Uint8 padding3;
304  Sint16 xrel;
305  Sint16 yrel;
307 
311 typedef struct SDL_JoyHatEvent
312 {
313  Uint32 type;
314  Uint32 timestamp;
316  Uint8 hat;
317  Uint8 value;
324  Uint8 padding1;
325  Uint8 padding2;
327 
331 typedef struct SDL_JoyButtonEvent
332 {
333  Uint32 type;
334  Uint32 timestamp;
336  Uint8 button;
337  Uint8 state;
338  Uint8 padding1;
339  Uint8 padding2;
341 
345 typedef struct SDL_JoyDeviceEvent
346 {
347  Uint32 type;
348  Uint32 timestamp;
349  Sint32 which;
351 
352 
357 {
358  Uint32 type;
359  Uint32 timestamp;
361  Uint8 axis;
362  Uint8 padding1;
363  Uint8 padding2;
364  Uint8 padding3;
365  Sint16 value;
366  Uint16 padding4;
368 
369 
374 {
375  Uint32 type;
376  Uint32 timestamp;
378  Uint8 button;
379  Uint8 state;
380  Uint8 padding1;
381  Uint8 padding2;
383 
384 
389 {
390  Uint32 type;
391  Uint32 timestamp;
392  Sint32 which;
394 
398 typedef struct SDL_AudioDeviceEvent
399 {
400  Uint32 type;
401  Uint32 timestamp;
402  Uint32 which;
403  Uint8 iscapture;
404  Uint8 padding1;
405  Uint8 padding2;
406  Uint8 padding3;
408 
409 
413 typedef struct SDL_TouchFingerEvent
414 {
415  Uint32 type;
416  Uint32 timestamp;
417  SDL_TouchID touchId;
418  SDL_FingerID fingerId;
419  float x;
420  float y;
421  float dx;
422  float dy;
423  float pressure;
425 
426 
430 typedef struct SDL_MultiGestureEvent
431 {
432  Uint32 type;
433  Uint32 timestamp;
434  SDL_TouchID touchId;
435  float dTheta;
436  float dDist;
437  float x;
438  float y;
439  Uint16 numFingers;
440  Uint16 padding;
442 
443 
448 {
449  Uint32 type;
450  Uint32 timestamp;
451  SDL_TouchID touchId;
452  SDL_GestureID gestureId;
453  Uint32 numFingers;
454  float error;
455  float x;
456  float y;
458 
459 
465 typedef struct SDL_DropEvent
466 {
467  Uint32 type;
468  Uint32 timestamp;
469  char *file;
470  Uint32 windowID;
471 } SDL_DropEvent;
472 
473 
477 typedef struct SDL_QuitEvent
478 {
479  Uint32 type;
480  Uint32 timestamp;
481 } SDL_QuitEvent;
482 
486 typedef struct SDL_OSEvent
487 {
488  Uint32 type;
489  Uint32 timestamp;
490 } SDL_OSEvent;
491 
495 typedef struct SDL_UserEvent
496 {
497  Uint32 type;
498  Uint32 timestamp;
499  Uint32 windowID;
500  Sint32 code;
501  void *data1;
502  void *data2;
503 } SDL_UserEvent;
504 
505 
506 struct SDL_SysWMmsg;
507 typedef struct SDL_SysWMmsg SDL_SysWMmsg;
508 
515 typedef struct SDL_SysWMEvent
516 {
517  Uint32 type;
518  Uint32 timestamp;
521 
525 typedef union SDL_Event
526 {
527  Uint32 type;
553  /* This is necessary for ABI compatibility between Visual C++ and GCC
554  Visual C++ will respect the push pack pragma and use 52 bytes for
555  this structure, and GCC will use the alignment of the largest datatype
556  within the union, which is 8 bytes.
557 
558  So... we'll add padding to force the size to be 56 bytes for both.
559  */
560  Uint8 padding[56];
561 } SDL_Event;
562 
563 
564 /* Function prototypes */
565 
573 extern DECLSPEC void SDLCALL SDL_PumpEvents(void);
574 
575 /* @{ */
576 typedef enum
577 {
578  SDL_ADDEVENT,
579  SDL_PEEKEVENT,
580  SDL_GETEVENT
581 } SDL_eventaction;
582 
601 extern DECLSPEC int SDLCALL SDL_PeepEvents(SDL_Event * events, int numevents,
602  SDL_eventaction action,
603  Uint32 minType, Uint32 maxType);
604 /* @} */
605 
609 extern DECLSPEC SDL_bool SDLCALL SDL_HasEvent(Uint32 type);
610 extern DECLSPEC SDL_bool SDLCALL SDL_HasEvents(Uint32 minType, Uint32 maxType);
611 
618 extern DECLSPEC void SDLCALL SDL_FlushEvent(Uint32 type);
619 extern DECLSPEC void SDLCALL SDL_FlushEvents(Uint32 minType, Uint32 maxType);
620 
629 extern DECLSPEC int SDLCALL SDL_PollEvent(SDL_Event * event);
630 
639 extern DECLSPEC int SDLCALL SDL_WaitEvent(SDL_Event * event);
640 
651 extern DECLSPEC int SDLCALL SDL_WaitEventTimeout(SDL_Event * event,
652  int timeout);
653 
660 extern DECLSPEC int SDLCALL SDL_PushEvent(SDL_Event * event);
661 
662 typedef int (SDLCALL * SDL_EventFilter) (void *userdata, SDL_Event * event);
663 
689 extern DECLSPEC void SDLCALL SDL_SetEventFilter(SDL_EventFilter filter,
690  void *userdata);
691 
696 extern DECLSPEC SDL_bool SDLCALL SDL_GetEventFilter(SDL_EventFilter * filter,
697  void **userdata);
698 
702 extern DECLSPEC void SDLCALL SDL_AddEventWatch(SDL_EventFilter filter,
703  void *userdata);
704 
708 extern DECLSPEC void SDLCALL SDL_DelEventWatch(SDL_EventFilter filter,
709  void *userdata);
710 
715 extern DECLSPEC void SDLCALL SDL_FilterEvents(SDL_EventFilter filter,
716  void *userdata);
717 
718 /* @{ */
719 #define SDL_QUERY -1
720 #define SDL_IGNORE 0
721 #define SDL_DISABLE 0
722 #define SDL_ENABLE 1
723 
733 extern DECLSPEC Uint8 SDLCALL SDL_EventState(Uint32 type, int state);
734 /* @} */
735 #define SDL_GetEventState(type) SDL_EventState(type, SDL_QUERY)
736 
744 extern DECLSPEC Uint32 SDLCALL SDL_RegisterEvents(int numevents);
745 
746 /* Ends C function definitions when using C++ */
747 #ifdef __cplusplus
748 }
749 #endif
750 #include "close_code.h"
751 
752 #endif /* SDL_events_h_ */
753 
754 /* 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)
Uint8 state
Definition: SDL_events.h:255
SDL_AudioDeviceEvent adevice
Definition: SDL_events.h:544
Uint32 type
Definition: SDL_events.h:479
Definition: SDL_events.h:149
DECLSPEC int SDLCALL SDL_WaitEvent(SDL_Event *event)
Waits indefinitely for the next available event.
Uint32 timestamp
Definition: SDL_events.h:489
Definition: SDL_events.h:79
struct SDL_ControllerAxisEvent SDL_ControllerAxisEvent
Game controller axis motion event structure (event.caxis.*)
Definition: SDL_events.h:140
Uint8 ball
Definition: SDL_events.h:300
Uint8 axis
Definition: SDL_events.h:284
SDL_WindowEvent window
Definition: SDL_events.h:529
Game controller button event structure (event.cbutton.*)
Definition: SDL_events.h:373
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:295
SDL_KeyboardEvent key
Definition: SDL_events.h:530
Definition: SDL_events.h:144
Mouse motion event structure (event.motion.*)
Definition: SDL_events.h:232
Uint32 state
Definition: SDL_events.h:238
SDL_JoyAxisEvent jaxis
Definition: SDL_events.h:536
Joystick button event structure (event.jbutton.*)
Definition: SDL_events.h:331
struct SDL_JoyBallEvent SDL_JoyBallEvent
Joystick trackball motion event structure (event.jball.*)
Sint32 y
Definition: SDL_events.h:240
Uint32 type
Definition: SDL_events.h:347
Definition: SDL_events.h:102
struct SDL_JoyDeviceEvent SDL_JoyDeviceEvent
Joystick device event structure (event.jdevice.*)
Uint32 timestamp
Definition: SDL_events.h:433
Uint32 type
Definition: SDL_events.h:313
Uint32 windowID
Definition: SDL_events.h:194
Sint16 xrel
Definition: SDL_events.h:304
Definition: SDL_events.h:108
Uint32 direction
Definition: SDL_events.h:273
struct SDL_TextEditingEvent SDL_TextEditingEvent
Keyboard text editing event structure (event.edit.*)
Uint32 timestamp
Definition: SDL_events.h:450
Definition: SDL_events.h:97
SDL_CommonEvent common
Definition: SDL_events.h:528
Sint32 x
Definition: SDL_events.h:239
Sint32 y
Definition: SDL_events.h:259
Sint32 length
Definition: SDL_events.h:213
Definition: SDL_events.h:63
Uint32 type
Definition: SDL_events.h:208
Joystick hat position change event structure (event.jhat.*)
Definition: SDL_events.h:311
Definition: SDL_events.h:145
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
Uint32 timestamp
Definition: SDL_events.h:359
Definition: SDL_events.h:148
Uint32 type
Definition: SDL_events.h:488
Uint8 value
Definition: SDL_events.h:317
struct SDL_JoyAxisEvent SDL_JoyAxisEvent
Joystick axis motion event structure (event.jaxis.*)
Audio device event structure (event.adevice.*)
Definition: SDL_events.h:398
The SDL keysym structure, used in key events.
Definition: SDL_keyboard.h:47
DECLSPEC Uint8 SDLCALL SDL_EventState(Uint32 type, int state)
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:497
Uint32 timestamp
Definition: SDL_events.h:209
Definition: SDL_events.h:117
Uint32 type
Definition: SDL_events.h:176
Dollar Gesture Event (event.dgesture.*)
Definition: SDL_events.h:447
DECLSPEC SDL_bool SDLCALL SDL_GetEventFilter(SDL_EventFilter *filter, void **userdata)
Definition: SDL_events.h:103
SDL_Keysym keysym
Definition: SDL_events.h:199
Sint16 yrel
Definition: SDL_events.h:305
Definition: SDL_events.h:120
void * data2
Definition: SDL_events.h:502
Uint32 timestamp
Definition: SDL_events.h:251
Definition: SDL_events.h:71
Uint32 timestamp
Definition: SDL_events.h:168
Uint8 clicks
Definition: SDL_events.h:256
Uint8 button
Definition: SDL_events.h:336
Uint32 type
Definition: SDL_events.h:192
DECLSPEC void SDLCALL SDL_FlushEvent(Uint32 type)
Touch finger event structure (event.tfinger.*)
Definition: SDL_events.h:413
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:533
SDL_QuitEvent quit
Definition: SDL_events.h:545
Uint8 state
Definition: SDL_events.h:379
Definition: SDL_events.h:105
Definition: SDL_events.h:89
SDL_TouchID touchId
Definition: SDL_events.h:434
Uint32 type
Definition: SDL_events.h:467
Definition: SDL_events.h:159
float x
Definition: SDL_events.h:455
Sint32 yrel
Definition: SDL_events.h:242
General event structure.
Definition: SDL_events.h:525
Uint32 timestamp
Definition: SDL_events.h:498
SDL_TouchID touchId
Definition: SDL_events.h:451
The "quit requested" event.
Definition: SDL_events.h:477
Uint32 timestamp
Definition: SDL_events.h:401
Definition: SDL_events.h:57
Uint8 button
Definition: SDL_events.h:378
Uint32 timestamp
Definition: SDL_events.h:376
Definition: SDL_events.h:111
Definition: SDL_events.h:60
Joystick device event structure (event.jdevice.*)
Definition: SDL_events.h:345
Definition: SDL_events.h:154
Uint32 windowID
Definition: SDL_events.h:269
struct SDL_ControllerDeviceEvent SDL_ControllerDeviceEvent
Controller device event structure (event.cdevice.*)
Uint8 hat
Definition: SDL_events.h:316
float x
Definition: SDL_events.h:419
struct SDL_MouseButtonEvent SDL_MouseButtonEvent
Mouse button event structure (event.button.*)
Joystick axis motion event structure (event.jaxis.*)
Definition: SDL_events.h:279
SDL_MouseWheelEvent wheel
Definition: SDL_events.h:535
Uint32 type
Definition: SDL_events.h:267
SDL_MouseButtonEvent button
Definition: SDL_events.h:534
SDL_TouchFingerEvent tfinger
Definition: SDL_events.h:548
Uint32 type
Definition: SDL_events.h:223
struct SDL_ControllerButtonEvent SDL_ControllerButtonEvent
Game controller button event structure (event.cbutton.*)
DECLSPEC void SDLCALL SDL_PumpEvents(void)
Uint8 event
Definition: SDL_events.h:179
Uint32 timestamp
Definition: SDL_events.h:224
Sint32 data2
Definition: SDL_events.h:184
Uint32 timestamp
Definition: SDL_events.h:480
float dx
Definition: SDL_events.h:421
struct SDL_AudioDeviceEvent SDL_AudioDeviceEvent
Audio device event structure (event.adevice.*)
Definition: SDL_events.h:67
SDL_JoystickID which
Definition: SDL_events.h:283
Uint32 type
Definition: SDL_events.h:281
float pressure
Definition: SDL_events.h:423
Sint32 start
Definition: SDL_events.h:212
Uint32 type
Definition: SDL_events.h:358
Uint32 windowID
Definition: SDL_events.h:225
DECLSPEC Uint32 SDLCALL SDL_RegisterEvents(int numevents)
Definition: SDL_events.h:83
A user-defined event type (event.user.*)
Definition: SDL_events.h:495
Uint32 windowID
Definition: SDL_events.h:210
DECLSPEC int SDLCALL SDL_PollEvent(SDL_Event *event)
Polls for currently pending events.
Multiple Finger Gesture Event (event.mgesture.*)
Definition: SDL_events.h:430
struct SDL_UserEvent SDL_UserEvent
A user-defined event type (event.user.*)
SDL_JoystickID which
Definition: SDL_events.h:377
SDL_DollarGestureEvent dgesture
Definition: SDL_events.h:550
DECLSPEC SDL_bool SDLCALL SDL_HasEvent(Uint32 type)
Uint32 type
Definition: SDL_events.h:375
SDL_TextInputEvent text
Definition: SDL_events.h:532
Uint32 type
Definition: SDL_events.h:527
SDL_JoystickID which
Definition: SDL_events.h:315
DECLSPEC void SDLCALL SDL_FilterEvents(SDL_EventFilter filter, void *userdata)
Definition: SDL_events.h:122
Uint32 timestamp
Definition: SDL_events.h:193
SDL_ControllerButtonEvent cbutton
Definition: SDL_events.h:542
char * file
Definition: SDL_events.h:469
Uint32 timestamp
Definition: SDL_events.h:298
Uint32 type
Definition: SDL_events.h:390
SDL_JoystickID which
Definition: SDL_events.h:335
Uint32 type
Definition: SDL_events.h:400
struct SDL_TouchFingerEvent SDL_TouchFingerEvent
Touch finger event structure (event.tfinger.*)
Fields shared by every event.
Definition: SDL_events.h:165
struct SDL_QuitEvent SDL_QuitEvent
The "quit requested" event.
Uint32 type
Definition: SDL_events.h:250
Keyboard button event structure (event.key.*)
Definition: SDL_events.h:190
Game controller axis motion event structure (event.caxis.*)
Definition: SDL_events.h:356
Uint32 which
Definition: SDL_events.h:402
struct SDL_WindowEvent SDL_WindowEvent
Window state change event data (event.window.*)
SDL_ControllerDeviceEvent cdevice
Definition: SDL_events.h:543
Uint8 iscapture
Definition: SDL_events.h:403
Sint32 x
Definition: SDL_events.h:271
Uint32 timestamp
Definition: SDL_events.h:416
struct SDL_MouseWheelEvent SDL_MouseWheelEvent
Mouse wheel event structure (event.wheel.*)
Definition: SDL_events.h:114
Uint8 axis
Definition: SDL_events.h:361
float y
Definition: SDL_events.h:456
Keyboard text input event structure (event.text.*)
Definition: SDL_events.h:221
SDL_TextEditingEvent edit
Definition: SDL_events.h:531
SDL_JoyButtonEvent jbutton
Definition: SDL_events.h:539
DECLSPEC void SDLCALL SDL_AddEventWatch(SDL_EventFilter filter, void *userdata)
Uint32 which
Definition: SDL_events.h:253
Uint32 windowID
Definition: SDL_events.h:470
Definition: SDL_events.h:141
Uint8 repeat
Definition: SDL_events.h:196
float dy
Definition: SDL_events.h:422
Sint32 x
Definition: SDL_events.h:258
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.*)
Sint32 SDL_JoystickID
Definition: SDL_joystick.h:81
Definition: SDL_events.h:96
SDL_ControllerAxisEvent caxis
Definition: SDL_events.h:541
Uint32 timestamp
Definition: SDL_events.h:282
An event used to request a file open by the system (event.drop.*) This event is enabled by default...
Definition: SDL_events.h:465
Sint32 y
Definition: SDL_events.h:272
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:265
Uint32 which
Definition: SDL_events.h:270
Uint32 timestamp
Definition: SDL_events.h:391
Uint32 windowID
Definition: SDL_events.h:178
Controller device event structure (event.cdevice.*)
Definition: SDL_events.h:388
Uint32 type
Definition: SDL_events.h:517
Definition: SDL_syswm.h:135
Uint32 type
Definition: SDL_events.h:449
Uint32 timestamp
Definition: SDL_events.h:177
Definition: SDL_events.h:104
Uint32 type
Definition: SDL_events.h:234
Uint32 which
Definition: SDL_events.h:237
OS Specific event.
Definition: SDL_events.h:486
SDL_JoystickID which
Definition: SDL_events.h:299
Definition: SDL_events.h:95
Definition: SDL_events.h:139
SDL_JoyHatEvent jhat
Definition: SDL_events.h:538
Uint32 timestamp
Definition: SDL_events.h:348
Keyboard text editing event structure (event.edit.*)
Definition: SDL_events.h:206
SDL_SysWMmsg * msg
Definition: SDL_events.h:519
SDL_UserEvent user
Definition: SDL_events.h:546
Definition: SDL_events.h:113
SDL_SysWMEvent syswm
Definition: SDL_events.h:547
Uint8 state
Definition: SDL_events.h:337
Uint32 timestamp
Definition: SDL_events.h:468
Sint32 which
Definition: SDL_events.h:392
Uint32 type
Definition: SDL_events.h:415
SDL_TouchID touchId
Definition: SDL_events.h:417
Uint32 windowID
Definition: SDL_events.h:252
Uint32 timestamp
Definition: SDL_events.h:268
SDL_JoyDeviceEvent jdevice
Definition: SDL_events.h:540
Sint16 value
Definition: SDL_events.h:365
Uint32 timestamp
Definition: SDL_events.h:314
Uint32 type
Definition: SDL_events.h:432
Mouse button event structure (event.button.*)
Definition: SDL_events.h:248
SDL_JoyBallEvent jball
Definition: SDL_events.h:537
Definition: SDL_events.h:75
Definition: SDL_events.h:135
Definition: SDL_events.h:138
Uint8 state
Definition: SDL_events.h:195
SDL_DropEvent drop
Definition: SDL_events.h:551
Sint32 which
Definition: SDL_events.h:349
Window state change event data (event.window.*)
Definition: SDL_events.h:174
Uint32 windowID
Definition: SDL_events.h:236
float y
Definition: SDL_events.h:420
Uint32 timestamp
Definition: SDL_events.h:518
Definition: SDL_events.h:90
Sint32 xrel
Definition: SDL_events.h:241
DECLSPEC int SDLCALL SDL_PushEvent(SDL_Event *event)
Add an event to the event queue.
SDL_JoystickID which
Definition: SDL_events.h:360
Uint8 button
Definition: SDL_events.h:254
Sint32 data1
Definition: SDL_events.h:183
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:333
Uint32 timestamp
Definition: SDL_events.h:235
SDL_MultiGestureEvent mgesture
Definition: SDL_events.h:549
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:515
Definition: SDL_events.h:118
Uint32 type
Definition: SDL_events.h:297
void * data1
Definition: SDL_events.h:501
Sint16 value
Definition: SDL_events.h:288
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:500
DECLSPEC void SDLCALL SDL_SetEventFilter(SDL_EventFilter filter, void *userdata)
Uint32 timestamp
Definition: SDL_events.h:334
Definition: SDL_events.h:121
Uint32 windowID
Definition: SDL_events.h:499