A structure that contains window state change event data.
Uint32 |
type |
SDL_EVENT_WINDOW_HIDDEN |
Uint32 |
timestamp |
timestamp of the event |
Uint32 |
windowID |
the associated window |
Sint32 |
data1 |
event dependent data |
Sint32 |
data2 |
event dependent data |
#include <SDL3/SDL.h>
void PrintEvent(const SDL_Event * event)
{if (event->type >= SDL_EVENT_WINDOW_FIRST && event->type <= SDL_EVENT_WINDOW_LAST) {
switch (event->type) {
case SDL_EVENT_WINDOW_SHOWN:
"Window %d shown", event->window.windowID);
SDL_Log(break;
case SDL_EVENT_WINDOW_HIDDEN:
"Window %d hidden", event->window.windowID);
SDL_Log(break;
case SDL_EVENT_WINDOW_EXPOSED:
"Window %d exposed", event->window.windowID);
SDL_Log(break;
case SDL_EVENT_WINDOW_MOVED:
"Window %d moved to %d,%d",
SDL_Log(
event->window.windowID, event->window.data1,
event->window.data2);break;
case SDL_EVENT_WINDOW_RESIZED:
"Window %d resized to %dx%d",
SDL_Log(
event->window.windowID, event->window.data1,
event->window.data2);break;
case SDL_EVENT_WINDOW_SIZE_CHANGED:
"Window %d size changed to %dx%d",
SDL_Log(
event->window.windowID, event->window.data1,
event->window.data2);break;
case SDL_EVENT_WINDOW_MINIMIZED:
"Window %d minimized", event->window.windowID);
SDL_Log(break;
case SDL_EVENT_WINDOW_MAXIMIZED:
"Window %d maximized", event->window.windowID);
SDL_Log(break;
case SDL_EVENT_WINDOW_RESTORED:
"Window %d restored", event->window.windowID);
SDL_Log(break;
case SDL_EVENT_WINDOW_MOUSE_ENTER:
"Mouse entered window %d",
SDL_Log(
event->window.windowID);break;
case SDL_EVENT_WINDOW_MOUSE_LEAVE:
"Mouse left window %d", event->window.windowID);
SDL_Log(break;
case SDL_EVENT_WINDOW_FOCUS_GAINED:
"Window %d gained keyboard focus",
SDL_Log(
event->window.windowID);break;
case SDL_EVENT_WINDOW_FOCUS_LOST:
"Window %d lost keyboard focus",
SDL_Log(
event->window.windowID);break;
case SDL_EVENT_WINDOW_CLOSE_REQUESTED:
"Window %d closed", event->window.windowID);
SDL_Log(break;
case SDL_EVENT_WINDOW_TAKE_FOCUS:
"Window %d is offered a focus", event->window.windowID);
SDL_Log(break;
case SDL_EVENT_WINDOW_HIT_TEST:
"Window %d has a special hit test", event->window.windowID);
SDL_Log(break;
default:
"Window %d got unknown event %d",
SDL_Log(
event->window.windowID, event->window.type);break;
}
} }
SDL_WindowEvent is a member of the SDL_Event union and is used when an event of type SDL_WINDOWEVENT is reported. You would access it through the event's window
field.
CategoryStruct, CategoryEvents, CategoryVideo