From c6a2f4fa7d5930fe54d99a688b428f469dbe0e4c Mon Sep 17 00:00:00 2001 From: ErodeesFleurs <3353309908@qq.com> Date: Sat, 16 Mar 2024 20:00:53 +0800 Subject: add clipboard lua binds --- source/frontend/StarClipboardLuaBindings.cpp | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 source/frontend/StarClipboardLuaBindings.cpp (limited to 'source/frontend/StarClipboardLuaBindings.cpp') diff --git a/source/frontend/StarClipboardLuaBindings.cpp b/source/frontend/StarClipboardLuaBindings.cpp new file mode 100644 index 0000000..c4fbc41 --- /dev/null +++ b/source/frontend/StarClipboardLuaBindings.cpp @@ -0,0 +1,24 @@ +#include "StarClipboardLuaBindings.hpp" +#include "StarLuaConverters.hpp" + +#include "SDL2/SDL.h" + +namespace Star { + +LuaCallbacks LuaBindings::makeClipboardCallbacks(ApplicationControllerPtr appController) { + LuaCallbacks callbacks; + + callbacks.registerCallback("hasText", []() -> bool { return SDL_HasClipboardText() == SDL_TRUE;}); + + callbacks.registerCallback("getText", [appController]() -> Maybe { + return appController->getClipboard(); + }); + + callbacks.registerCallback("setText", [appController](String const& text) { + appController->setClipboard(text); + }); + + return callbacks; +}; + +}// namespace Star -- cgit v1.2.3