| 22 | } |
| 23 | |
| 24 | void WindowsClipboard::SetText(const StringView& text) |
| 25 | { |
| 26 | const int32 sizeWithoutNull = text.Length() * sizeof(Char); |
| 27 | const HGLOBAL hMem = GlobalAlloc(GMEM_MOVEABLE, sizeWithoutNull + sizeof(Char)); |
| 28 | |
| 29 | Char* pMem = static_cast<Char*>(GlobalLock(hMem)); |
| 30 | Platform::MemoryCopy(pMem, text.GetText(), sizeWithoutNull); |
| 31 | Platform::MemorySet(pMem + text.Length(), sizeof(Char), 0); |
| 32 | GlobalUnlock(hMem); |
| 33 | |
| 34 | OpenClipboard(nullptr); |
| 35 | EmptyClipboard(); |
| 36 | SetClipboardData(CF_UNICODETEXT, hMem); |
| 37 | CloseClipboard(); |
| 38 | } |
| 39 | |
| 40 | void WindowsClipboard::SetRawData(const Span<byte>& data) |
| 41 | { |