1 /////////////////////////////////////////////////////////////////////////////
3 // Purpose: Clipboard functionality.
4 // Note: this functionality is under review, and
5 // is derived from wxWidgets 1.xx code. Please contact
6 // the wxWidgets developers for further information.
7 // Author: David Webster
11 // Copyright: (c) David Webster
12 // Licence: wxWindows licence
13 /////////////////////////////////////////////////////////////////////////////
15 #ifndef _WX_CLIPBRD_H_
16 #define _WX_CLIPBRD_H_
21 #include "wx/module.h"
22 #include "wx/dataobj.h" // for wxDataFormat
24 // These functions superceded by wxClipboard, but retained in order to
25 // implement wxClipboard, and for compatibility.
27 // open/close the clipboard
28 WXDLLIMPEXP_CORE
bool wxOpenClipboard();
29 WXDLLIMPEXP_CORE
bool wxIsClipboardOpened();
30 #define wxClipboardOpen wxIsClipboardOpened
31 WXDLLIMPEXP_CORE
bool wxCloseClipboard();
34 WXDLLIMPEXP_CORE
bool wxEmptyClipboard();
35 WXDLLIMPEXP_CORE
bool wxSetClipboardData(wxDataFormat dataFormat
,
37 int width
= 0, int height
= 0);
38 WXDLLIMPEXP_CORE
void* wxGetClipboardData(wxDataFormat dataFormat
,
42 WXDLLIMPEXP_CORE
bool wxIsClipboardFormatAvailable(wxDataFormat dataFormat
);
43 WXDLLIMPEXP_CORE wxDataFormat
wxEnumClipboardFormats(wxDataFormat dataFormat
);
44 WXDLLIMPEXP_CORE
int wxRegisterClipboardFormat(wxChar
*formatName
);
45 WXDLLIMPEXP_CORE
bool wxGetClipboardFormatName(wxDataFormat dataFormat
,
49 //-----------------------------------------------------------------------------
51 //-----------------------------------------------------------------------------
53 class WXDLLIMPEXP_FWD_CORE wxDataObject
;
54 class WXDLLIMPEXP_CORE wxClipboard
: public wxClipboardBase
56 DECLARE_DYNAMIC_CLASS(wxClipboard
)
60 virtual ~wxClipboard();
62 // open the clipboard before SetData() and GetData()
65 // close the clipboard after SetData() and GetData()
68 // query whether the clipboard is opened
69 virtual bool IsOpened() const;
71 // set the clipboard data. all other formats will be deleted.
72 virtual bool SetData( wxDataObject
*data
);
74 // add to the clipboard data.
75 virtual bool AddData( wxDataObject
*data
);
77 // ask if data in correct format is available
78 virtual bool IsSupported( const wxDataFormat
& format
);
80 // fill data with data on the clipboard (if available)
81 virtual bool GetData( wxDataObject
& data
);
83 // clears wxTheClipboard and the system's clipboard if possible
86 // flushes the clipboard: this means that the data which is currently on
87 // clipboard will stay available even after the application exits (possibly
88 // eating memory), otherwise the clipboard will be emptied on exit
95 #endif // wxUSE_CLIPBOARD
96 #endif // _WX_CLIPBRD_H_