zenilib: zenilib/jni/external/sdl/SDL/SDL_events.h File Reference

zenilib 0.5.3.0

- Main Page
- Modules
- Namespaces
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Classes | Macros | Typedefs | Enumerations | Functions
SDL_events.h File Reference
`#include "SDL_stdinc.h"`
`#include "SDL_error.h"`
`#include "SDL_video.h"`
`#include "SDL_keyboard.h"`
`#include "SDL_mouse.h"`
`#include "SDL_joystick.h"`
`#include "SDL_gamecontroller.h"`
`#include "SDL_quit.h"`
`#include "SDL_gesture.h"`
`#include "SDL_touch.h"`
`#include "begin_code.h"`
`#include "close_code.h"`

Go to the source code of this file.

## Classes

struct | SDL_CommonEvent
| Fields shared by every event. More...
struct | SDL_ControllerAxisEvent
| Game controller axis motion event structure (event.caxis.*) More...
struct | SDL_ControllerButtonEvent
| Game controller button event structure (event.cbutton.*) More...
struct | SDL_ControllerDeviceEvent
| Controller device event structure (event.cdevice.*) More...
struct | SDL_DollarGestureEvent
| Dollar Gesture Event (event.dgesture.*) More...
struct | SDL_DropEvent
| An event used to request a file open by the system (event.drop.*) This event is disabled by default, you can enable it with SDL_EventState() More...
union | SDL_Event
| General event structure. More...
struct | SDL_JoyAxisEvent
| Joystick axis motion event structure (event.jaxis.*) More...
struct | SDL_JoyBallEvent
| Joystick trackball motion event structure (event.jball.*) More...
struct | SDL_JoyButtonEvent
| Joystick button event structure (event.jbutton.*) More...
struct | SDL_JoyDeviceEvent
| Joystick device event structure (event.jdevice.*) More...
struct | SDL_JoyHatEvent
| Joystick hat position change event structure (event.jhat.*) More...
struct | SDL_KeyboardEvent
| Keyboard button event structure (event.key.*) More...
struct | SDL_MouseButtonEvent
| Mouse button event structure (event.button.*) More...
struct | SDL_MouseMotionEvent
| Mouse motion event structure (event.motion.*) More...
struct | SDL_MouseWheelEvent
| Mouse wheel event structure (event.wheel.*) More...
struct | SDL_MultiGestureEvent
| Multiple Finger Gesture Event (event.mgesture.*) More...
struct | SDL_OSEvent
| OS Specific event. More...
struct | SDL_QuitEvent
| The "quit requested" event. More...
struct | SDL_SysWMEvent
| A video driver dependent system event (event.syswm.*) This event is disabled by default, you can enable it with SDL_EventState() More...
struct | SDL_TextEditingEvent
| Keyboard text editing event structure (event.edit.*) More...
struct | SDL_TextInputEvent
| Keyboard text input event structure (event.text.*) More...
struct | SDL_TouchFingerEvent
| Touch finger event structure (event.tfinger.*) More...
struct | SDL_UserEvent
| A user-defined event type (event.user.*) More...
struct | SDL_WindowEvent
| Window state change event data (event.window.*) More...

## Macros

#define | SDL_GetEventState(type) SDL_EventState(type, SDL_QUERY)
#define | SDL_PRESSED 1
#define | SDL_RELEASED 0
#define | SDL_TEXTEDITINGEVENT_TEXT_SIZE (32)
#define | SDL_TEXTINPUTEVENT_TEXT_SIZE (32)

## Typedefs

