// Copyright (c) 2012-2023 Wojciech Figat. All rights reserved. #pragma once #include "Engine/Core/Types/Span.h" #include "Engine/Core/Types/String.h" #include "Engine/Core/Types/StringView.h" #include "Engine/Core/Collections/Array.h" API_INJECT_CODE(cpp, "#include \"Engine/Platform/Clipboard.h\""); /// /// Native platform clipboard service. /// API_CLASS(Static, Name="Clipboard", Tag="NativeInvokeUseName") class FLAXENGINE_API ClipboardBase { public: static struct FLAXENGINE_API ScriptingTypeInitializer TypeInitializer; /// /// Clear the clipboard contents. /// API_FUNCTION() static void Clear() { } /// /// Sets text to the clipboard. /// /// The text to set. API_PROPERTY() static void SetText(const StringView& text) { } /// /// Sets the raw bytes data to the clipboard. /// /// The data to set. API_PROPERTY() static void SetRawData(const Span& data) { } /// /// Sets the files to the clipboard. /// /// The list of file paths. API_PROPERTY() static void SetFiles(const Array& files) { } /// /// Gets the text from the clipboard. /// /// The result text (or empty if clipboard doesn't have valid data). API_PROPERTY() static String GetText() { return String::Empty; } /// /// Gets the raw bytes data from the clipboard. /// /// The result data (or empty if clipboard doesn't have valid data). API_PROPERTY() static Array GetRawData() { return Array(); } /// /// Gets the file paths from the clipboard. /// /// The output list of file paths (or empty if clipboard doesn't have valid data). API_PROPERTY() static Array GetFiles() { return Array(); } };