diff options
| author | Yuqian Yang <crupest@crupest.life> | 2025-11-28 18:46:52 +0800 |
|---|---|---|
| committer | Yuqian Yang <crupest@crupest.life> | 2025-11-28 18:46:52 +0800 |
| commit | fa9e88a3a753de0f7a33efcf6a2671c28f099ba3 (patch) | |
| tree | a0836203b9d178ff6cd1cf0acb3620852d7566ac /include/cru/platform/gui/sdl | |
| parent | 9e596ff10782455615f69b9b54ce22176145b020 (diff) | |
| download | cru-fa9e88a3a753de0f7a33efcf6a2671c28f099ba3.tar.gz cru-fa9e88a3a753de0f7a33efcf6a2671c28f099ba3.tar.bz2 cru-fa9e88a3a753de0f7a33efcf6a2671c28f099ba3.zip | |
sdl add event dispatch logic.
Diffstat (limited to 'include/cru/platform/gui/sdl')
| -rw-r--r-- | include/cru/platform/gui/sdl/UiApplication.h | 6 | ||||
| -rw-r--r-- | include/cru/platform/gui/sdl/Window.h | 1 |
2 files changed, 6 insertions, 1 deletions
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 <cru/base/Timer.h> #include <cru/platform/graphics/Factory.h> +#include <SDL3/SDL_events.h> #include <atomic> #include <chrono> #include <cstdint> @@ -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<void()> 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_; |
