MCPcopy Create free account
hub / github.com/MaxBelkov/visualsyslog / setClipboard

Function setClipboard

sourcecommon/utils.cpp:1639–1677  ·  view source on GitHub ↗

---------------------------------------------------------------------------

Source from the content-addressed store, hash-verified

1637}
1638//---------------------------------------------------------------------------
1639bool setClipboard(AnsiString & lines){
1640 HGLOBAL handle;
1641 LPTSTR linesCopy;
1642 int lines_length = lines.Length();
1643
1644 if (!OpenClipboard(NULL))
1645 return false;
1646
1647 EmptyClipboard();
1648
1649 if((handle = GlobalAlloc(GMEM_MOVEABLE|GMEM_DDESHARE, lines_length + 1))==NULL)
1650 goto closeclip;
1651
1652 if((linesCopy = (LPTSTR)GlobalLock(handle))==NULL)
1653 goto freemem;
1654
1655 memcpy(linesCopy, lines.data(), lines_length);
1656 linesCopy[lines_length] = '\0';
1657
1658 GlobalUnlock(handle);
1659
1660 if (SetClipboardData(CF_TEXT, handle)==NULL)
1661 goto freemem;
1662
1663 if (SetClipboardData(CF_LOCALE, handle)==NULL)
1664 goto freemem;
1665
1666 CloseClipboard();
1667
1668 return true;
1669
1670freemem:
1671 GlobalFree(handle);
1672
1673closeclip:
1674 CloseClipboard();
1675
1676 return false;
1677}
1678//---------------------------------------------------------------------------
1679void __fastcall FindFiles(TStrings * p, String dir, String mask)
1680{

Callers 4

StringGridToClipboardFunction · 0.85
TreeToClipboardFunction · 0.85
StringsToClipboardFunction · 0.85
mCopyToClipboardClickMethod · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected