X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e1ee679c2e3f48bc4f2607e35033ed5505ed6665..1deef99727c57b21976be81a14312f001fededb4:/include/wx/motif/clipbrd.h diff --git a/include/wx/motif/clipbrd.h b/include/wx/motif/clipbrd.h index 6b675bc645..6c2a0f8747 100644 --- a/include/wx/motif/clipbrd.h +++ b/include/wx/motif/clipbrd.h @@ -1,9 +1,6 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: clipbrd.h +// Name: wx/motif/clipbrd.h // Purpose: Clipboard functionality. -// Note: this functionality is under review, and -// is derived from wxWindows 1.xx code. Please contact -// the wxWindows developers for further information. // Author: Julian Smart // Modified by: // Created: 17/09/98 @@ -15,36 +12,36 @@ #ifndef _WX_CLIPBRD_H_ #define _WX_CLIPBRD_H_ -#ifdef __GNUG__ -#pragma interface "clipbrd.h" -#endif - #if wxUSE_CLIPBOARD -#include "wx/dataobj.h" +class WXDLLIMPEXP_FWD_CORE wxDataObject; +struct wxDataIdToDataObject; + +#include "wx/list.h" -#include "wx/module.h" +WX_DECLARE_LIST(wxDataObject, wxDataObjectList); +WX_DECLARE_LIST(wxDataIdToDataObject, wxDataIdToDataObjectList); -bool WXDLLEXPORT wxOpenClipboard(); -bool WXDLLEXPORT wxClipboardOpen(); -bool WXDLLEXPORT wxCloseClipboard(); -bool WXDLLEXPORT wxEmptyClipboard(); -bool WXDLLEXPORT wxIsClipboardFormatAvailable(wxDataFormat dataFormat); -bool WXDLLEXPORT wxSetClipboardData(wxDataFormat dataFormat, wxObject *obj, int width = 0, int height = 0); -wxObject* WXDLLEXPORT wxGetClipboardData(wxDataFormat dataFormat, long *len = NULL); -wxDataFormat WXDLLEXPORT wxEnumClipboardFormats(wxDataFormat dataFormat); -wxDataFormat WXDLLEXPORT wxRegisterClipboardFormat(char *formatName); -bool WXDLLEXPORT wxGetClipboardFormatName(wxDataFormat dataFormat, char *formatName, int maxCount); +WXDLLIMPEXP_CORE bool wxOpenClipboard(); +WXDLLIMPEXP_CORE bool wxClipboardOpen(); +WXDLLIMPEXP_CORE bool wxCloseClipboard(); +WXDLLIMPEXP_CORE bool wxEmptyClipboard(); +WXDLLIMPEXP_CORE bool wxIsClipboardFormatAvailable(wxDataFormat dataFormat); +WXDLLIMPEXP_CORE bool wxSetClipboardData(wxDataFormat dataFormat, wxObject *obj, int width = 0, int height = 0); +WXDLLIMPEXP_CORE wxObject* wxGetClipboardData(wxDataFormat dataFormat, long *len = NULL); +WXDLLIMPEXP_CORE wxDataFormat wxEnumClipboardFormats(wxDataFormat dataFormat); +WXDLLIMPEXP_CORE wxDataFormat wxRegisterClipboardFormat(char *formatName); +WXDLLIMPEXP_CORE bool wxGetClipboardFormatName(wxDataFormat dataFormat, char *formatName, int maxCount); //----------------------------------------------------------------------------- // wxClipboard //----------------------------------------------------------------------------- -class wxClipboard : public wxClipboardBase +class WXDLLIMPEXP_CORE wxClipboard : public wxClipboardBase { public: wxClipboard(); - ~wxClipboard(); + virtual ~wxClipboard(); // open the clipboard before SetData() and GetData() virtual bool Open(); @@ -52,33 +49,33 @@ public: // close the clipboard after SetData() and GetData() virtual void Close(); - // can be called several times + // opened? + virtual bool IsOpened() const { return m_open; } + + // replaces the data on the clipboard with data virtual bool SetData( wxDataObject *data ); + // adds data to the clipboard + virtual bool AddData( wxDataObject *data ); + // format available on the clipboard ? - // supply ID if private format, the same as wxPrivateDataObject::SetId() - virtual bool IsSupported( wxDataFormat format ); + virtual bool IsSupported( const wxDataFormat& format ); // fill data with data on the clipboard (if available) - virtual bool GetData( wxDataObject *data ); + virtual bool GetData( wxDataObject& data ); // clears wxTheClipboard and the system's clipboard if possible virtual void Clear(); // implementation from now on - bool m_open; - wxList m_data; - bool m_usePrimary; + wxDataObjectList m_data; + wxDataIdToDataObjectList m_idToObject; private: DECLARE_DYNAMIC_CLASS(wxClipboard) }; -/* The clipboard */ -WXDLLEXPORT_DATA(extern wxClipboard*) wxTheClipboard; - #endif // wxUSE_CLIPBOARD -#endif - // _WX_CLIPBRD_H_ +#endif // _WX_CLIPBRD_H_