X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/83df96d63a52ebb08b9e32549dc255354b4a18d0..edc09871744140f16b2ef6b7abaa2289d7deb260:/include/wx/x11/clipbrd.h diff --git a/include/wx/x11/clipbrd.h b/include/wx/x11/clipbrd.h index 848bfe6565..48a7c70350 100644 --- a/include/wx/x11/clipbrd.h +++ b/include/wx/x11/clipbrd.h @@ -1,84 +1,76 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: clipbrd.h +// Name: wx/x11/clipbrd.h // Purpose: Clipboard functionality. -// Author: Julian Smart -// Modified by: +// Author: Robert Roebling // Created: 17/09/98 // RCS-ID: $Id$ -// Copyright: (c) Julian Smart +// Copyright: (c) Robert Roebling // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#ifndef _WX_CLIPBRD_H_ -#define _WX_CLIPBRD_H_ - -#ifdef __GNUG__ -#pragma interface "clipbrd.h" -#endif +#ifndef _WX_X11_CLIPBRD_H_ +#define _WX_X11_CLIPBRD_H_ #if wxUSE_CLIPBOARD +#include "wx/object.h" #include "wx/list.h" +#include "wx/dataobj.h" +#include "wx/control.h" +#include "wx/module.h" -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); - -//----------------------------------------------------------------------------- +// ---------------------------------------------------------------------------- // 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(); - + // close the clipboard after SetData() and GetData() virtual void Close(); - - // opened? - virtual bool IsOpened() const { return m_open; } - - // replaces the data on the clipboard with data + + // query whether the clipboard is opened + virtual bool IsOpened() const; + + // set the clipboard data. all other formats will be deleted. virtual bool SetData( wxDataObject *data ); - - // adds data to the clipboard + + // add to the clipboard data. virtual bool AddData( wxDataObject *data ); - - // format available on the clipboard ? + + // ask if data in correct format is available virtual bool IsSupported( const wxDataFormat& format ); - + // fill data with data on the clipboard (if available) virtual bool GetData( wxDataObject& data ); - + // clears wxTheClipboard and the system's clipboard if possible virtual void Clear(); - - virtual void UsePrimarySelection(bool primary = TRUE) - { m_usePrimary = primary; } - + // implementation from now on - bool m_open; - wxList m_data; - bool m_usePrimary; - + bool m_ownsClipboard; + bool m_ownsPrimarySelection; + wxDataObject *m_data; + + WXWindow m_clipboardWidget; /* for getting and offering data */ + WXWindow m_targetsWidget; /* for getting list of supported formats */ + bool m_waiting; /* querying data or formats is asynchronous */ + + bool m_formatSupported; + Atom m_targetRequested; + wxDataObject *m_receivedData; + private: DECLARE_DYNAMIC_CLASS(wxClipboard) }; #endif // wxUSE_CLIPBOARD -#endif -// _WX_CLIPBRD_H_ +#endif // _WX_X11_CLIPBRD_H_