X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/8b53e5a2261d192bce49d40f0019f52f73b1557a..700d08c1092bd08150d47b952c1e0d817a64d75f:/include/wx/gtk1/clipbrd.h?ds=inline diff --git a/include/wx/gtk1/clipbrd.h b/include/wx/gtk1/clipbrd.h index 5f7a92eead..eb02404678 100644 --- a/include/wx/gtk1/clipbrd.h +++ b/include/wx/gtk1/clipbrd.h @@ -1,104 +1,78 @@ ///////////////////////////////////////////////////////////////////////////// -// Name: clipboard.h +// Name: wx/gtk1/clipboard.h // Purpose: // Author: Robert Roebling // Id: $Id$ // Copyright: (c) 1998 Robert Roebling -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// #ifndef __GTKCLIPBOARDH__ #define __GTKCLIPBOARDH__ -#ifdef __GNUG__ -#pragma interface -#endif +#if wxUSE_CLIPBOARD -#include "wx/defs.h" #include "wx/object.h" #include "wx/list.h" #include "wx/dataobj.h" #include "wx/control.h" #include "wx/module.h" -//----------------------------------------------------------------------------- -// classes -//----------------------------------------------------------------------------- +// ---------------------------------------------------------------------------- +// wxClipboard +// ---------------------------------------------------------------------------- -class wxClipboard; -class wxClipboardModule; +class WXDLLIMPEXP_CORE wxClipboard : public wxClipboardBase +{ +public: + wxClipboard(); + virtual ~wxClipboard(); -//----------------------------------------------------------------------------- -// global data -//----------------------------------------------------------------------------- + // open the clipboard before SetData() and GetData() + virtual bool Open(); -extern wxClipboard* wxTheClipboard; + // close the clipboard after SetData() and GetData() + virtual void Close(); -//----------------------------------------------------------------------------- -// wxClipboard -//----------------------------------------------------------------------------- + // query whether the clipboard is opened + virtual bool IsOpened() const; -class wxClipboard: public wxObject -{ - DECLARE_DYNAMIC_CLASS(wxClipboard) + // set the clipboard data. all other formats will be deleted. + virtual bool SetData( wxDataObject *data ); -public: - - wxClipboard(); - ~wxClipboard(); - - // open the clipboard before SetData() and GetData() - virtual bool Open(); - - // close the clipboard after SetData() and GetData() - virtual void Close(); - - // can be called several times - virtual bool SetData( wxDataObject *data ); - - // format available on the clipboard ? - // supply ID if private format, the same as wxPrivateDataObject::SetId() - virtual bool IsSupportedFormat( wxDataFormat format, const wxString &id = "" ); - - // 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(); - - // implementation - - GdkAtom GetTargetAtom( wxDataFormat format, const wxString &id = "" ); - - bool m_open; - - wxList m_dataObjects; - char *m_sentString, - *m_receivedString; - void *m_receivedTargets; - GtkWidget *m_clipboardWidget; - - bool m_formatSupported; - GdkAtom m_targetRequested; - - wxDataObject *m_receivedData; -}; + // add to the clipboard data. + virtual bool AddData( wxDataObject *data ); -//----------------------------------------------------------------------------- -// wxClipboardModule -//----------------------------------------------------------------------------- + // ask if data in correct format is available + virtual bool IsSupported( const wxDataFormat& format ); -class wxClipboardModule: public wxModule -{ - DECLARE_DYNAMIC_CLASS(wxClipboardModule) - -public: - wxClipboardModule() {} - bool OnInit(); - void OnExit(); + // 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(); + + // implementation from now on + bool m_open; + bool m_ownsClipboard; + bool m_ownsPrimarySelection; + wxDataObject *m_data; + + GtkWidget *m_clipboardWidget; /* for getting and offering data */ + GtkWidget *m_targetsWidget; /* for getting list of supported formats */ + bool m_waiting; /* querying data or formats is asynchronous */ + + bool m_formatSupported; + GdkAtom m_targetRequested; + wxDataObject *m_receivedData; + +private: + DECLARE_DYNAMIC_CLASS(wxClipboard) }; +#endif + // wxUSE_CLIPBOARD #endif // __GTKCLIPBOARDH__