From 9a42f6fd709feaa9e9e3cc4530c67e2a237d5bee Mon Sep 17 00:00:00 2001 From: crupest Date: Sat, 18 Sep 2021 16:13:40 +0800 Subject: ... --- include/cru/osx/gui/Resource.hpp | 24 ++++++++++++++++++++++++ include/cru/osx/gui/UiApplication.hpp | 0 include/cru/osx/gui/Window.hpp | 18 ++++++++++++++++++ 3 files changed, 42 insertions(+) create mode 100644 include/cru/osx/gui/Resource.hpp create mode 100644 include/cru/osx/gui/UiApplication.hpp create mode 100644 include/cru/osx/gui/Window.hpp (limited to 'include/cru/osx') diff --git a/include/cru/osx/gui/Resource.hpp b/include/cru/osx/gui/Resource.hpp new file mode 100644 index 00000000..3e44bb9b --- /dev/null +++ b/include/cru/osx/gui/Resource.hpp @@ -0,0 +1,24 @@ +#pragma once +#include "../Resource.hpp" + +#include "cru/platform/gui/Base.hpp" + +namespace cru::platform::gui::osx { +class OsxGuiResource : public platform::osx::OsxResource { + public: + explicit OsxGuiResource(IUiApplication* ui_application); + + CRU_DELETE_COPY(OsxGuiResource) + CRU_DELETE_MOVE(OsxGuiResource) + + ~OsxGuiResource() override = default; + + public: + String GetPlatformId() const override { return u"OSX GUI"; } + + IUiApplication* GetUiApplication() const { return ui_application_; } + + private: + IUiApplication* ui_application_; +}; +} // namespace cru::platform::gui::osx diff --git a/include/cru/osx/gui/UiApplication.hpp b/include/cru/osx/gui/UiApplication.hpp new file mode 100644 index 00000000..e69de29b diff --git a/include/cru/osx/gui/Window.hpp b/include/cru/osx/gui/Window.hpp new file mode 100644 index 00000000..14ad05ad --- /dev/null +++ b/include/cru/osx/gui/Window.hpp @@ -0,0 +1,18 @@ +#pragma once +#include "Resource.hpp" +#include "cru/platform/gui/Base.hpp" +#include "cru/platform/gui/Window.hpp" + +namespace cru::platform::gui::osx { +class OsxWindow : public OsxGuiResource, public virtual INativeWindow { + public: + OsxWindow(); + + CRU_DELETE_COPY(OsxWindow) + CRU_DELETE_MOVE(OsxWindow) + + ~OsxWindow() override; + + private: +}; +} // namespace cru::platform::gui::osx -- cgit v1.2.3