From fa9e88a3a753de0f7a33efcf6a2671c28f099ba3 Mon Sep 17 00:00:00 2001 From: Yuqian Yang Date: Fri, 28 Nov 2025 18:46:52 +0800 Subject: sdl add event dispatch logic. --- include/cru/platform/gui/sdl/UiApplication.h | 6 +++++- include/cru/platform/gui/sdl/Window.h | 1 + 2 files changed, 6 insertions(+), 1 deletion(-) (limited to 'include/cru/platform/gui/sdl') diff --git a/include/cru/platform/gui/sdl/UiApplication.h b/include/cru/platform/gui/sdl/UiApplication.h index be5ae102..776a4d80 100644 --- a/include/cru/platform/gui/sdl/UiApplication.h +++ b/include/cru/platform/gui/sdl/UiApplication.h @@ -6,6 +6,7 @@ #include #include +#include #include #include #include @@ -18,7 +19,8 @@ class SdlUiApplication : public SdlResource, public virtual IUiApplication { friend SdlWindow; public: - explicit SdlUiApplication(graphics::IGraphicsFactory* graphics_factory, bool release_graphics_factory); + explicit SdlUiApplication(graphics::IGraphicsFactory* graphics_factory, + bool release_graphics_factory); ~SdlUiApplication(); public: @@ -61,6 +63,8 @@ class SdlUiApplication : public SdlResource, public virtual IUiApplication { long long SetTimer(std::chrono::milliseconds milliseconds, std::function action, bool repeat); + bool DispatchEvent(const SDL_Event& event); + private: graphics::IGraphicsFactory* graphics_factory_; bool release_graphics_factory_; diff --git a/include/cru/platform/gui/sdl/Window.h b/include/cru/platform/gui/sdl/Window.h index 9947a1b9..22b797b5 100644 --- a/include/cru/platform/gui/sdl/Window.h +++ b/include/cru/platform/gui/sdl/Window.h @@ -96,6 +96,7 @@ class SdlWindow : public SdlResource, public virtual INativeWindow { private: SdlUiApplication* application_; SDL_Window* sdl_window_; + SDL_WindowID sdl_window_id_; Rect client_rect_; SdlWindow* parent_; EventHandlerRevokerGuard parent_create_guard_; -- cgit v1.2.3