diff options
author | Kae <80987908+Novaenia@users.noreply.github.com> | 2024-03-17 00:28:09 +1100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-03-17 00:28:09 +1100 |
commit | 8f8741bcb2f164f5d947cc4557806a6b72e50835 (patch) | |
tree | a61eac4dec093da4bbe96b10ccd6b97a1775e897 /source/frontend/StarClipboardLuaBindings.cpp | |
parent | 37843e419b7ac6075297fb2138ad216f33278d97 (diff) | |
parent | c6a2f4fa7d5930fe54d99a688b428f469dbe0e4c (diff) |
Merge pull request #40 from ErodeesFleurs/clipboard
Add ClipboardLuaBindings and make them available only when "safeScripts" is false.
Diffstat (limited to 'source/frontend/StarClipboardLuaBindings.cpp')
-rw-r--r-- | source/frontend/StarClipboardLuaBindings.cpp | 24 |
1 files changed, 24 insertions, 0 deletions
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<String> { + return appController->getClipboard(); + }); + + callbacks.registerCallback("setText", [appController](String const& text) { + appController->setClipboard(text); + }); + + return callbacks; +}; + +}// namespace Star |