diff options
Diffstat (limited to 'include/cru/win/native/ui_application.hpp')
-rw-r--r-- | include/cru/win/native/ui_application.hpp | 76 |
1 files changed, 0 insertions, 76 deletions
diff --git a/include/cru/win/native/ui_application.hpp b/include/cru/win/native/ui_application.hpp deleted file mode 100644 index 250e855c..00000000 --- a/include/cru/win/native/ui_application.hpp +++ /dev/null @@ -1,76 +0,0 @@ -#pragma once -#include "resource.hpp" - -#include "cru/platform/native/ui_application.hpp" - -#include <memory> - -namespace cru::platform::graph::win::direct { -class DirectGraphFactory; -} - -namespace cru::platform::native::win { -class WinUiApplication : public WinNativeResource, - public virtual IUiApplication { - public: - static WinUiApplication* GetInstance() { return instance; } - - private: - static WinUiApplication* instance; - - public: - WinUiApplication(); - - CRU_DELETE_COPY(WinUiApplication) - CRU_DELETE_MOVE(WinUiApplication) - - ~WinUiApplication() override; - - public: - int Run() override; - void RequestQuit(int quit_code) override; - - void AddOnQuitHandler(std::function<void()> handler) override; - - void InvokeLater(std::function<void()> action) override; - long long SetTimeout(std::chrono::milliseconds milliseconds, - std::function<void()> action) override; - long long SetInterval(std::chrono::milliseconds milliseconds, - std::function<void()> action) override; - void CancelTimer(long long id) override; - - std::vector<INativeWindow*> GetAllWindow() override; - std::shared_ptr<INativeWindowResolver> CreateWindow( - INativeWindow* parent) override; - - cru::platform::graph::IGraphFactory* GetGraphFactory() override; - - cru::platform::graph::win::direct::DirectGraphFactory* GetDirectFactory() { - return graph_factory_.get(); - } - - ICursorManager* GetCursorManager() override; - IInputMethodManager* GetInputMethodManager() override; - - HINSTANCE GetInstanceHandle() const { return instance_handle_; } - - GodWindow* GetGodWindow() const { return god_window_.get(); } - TimerManager* GetTimerManager() const { return timer_manager_.get(); } - WindowManager* GetWindowManager() const { return window_manager_.get(); } - - private: - HINSTANCE instance_handle_; - - std::unique_ptr<cru::platform::graph::win::direct::DirectGraphFactory> - graph_factory_; - - std::unique_ptr<GodWindow> god_window_; - std::unique_ptr<TimerManager> timer_manager_; - std::unique_ptr<WindowManager> window_manager_; - - std::unique_ptr<WinCursorManager> cursor_manager_; - std::unique_ptr<WinInputMethodManager> input_method_manager_; - - std::vector<std::function<void()>> quit_handlers_; -}; -} // namespace cru::platform::native::win |