From 814be0155a567328f95c3e1a2b7becf4f0b5b977 Mon Sep 17 00:00:00 2001 From: crupest Date: Thu, 18 Nov 2021 17:56:12 +0800 Subject: ... --- include/cru/osx/gui/Clipboard.hpp | 31 +++++++++++++++++++++++++++++++ include/cru/osx/gui/UiApplication.hpp | 2 ++ 2 files changed, 33 insertions(+) create mode 100644 include/cru/osx/gui/Clipboard.hpp (limited to 'include/cru/osx/gui') diff --git a/include/cru/osx/gui/Clipboard.hpp b/include/cru/osx/gui/Clipboard.hpp new file mode 100644 index 00000000..fea97140 --- /dev/null +++ b/include/cru/osx/gui/Clipboard.hpp @@ -0,0 +1,31 @@ +#pragma once +#include "Resource.hpp" + +#include "cru/platform/gui/Base.hpp" +#include "cru/platform/gui/Clipboard.hpp" + +#include + +namespace cru::platform::gui::osx { +namespace details { +class OsxClipboardPrivate; +} + +class OsxClipboard : public OsxGuiResource, public virtual IClipboard { + public: + OsxClipboard(cru::platform::gui::IUiApplication* ui_application, + std::unique_ptr p); + + CRU_DELETE_COPY(OsxClipboard) + CRU_DELETE_MOVE(OsxClipboard) + + ~OsxClipboard() override; + + public: + String GetText() override; + void SetText(String text) override; + + private: + std::unique_ptr p_; +}; +} // namespace cru::platform::gui::osx diff --git a/include/cru/osx/gui/UiApplication.hpp b/include/cru/osx/gui/UiApplication.hpp index a7b88010..e3cb269a 100644 --- a/include/cru/osx/gui/UiApplication.hpp +++ b/include/cru/osx/gui/UiApplication.hpp @@ -46,6 +46,8 @@ class OsxUiApplication : public OsxGuiResource, public virtual IUiApplication { ICursorManager* GetCursorManager() override; + IClipboard* GetClipboard() override; + private: void UnregisterWindow(OsxWindow* window); -- cgit v1.2.3