diff options
Diffstat (limited to 'include/cru/win/native/win_application.hpp')
-rw-r--r-- | include/cru/win/native/win_application.hpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/include/cru/win/native/win_application.hpp b/include/cru/win/native/win_application.hpp index 458b10ae..5bdb753e 100644 --- a/include/cru/win/native/win_application.hpp +++ b/include/cru/win/native/win_application.hpp @@ -16,7 +16,7 @@ class WinApplication : public Object, static WinApplication* GetInstance(); private: - static WinApplication* instance_; + static WinApplication* instance; private: explicit WinApplication(HINSTANCE h_instance); @@ -32,6 +32,8 @@ class WinApplication : public Object, int Run() override; void Quit(int quit_code) override; + void AddOnQuitHandler(const std::function<void()>& handler) override; + void InvokeLater(const std::function<void()>& action) override; unsigned long SetTimeout(std::chrono::milliseconds milliseconds, const std::function<void()>& action) override; @@ -55,5 +57,7 @@ class WinApplication : public Object, std::shared_ptr<GodWindow> god_window_; std::shared_ptr<TimerManager> timer_manager_; std::shared_ptr<WindowManager> window_manager_; + + std::vector<std::function<void()>> quit_handlers_; }; } // namespace cru::win::native |