diff options
author | crupest <crupest@outlook.com> | 2021-11-18 17:56:12 +0800 |
---|---|---|
committer | crupest <crupest@outlook.com> | 2021-11-18 17:56:12 +0800 |
commit | 814be0155a567328f95c3e1a2b7becf4f0b5b977 (patch) | |
tree | 2d9c0d041c6e94ce5cf373f85cfa75ddd939e22b /include/cru/osx | |
parent | 0f3e84f0ef4c62d20e5cb4d9e5677ec39afb894d (diff) | |
download | cru-814be0155a567328f95c3e1a2b7becf4f0b5b977.tar.gz cru-814be0155a567328f95c3e1a2b7becf4f0b5b977.tar.bz2 cru-814be0155a567328f95c3e1a2b7becf4f0b5b977.zip |
...
Diffstat (limited to 'include/cru/osx')
-rw-r--r-- | include/cru/osx/gui/Clipboard.hpp | 31 | ||||
-rw-r--r-- | include/cru/osx/gui/UiApplication.hpp | 2 |
2 files changed, 33 insertions, 0 deletions
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 <memory> + +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<details::OsxClipboardPrivate> p); + + CRU_DELETE_COPY(OsxClipboard) + CRU_DELETE_MOVE(OsxClipboard) + + ~OsxClipboard() override; + + public: + String GetText() override; + void SetText(String text) override; + + private: + std::unique_ptr<details::OsxClipboardPrivate> 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); |