events: Add render category to SDL_EventCategory.

This commit is contained in:
Ryan C. Gordon
2024-11-22 13:49:11 -05:00
parent 615c935d11
commit c135386f58
3 changed files with 9 additions and 1 deletions

View File

@@ -50,9 +50,12 @@ SDL_EventCategory SDL_GetEventCategory(Uint32 type)
case SDL_EVENT_DID_ENTER_FOREGROUND:
case SDL_EVENT_LOCALE_CHANGED:
case SDL_EVENT_SYSTEM_THEME_CHANGED:
return SDL_EVENTCATEGORY_SYSTEM;
case SDL_EVENT_RENDER_TARGETS_RESET:
case SDL_EVENT_RENDER_DEVICE_RESET:
return SDL_EVENTCATEGORY_SYSTEM;
case SDL_EVENT_RENDER_DEVICE_LOST:
return SDL_EVENTCATEGORY_RENDER;
case SDL_EVENT_QUIT:
return SDL_EVENTCATEGORY_QUIT;
@@ -233,6 +236,9 @@ SDL_Window *SDL_GetWindowFromEvent(const SDL_Event *event)
case SDL_EVENTCATEGORY_DROP:
windowID = event->drop.windowID;
break;
case SDL_EVENTCATEGORY_RENDER:
windowID = event->render.windowID;
break;
default:
// < 0 -> invalid event type (error is set by SDL_GetEventCategory)
// else -> event has no associated window (not an error)

View File

@@ -62,6 +62,7 @@ typedef enum SDL_EventCategory
SDL_EVENTCATEGORY_PAXIS,
SDL_EVENTCATEGORY_DROP,
SDL_EVENTCATEGORY_CLIPBOARD,
SDL_EVENTCATEGORY_RENDER,
} SDL_EventCategory;
extern SDL_EventCategory SDL_GetEventCategory(Uint32 type);

View File

@@ -459,6 +459,7 @@ static void SDL_LogEvent(const SDL_Event *event)
break
SDL_RENDEREVENT_CASE(SDL_EVENT_RENDER_TARGETS_RESET);
SDL_RENDEREVENT_CASE(SDL_EVENT_RENDER_DEVICE_RESET);
SDL_RENDEREVENT_CASE(SDL_EVENT_RENDER_DEVICE_LOST);
#define SDL_DISPLAYEVENT_CASE(x) \
case x: \