typedef SDL_Event * | event
typedef struct SDL_CommonEvent | SDL_CommonEvent
| Fields shared by every event. More...
typedef struct SDL_ControllerAxisEvent | SDL_ControllerAxisEvent
| Game controller axis motion event structure (event.caxis.*) More...
typedef struct SDL_ControllerButtonEvent | SDL_ControllerButtonEvent
| Game controller button event structure (event.cbutton.*) More...
typedef struct SDL_ControllerDeviceEvent | SDL_ControllerDeviceEvent
| Controller device event structure (event.cdevice.*) More...
typedef struct SDL_DollarGestureEvent | SDL_DollarGestureEvent
| Dollar Gesture Event (event.dgesture.*) More...
typedef struct SDL_DropEvent | SDL_DropEvent
| An event used to request a file open by the system (event.drop.*) This event is disabled by default, you can enable it with SDL_EventState() More...
typedef union SDL_Event | SDL_Event
| General event structure. More...
typedef struct SDL_JoyAxisEvent | SDL_JoyAxisEvent
| Joystick axis motion event structure (event.jaxis.*) More...
typedef struct SDL_JoyBallEvent | SDL_JoyBallEvent
| Joystick trackball motion event structure (event.jball.*) More...
typedef struct SDL_JoyButtonEvent | SDL_JoyButtonEvent
| Joystick button event structure (event.jbutton.*) More...
typedef struct SDL_JoyDeviceEvent | SDL_JoyDeviceEvent
| Joystick device event structure (event.jdevice.*) More...
typedef struct SDL_JoyHatEvent | SDL_JoyHatEvent
| Joystick hat position change event structure (event.jhat.*) More...
typedef struct SDL_KeyboardEvent | SDL_KeyboardEvent
| Keyboard button event structure (event.key.*) More...
typedef struct SDL_MouseButtonEvent | SDL_MouseButtonEvent
| Mouse button event structure (event.button.*) More...
typedef struct SDL_MouseMotionEvent | SDL_MouseMotionEvent
| Mouse motion event structure (event.motion.*) More...
typedef struct SDL_MouseWheelEvent | SDL_MouseWheelEvent
| Mouse wheel event structure (event.wheel.*) More...
typedef struct SDL_MultiGestureEvent | SDL_MultiGestureEvent
| Multiple Finger Gesture Event (event.mgesture.*) More...
typedef struct SDL_OSEvent | SDL_OSEvent
| OS Specific event. More...
typedef struct SDL_QuitEvent | SDL_QuitEvent
| The "quit requested" event. More...
typedef 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() More...
typedef struct SDL_SysWMmsg | SDL_SysWMmsg
typedef struct SDL_TextEditingEvent | SDL_TextEditingEvent
| Keyboard text editing event structure (event.edit.*) More...
typedef struct SDL_TextInputEvent | SDL_TextInputEvent
| Keyboard text input event structure (event.text.*) More...
typedef struct SDL_TouchFingerEvent | SDL_TouchFingerEvent
| Touch finger event structure (event.tfinger.*) More...
typedef struct SDL_UserEvent | SDL_UserEvent
| A user-defined event type (event.user.*) More...
typedef struct SDL_WindowEvent | SDL_WindowEvent
| Window state change event data (event.window.*) More...

## Enumerations

enum

SDL_EventType {
SDL_FIRSTEVENT = 0, SDL_QUIT = 0x100, SDL_APP_TERMINATING, SDL_APP_LOWMEMORY,
SDL_APP_WILLENTERBACKGROUND, SDL_APP_DIDENTERBACKGROUND, SDL_APP_WILLENTERFOREGROUND, SDL_APP_DIDENTERFOREGROUND,
SDL_WINDOWEVENT = 0x200, SDL_SYSWMEVENT, SDL_KEYDOWN = 0x300, SDL_KEYUP,
SDL_TEXTEDITING, SDL_TEXTINPUT, SDL_MOUSEMOTION = 0x400, SDL_MOUSEBUTTONDOWN,
SDL_MOUSEBUTTONUP, SDL_MOUSEWHEEL, SDL_JOYAXISMOTION = 0x600, SDL_JOYBALLMOTION,
SDL_JOYHATMOTION, SDL_JOYBUTTONDOWN, SDL_JOYBUTTONUP, SDL_JOYDEVICEADDED,
SDL_JOYDEVICEREMOVED, SDL_CONTROLLERAXISMOTION = 0x650, SDL_CONTROLLERBUTTONDOWN, SDL_CONTROLLERBUTTONUP,
SDL_CONTROLLERDEVICEADDED, SDL_CONTROLLERDEVICEREMOVED, SDL_CONTROLLERDEVICEREMAPPED, SDL_FINGERDOWN = 0x700,
SDL_FINGERUP, SDL_FINGERMOTION, SDL_DOLLARGESTURE = 0x800, SDL_DOLLARRECORD,
SDL_MULTIGESTURE, SDL_CLIPBOARDUPDATE = 0x900, SDL_DROPFILE = 0x1000, SDL_USEREVENT = 0x8000,
SDL_LASTEVENT = 0xFFFF
}

