diff options
Diffstat (limited to 'include/cru/win/gui/UiApplication.hpp')
-rw-r--r-- | include/cru/win/gui/UiApplication.hpp | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/include/cru/win/gui/UiApplication.hpp b/include/cru/win/gui/UiApplication.hpp index 4cf46858..4b972fee 100644 --- a/include/cru/win/gui/UiApplication.hpp +++ b/include/cru/win/gui/UiApplication.hpp @@ -7,7 +7,7 @@ #include <memory> namespace cru::platform::graphics::win::direct { -class DirectGraphFactory; +class DirectGraphicsFactory; } namespace cru::platform::gui::win { @@ -33,6 +33,13 @@ class WinUiApplication : public WinNativeResource, void AddOnQuitHandler(std::function<void()> handler) override; + bool IsQuitOnAllWindowClosed() override { + return is_quit_on_all_window_closed_; + } + void SetQuitOnAllWindowClosed(bool quit_on_all_window_closed) override { + is_quit_on_all_window_closed_ = quit_on_all_window_closed; + } + long long SetImmediate(std::function<void()> action) override; long long SetTimeout(std::chrono::milliseconds milliseconds, std::function<void()> action) override; @@ -41,16 +48,19 @@ class WinUiApplication : public WinNativeResource, void CancelTimer(long long id) override; std::vector<INativeWindow*> GetAllWindow() override; - INativeWindow* CreateWindow(INativeWindow* parent, CreateWindowFlag flag) override; + INativeWindow* CreateWindow() override; - cru::platform::graphics::IGraphFactory* GetGraphFactory() override; + cru::platform::graphics::IGraphicsFactory* GetGraphicsFactory() override; - cru::platform::graphics::win::direct::DirectGraphFactory* GetDirectFactory() { + cru::platform::graphics::win::direct::DirectGraphicsFactory* + GetDirectFactory() { return graph_factory_.get(); } ICursorManager* GetCursorManager() override; + IClipboard* GetClipboard() override; + HINSTANCE GetInstanceHandle() const { return instance_handle_; } GodWindow* GetGodWindow() const { return god_window_.get(); } @@ -60,7 +70,9 @@ class WinUiApplication : public WinNativeResource, private: HINSTANCE instance_handle_; - std::unique_ptr<cru::platform::graphics::win::direct::DirectGraphFactory> + bool is_quit_on_all_window_closed_ = true; + + std::unique_ptr<cru::platform::graphics::win::direct::DirectGraphicsFactory> graph_factory_; std::unique_ptr<GodWindow> god_window_; |