| The types of events that can be delivered. More...

## Functions

typedef | int (SDLCALL *SDL_EventFilter)(void *userdata
DECLSPEC void SDLCALL | SDL_AddEventWatch (SDL_EventFilter filter, void *userdata)
DECLSPEC void SDLCALL | SDL_DelEventWatch (SDL_EventFilter filter, void *userdata)
DECLSPEC void SDLCALL | SDL_FilterEvents (SDL_EventFilter filter, void *userdata)
DECLSPEC void SDLCALL | SDL_FlushEvent (Uint32 type)
DECLSPEC void SDLCALL | SDL_FlushEvents (Uint32 minType, Uint32 maxType)
DECLSPEC SDL_bool SDLCALL | SDL_GetEventFilter (SDL_EventFilter *filter, void **userdata)
DECLSPEC SDL_bool SDLCALL | SDL_HasEvent (Uint32 type)
DECLSPEC SDL_bool SDLCALL | SDL_HasEvents (Uint32 minType, Uint32 maxType)
DECLSPEC int SDLCALL | SDL_PollEvent (SDL_Event *event)
| Polls for currently pending events. More...
DECLSPEC void SDLCALL | SDL_PumpEvents (void)
DECLSPEC int SDLCALL | SDL_PushEvent (SDL_Event *event)
| Add an event to the event queue. More...
DECLSPEC Uint32 SDLCALL | SDL_RegisterEvents (int numevents)
DECLSPEC void SDLCALL | SDL_SetEventFilter (SDL_EventFilter filter, void *userdata)
DECLSPEC int SDLCALL | SDL_WaitEvent (SDL_Event *event)
| Waits indefinitely for the next available event. More...
DECLSPEC int SDLCALL | SDL_WaitEventTimeout (SDL_Event *event, int timeout)
| Waits until the specified timeout (in milliseconds) for the next available event. More...
enum | SDL_eventaction { SDL_ADDEVENT, SDL_PEEKEVENT, SDL_GETEVENT }
DECLSPEC int SDLCALL | SDL_PeepEvents (SDL_Event *events, int numevents, SDL_eventaction action, Uint32 minType, Uint32 maxType)
#define | SDL_QUERY -1
#define | SDL_IGNORE 0
#define | SDL_DISABLE 0
#define | SDL_ENABLE 1
DECLSPEC Uint8 SDLCALL | SDL_EventState (Uint32 type, int state)

## Detailed Description

Include file for SDL event handling.

Definition in file SDL_events.h.

## Macro Definition Documentation

#define SDL_DISABLE 0

Definition at line 687 of file SDL_events.h.

Referenced by Zeni::Controllers::enable(), SDL_EventState(), SDL_JoystickEventState(), SDL_StartEventLoop(), SDL_StopTextInput(), and Zeni::Window::set_mouse_state().

#define SDL_ENABLE 1

Definition at line 688 of file SDL_events.h.

Referenced by Zeni::Controllers::enable(), Zeni::Window::get_mouse_state(), SDL_EventState(), SDL_GameControllerEventState(), SDL_IsTextInputActive(), SDL_JoystickEventState(), SDL_PrivateGameControllerAxis(), SDL_PrivateGameControllerButton(), SDL_PrivateJoystickAxis(), SDL_PrivateJoystickBall(), SDL_PrivateJoystickButton(), SDL_PrivateJoystickHat(), SDL_PrivateSendMouseMotion(), SDL_SendAppEvent(), SDL_SendClipboardUpdate(), SDL_SendDropFile(), SDL_SendEditingText(), SDL_SendKeyboardKey(), SDL_SendKeyboardText(), SDL_SendMouseButton(), SDL_SendMouseWheel(), SDL_SendSysWMEvent(), SDL_SendTouch(), SDL_SendTouchMotion(), SDL_SendWindowEvent(), SDL_StartTextInput(), and Zeni::Window::set_mouse_state().

#define SDL_GetEventState | ( |  | type | ) | SDL_EventState(type, SDL_QUERY)

Definition at line 701 of file SDL_events.h.

Referenced by SDL_IsTextInputActive(), SDL_PrivateGameControllerAxis(), SDL_PrivateGameControllerButton(), SDL_PrivateJoystickAxis(), SDL_PrivateJoystickBall(), SDL_PrivateJoystickButton(), SDL_PrivateJoystickHat(), SDL_PrivateSendMouseMotion(), SDL_SendAppEvent(), SDL_SendClipboardUpdate(), SDL_SendDropFile(), SDL_SendEditingText(), SDL_SendKeyboardKey(), SDL_SendKeyboardText(), SDL_SendMouseButton(), SDL_SendMouseWheel(), SDL_SendSysWMEvent(), SDL_SendTouch(), SDL_SendTouchMotion(), and SDL_SendWindowEvent().

#define SDL_IGNORE 0

Definition at line 686 of file SDL_events.h.

Referenced by SDL_GameControllerEventState().

#define SDL_PRESSED 1

Definition at line 50 of file SDL_events.h.

Referenced by SDL_BWin::DispatchMessage(), Zeni::Gamestate_II::on_event(), Zeni::Popup_State::on_key(), Zeni::Gamestate_Base::on_key(), PSP_PumpEvents(), SDL_GameControllerEventWatcher(), SDL_PrivateGameControllerButton(), SDL_PrivateJoystickButton(), SDL_ResetKeyboard(), SDL_SendKeyboardKey(), SDL_SendMouseButton(), and SDL_SYS_JoystickUpdate().

#define SDL_QUERY -1

Definition at line 685 of file SDL_events.h.

Referenced by Zeni::Window::get_mouse_state(), SDL_GameControllerEventState(), SDL_JoystickEventState(), SDL_SetKeyboardFocus(), and SDL_ShouldPollJoystick().

#define SDL_RELEASED 0

Definition at line 49 of file SDL_events.h.

Referenced by SDL_BWin::DispatchMessage(), PSP_PumpEvents(), SDL_GameControllerEventWatcher(), SDL_PrivateGameControllerButton(), SDL_PrivateJoystickButton(), SDL_ResetKeyboard(), SDL_ResetMouse(), SDL_SendKeyboardKey(), SDL_SendMouseButton(), and SDL_SYS_JoystickUpdate().

#define SDL_TEXTEDITINGEVENT_TEXT_SIZE (32)

Definition at line 188 of file SDL_events.h.

#define SDL_TEXTINPUTEVENT_TEXT_SIZE (32)

Definition at line 203 of file SDL_events.h.

## Typedef Documentation

typedef SDL_Event* event

Definition at line 628 of file SDL_events.h.

typedef struct SDL_CommonEvent SDL_CommonEvent

Fields shared by every event.

typedef struct SDL_ControllerAxisEvent SDL_ControllerAxisEvent

Game controller axis motion event structure (event.caxis.*)

typedef struct SDL_ControllerButtonEvent SDL_ControllerButtonEvent

Game controller button event structure (event.cbutton.*)

typedef struct SDL_ControllerDeviceEvent SDL_ControllerDeviceEvent

Controller device event structure (event.cdevice.*)

typedef struct SDL_DollarGestureEvent SDL_DollarGestureEvent

Dollar Gesture Event (event.dgesture.*)

typedef struct SDL_DropEvent SDL_DropEvent

An event used to request a file open by the system (event.drop.*) This event is disabled by default, you can enable it with SDL_EventState()

Note
  If you enable this event, you must free the filename in the event.

typedef union SDL_Event SDL_Event

General event structure.

typedef struct SDL_JoyAxisEvent SDL_JoyAxisEvent

Joystick axis motion event structure (event.jaxis.*)

typedef struct SDL_JoyBallEvent SDL_JoyBallEvent

Joystick trackball motion event structure (event.jball.*)

typedef struct SDL_JoyButtonEvent SDL_JoyButtonEvent

Joystick button event structure (event.jbutton.*)

typedef struct SDL_JoyDeviceEvent SDL_JoyDeviceEvent

Joystick device event structure (event.jdevice.*)

typedef struct SDL_JoyHatEvent SDL_JoyHatEvent

Joystick hat position change event structure (event.jhat.*)

typedef struct SDL_KeyboardEvent SDL_KeyboardEvent

Keyboard button event structure (event.key.*)

typedef struct SDL_MouseButtonEvent SDL_MouseButtonEvent

Mouse button event structure (event.button.*)

typedef struct SDL_MouseMotionEvent SDL_MouseMotionEvent

Mouse motion event structure (event.motion.*)

typedef struct SDL_MouseWheelEvent SDL_MouseWheelEvent

Mouse wheel event structure (event.wheel.*)

typedef struct SDL_MultiGestureEvent SDL_MultiGestureEvent

Multiple Finger Gesture Event (event.mgesture.*)

typedef struct SDL_OSEvent SDL_OSEvent

OS Specific event.

typedef struct SDL_QuitEvent SDL_QuitEvent

The "quit requested" event.

typedef 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()

Note
  If you want to use this event, you should include SDL_syswm.h.

typedef struct SDL_SysWMmsg SDL_SysWMmsg

Definition at line 477 of file SDL_events.h.

typedef struct SDL_TextEditingEvent SDL_TextEditingEvent

Keyboard text editing event structure (event.edit.*)

typedef struct SDL_TextInputEvent SDL_TextInputEvent

Keyboard text input event structure (event.text.*)

typedef struct SDL_TouchFingerEvent SDL_TouchFingerEvent

Touch finger event structure (event.tfinger.*)

typedef struct SDL_UserEvent SDL_UserEvent

A user-defined event type (event.user.*)

typedef struct SDL_WindowEvent SDL_WindowEvent

Window state change event data (event.window.*)

## Enumeration Type Documentation

enum SDL_eventaction

Enumerator
SDL_ADDEVENT |
SDL_PEEKEVENT |
SDL_GETEVENT |

Definition at line 545 of file SDL_events.h.

enum SDL_EventType

The types of events that can be delivered.

Enumerator
SDL_FIRSTEVENT | Unused (do not remove)
SDL_QUIT | User-requested quit
SDL_APP_TERMINATING | The application is being terminated by the OS Called on iOS in applicationWillTerminate() Called on Android in onDestroy()
SDL_APP_LOWMEMORY | The application is low on memory, free memory if possible. Called on iOS in applicationDidReceiveMemoryWarning() Called on Android in onLowMemory()
SDL_APP_WILLENTERBACKGROUND | The application is about to enter the background Called on iOS in applicationWillResignActive() Called on Android in onPause()
SDL_APP_DIDENTERBACKGROUND | The application did enter the background and may not get CPU for some time Called on iOS in applicationDidEnterBackground() Called on Android in onPause()
SDL_APP_WILLENTERFOREGROUND | The application is about to enter the foreground Called on iOS in applicationWillEnterForeground() Called on Android in onResume()
SDL_APP_DIDENTERFOREGROUND | The application is now interactive Called on iOS in applicationDidBecomeActive() Called on Android in onResume()
SDL_WINDOWEVENT | Window state change
SDL_SYSWMEVENT | System specific event
SDL_KEYDOWN | Key pressed
SDL_KEYUP | Key released
SDL_TEXTEDITING | Keyboard text editing (composition)
SDL_TEXTINPUT | Keyboard text input
SDL_MOUSEMOTION | Mouse moved
SDL_MOUSEBUTTONDOWN | Mouse button pressed
SDL_MOUSEBUTTONUP | Mouse button released
SDL_MOUSEWHEEL | Mouse wheel motion
SDL_JOYAXISMOTION | Joystick axis motion
SDL_JOYBALLMOTION | Joystick trackball motion
SDL_JOYHATMOTION | Joystick hat position change
SDL_JOYBUTTONDOWN | Joystick button pressed
SDL_JOYBUTTONUP | Joystick button released
SDL_JOYDEVICEADDED | A new joystick has been inserted into the system
SDL_JOYDEVICEREMOVED | An opened joystick has been removed
SDL_CONTROLLERAXISMOTION | Game controller axis motion
SDL_CONTROLLERBUTTONDOWN | Game controller button pressed
SDL_CONTROLLERBUTTONUP | Game controller button released
SDL_CONTROLLERDEVICEADDED | A new Game controller has been inserted into the system
SDL_CONTROLLERDEVICEREMOVED | An opened Game controller has been removed
SDL_CONTROLLERDEVICEREMAPPED | The controller mapping was updated
SDL_FINGERDOWN |
SDL_FINGERUP |
SDL_FINGERMOTION |
SDL_DOLLARGESTURE |
SDL_DOLLARRECORD |
SDL_MULTIGESTURE |
SDL_CLIPBOARDUPDATE | The clipboard changed
SDL_DROPFILE | The system requests a file open
SDL_USEREVENT | Events SDL_USEREVENT through SDL_LASTEVENT are for your use, and should be allocated with SDL_RegisterEvents()
SDL_LASTEVENT | This last event is only for bounding internal arrays

Definition at line 55 of file SDL_events.h.

## Function Documentation

typedef int | ( | SDLCALL * | SDL_ThreadFunction | ) |

The function passed to SDL_CreateThread(). It is passed a void* user context parameter and returns an int.

DECLSPEC void SDLCALL SDL_AddEventWatch | ( | SDL_EventFilter | filter,
|  | void * | userdata
| ) |  |

Add a function which is called when an event is added to the queue.

Definition at line 504 of file SDL_events.c.

References SDL_event_watchers, and SDL_malloc().

Referenced by SDL_CreateRenderer(), and SDL_GameControllerInit().

DECLSPEC void SDLCALL SDL_DelEventWatch | ( | SDL_EventFilter | filter,
|  | void * | userdata
| ) |  |

Remove an event watch function added with SDL_AddEventWatch()

Definition at line 521 of file SDL_events.c.

References NULL, and SDL_free().

Referenced by SDL_DestroyRenderer(), and SDL_GameControllerQuit().

DECLSPEC Uint8 SDLCALL SDL_EventState | ( | Uint32 | type,
|  | int | state
| ) |  |

This function allows you to set the state of processing certain events.

- If `state` is set to SDL_IGNORE, that event will be automatically dropped from the event queue and will not event be filtered.
- If `state` is set to SDL_ENABLE, that event will be processed normally.
- If `state` is set to SDL_QUERY, SDL_EventState() will return the current processing state of the specified event.

Definition at line 555 of file SDL_events.c.

References cordic::hi, cordic::lo, SDL_calloc(), SDL_DISABLE, SDL_disabled_events, SDL_ENABLE, and SDL_FlushEvent().

Referenced by SDL_GameControllerEventState(), SDL_JoystickEventState(), SDL_SetKeyboardFocus(), SDL_StartEventLoop(), SDL_StartTextInput(), and SDL_StopTextInput().

DECLSPEC void SDLCALL SDL_FilterEvents | ( | SDL_EventFilter | filter,
|  | void * | userdata
| ) |  |

Run the filter function on the current event queue, removing any events for which the filter returns 0.

Definition at line 540 of file SDL_events.c.

References SDL_CutEvent(), SDL_EventQ, SDL_LockMutex(), and SDL_UnlockMutex().

Referenced by SDL_SendWindowEvent().

DECLSPEC void SDLCALL SDL_FlushEvent | ( | Uint32 | type | ) |

This function clears events from the event queue

Definition at line 358 of file SDL_events.c.

References SDL_FlushEvents().

Referenced by SDL_EventState(), and SDL_SetRelativeMouseMode().

DECLSPEC void SDLCALL SDL_FlushEvents | ( | Uint32 | minType,
|  | Uint32 | maxType
| ) |  |

Definition at line 364 of file SDL_events.c.

References SDL_CutEvent(), SDL_EventQ, SDL_LockMutex(), SDL_PumpEvents(), and SDL_UnlockMutex().

Referenced by SDL_FlushEvent(), and SDL_SetEventFilter().

DECLSPEC SDL_bool SDLCALL SDL_GetEventFilter | ( | SDL_EventFilter * | filter,
|  | void ** | userdata
| ) |  |

Return the current event filter - can be used to "chain" filters. If there is no event filter set, this function returns SDL_FALSE.

Definition at line 491 of file SDL_events.c.

References SDL_EventOK, SDL_EventOKParam, SDL_FALSE, and SDL_TRUE.

DECLSPEC SDL_bool SDLCALL SDL_HasEvent | ( | Uint32 | type | ) |

Checks to see if certain event types are in the event queue.

Definition at line 346 of file SDL_events.c.

References NULL, SDL_PEEKEVENT, and SDL_PeepEvents().

DECLSPEC SDL_bool SDLCALL SDL_HasEvents | ( | Uint32 | minType,
|  | Uint32 | maxType
| ) |  |

Definition at line 352 of file SDL_events.c.

References NULL, SDL_PEEKEVENT, and SDL_PeepEvents().

DECLSPEC int SDLCALL SDL_PeepEvents | ( | SDL_Event * | events,
|  | int | numevents,
|  | SDL_eventaction | action,
|  | Uint32 | minType,
|  | Uint32 | maxType
| ) |  |

Checks the event queue for messages and optionally returns them.

If `action` is SDL_ADDEVENT, up to `numevents` events will be added to the back of the event queue.

If `action` is SDL_PEEKEVENT, up to `numevents` events at the front of the event queue, within the specified minimum and maximum type, will be returned and will not be removed from the queue.

If `action` is SDL_GETEVENT, up to `numevents` events at the front of the event queue, within the specified minimum and maximum type, will be returned and will be removed from the queue.

Returns
  The number of events actually stored, or -1 if there was an error.

This function is thread-safe.

Definition at line 265 of file SDL_events.c.

References i, SDL_SysWMmsg::msg, SDL_SysWMEvent::msg, NULL, SDL_AddEvent(), SDL_ADDEVENT, SDL_CutEvent(), SDL_EventQ, SDL_GETEVENT, SDL_LockMutex(), SDL_malloc(), SDL_PEEKEVENT, SDL_SetError(), SDL_SYSWMEVENT, SDL_UnlockMutex(), and SDL_Event::syswm.

Referenced by SDL_HasEvent(), SDL_HasEvents(), SDL_PushEvent(), and SDL_WaitEventTimeout().

DECLSPEC int SDLCALL SDL_PollEvent | ( | SDL_Event * | event | ) |

Polls for currently pending events.

Returns
  1 if there are any pending events, or 0 if there are none available.

Parameters

  event | If not NULL, the next event is removed from the queue and stored in that area.

Definition at line 415 of file SDL_events.c.

References SDL_WaitEventTimeout().

Referenced by Zeni::Game::run().

DECLSPEC void SDLCALL SDL_PumpEvents | ( | void |  | ) |

Pumps the event loop, gathering events from the input devices.

This function updates the event queue and internal input device state.

This should only be run in the thread that sets the video mode.

Definition at line 396 of file SDL_events.c.

References _this, SDL_VideoDevice::PumpEvents, SDL_GetVideoDevice(), SDL_JoystickUpdate(), and SDL_ShouldPollJoystick().

Referenced by SDL_FlushEvents(), and SDL_WaitEventTimeout().

DECLSPEC int SDLCALL SDL_PushEvent | ( | SDL_Event * | event | ) |

Add an event to the event queue.

Returns
  1 on success, 0 if the event was filtered, or -1 if the event queue was full or there was some other error.

Definition at line 457 of file SDL_events.c.

References SDL_ADDEVENT, SDL_EventOK, SDL_EventOKParam, SDL_GestureProcessEvent(), SDL_GetTicks(), and SDL_PeepEvents().

Referenced by SDL_GameControllerEventWatcher(), SDL_PrivateGameControllerAxis(), SDL_PrivateGameControllerButton(), SDL_PrivateGameControllerRefreshMapping(), SDL_PrivateJoystickAxis(), SDL_PrivateJoystickBall(), SDL_PrivateJoystickButton(), SDL_PrivateJoystickHat(), SDL_PrivateSendMouseMotion(), SDL_SendAppEvent(), SDL_SendClipboardUpdate(), SDL_SendDollarRecord(), SDL_SendDropFile(), SDL_SendEditingText(), SDL_SendGestureDollar(), SDL_SendGestureMulti(), SDL_SendKeyboardKey(), SDL_SendKeyboardText(), SDL_SendMouseButton(), SDL_SendMouseWheel(), SDL_SendSysWMEvent(), SDL_SendTouch(), SDL_SendTouchMotion(), and SDL_SendWindowEvent().

DECLSPEC Uint32 SDLCALL SDL_RegisterEvents | ( | int | numevents | ) |

This function allocates a set of user-defined events, and returns the beginning event number for that set of events.

If there aren't enough user-defined events left, this function returns (Uint32)-1

Definition at line 596 of file SDL_events.c.

References SDL_LASTEVENT, and SDL_userevents.

DECLSPEC void SDLCALL SDL_SetEventFilter | ( | SDL_EventFilter | filter,
|  | void * | userdata
| ) |  |

Sets up a filter to process all events before they change internal state and are posted to the internal event queue.

The filter is prototyped as:

* int SDL_EventFilter(void *userdata, SDL_Event * event);
*

If the filter returns 1, then the event will be added to the internal queue. If it returns 0, then the event will be dropped from the queue, but the internal state will still be updated. This allows selective filtering of dynamically arriving events.

Warning
  Be very careful of what you do in the event filter function, as it may run in a different thread!

There is one caveat when dealing with the SDL_QuitEvent event type. The event filter is only called when the window manager desires to close the application window. If the event filter returns 1, then the window will be closed, otherwise the window will remain open if possible.

If the quit event is generated by an interrupt signal, it will bypass the internal queue and be delivered to the application at the next event poll.

Definition at line 481 of file SDL_events.c.

References NULL, SDL_EventOK, SDL_EventOKParam, SDL_FIRSTEVENT, SDL_FlushEvents(), and SDL_LASTEVENT.

DECLSPEC int SDLCALL SDL_WaitEvent | ( | SDL_Event * | event | ) |

Waits indefinitely for the next available event.

Returns
  1, or 0 if there was an error while waiting for events.

Parameters

  event | If not NULL, the next event is removed from the queue and stored in that area.

Definition at line 421 of file SDL_events.c.

References SDL_WaitEventTimeout().

DECLSPEC int SDLCALL SDL_WaitEventTimeout | ( | SDL_Event * | event,
|  | int | timeout
| ) |  |

Waits until the specified timeout (in milliseconds) for the next available event.

Returns
  1, or 0 if there was an error while waiting for events.

Parameters

  event | If not NULL, the next event is removed from the queue and stored in that area.
  timeout | The timeout (in milliseconds) to wait for next event.

Definition at line 427 of file SDL_events.c.

References SDL_Delay(), SDL_FIRSTEVENT, SDL_GETEVENT, SDL_GetTicks(), SDL_LASTEVENT, SDL_PeepEvents(), and SDL_PumpEvents().

Referenced by SDL_PollEvent(), and SDL_WaitEvent().