X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/0d2a2b601b1994333886dff8f53d82a714c4042f..eda276b09272496b7ec4e920e6344c5469f0d017:/include/wx/gtk/clipbrd.h?ds=sidebyside diff --git a/include/wx/gtk/clipbrd.h b/include/wx/gtk/clipbrd.h index 55a9e8f462..6f9083dde2 100644 --- a/include/wx/gtk/clipbrd.h +++ b/include/wx/gtk/clipbrd.h @@ -4,101 +4,68 @@ // Author: Robert Roebling // Id: $Id$ // Copyright: (c) 1998 Robert Roebling -// Licence: wxWindows licence +// Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// +#ifndef _WX_GTK_CLIPBOARD_H_ +#define _WX_GTK_CLIPBOARD_H_ -#ifndef __GTKCLIPBOARDH__ -#define __GTKCLIPBOARDH__ +// ---------------------------------------------------------------------------- +// wxClipboard +// ---------------------------------------------------------------------------- -#ifdef __GNUG__ -#pragma interface -#endif +class WXDLLIMPEXP_CORE wxClipboard : public wxClipboardBase +{ +public: + wxClipboard(); + virtual ~wxClipboard(); -#include "wx/defs.h" + // open the clipboard before SetData() and GetData() + virtual bool Open(); -#if wxUSE_CLIPBOARD + // close the clipboard after SetData() and GetData() + virtual void Close(); -#include "wx/object.h" -#include "wx/list.h" -#include "wx/dataobj.h" -#include "wx/control.h" -#include "wx/module.h" + // query whether the clipboard is opened + virtual bool IsOpened() const; -//----------------------------------------------------------------------------- -// classes -//----------------------------------------------------------------------------- + // set the clipboard data. all other formats will be deleted. + virtual bool SetData( wxDataObject *data ); -class wxClipboard; -class wxClipboardModule; + // add to the clipboard data. + virtual bool AddData( wxDataObject *data ); -//----------------------------------------------------------------------------- -// global data -//----------------------------------------------------------------------------- + // ask if data in correct format is available + virtual bool IsSupported( const wxDataFormat& format ); -extern wxClipboard* wxTheClipboard; + // fill data with data on the clipboard (if available) + virtual bool GetData( wxDataObject& data ); -//----------------------------------------------------------------------------- -// wxClipboard -//----------------------------------------------------------------------------- + // clears wxTheClipboard and the system's clipboard if possible + virtual void Clear(); -class wxClipboard: public wxObject -{ - DECLARE_DYNAMIC_CLASS(wxClipboard) + // If primary == TRUE, use primary selection in all further ops, + // primary == FALSE resets it. + virtual void UsePrimarySelection(bool primary = TRUE) + { m_usePrimary = primary; } + + // implementation from now on + bool m_open; + bool m_ownsClipboard; + bool m_ownsPrimarySelection; + wxDataObject *m_data; -public: - - wxClipboard(); - ~wxClipboard(); - - /* open the clipboard before SetData() and GetData() */ - virtual bool Open(); - - /* close the clipboard after SetData() and GetData() */ - virtual void Close(); - - /* set the clipboard data. the clipboard will delete the broker later */ - virtual bool SetData( wxDataBroker *data ); - - /* 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 */ - - bool m_open; - - bool m_ownsClipboard; - bool m_ownsPrimarySelection; - - wxDataBroker *m_dataBroker; - GtkWidget *m_clipboardWidget; - - bool m_formatSupported; - GdkAtom m_targetRequested; - - wxDataObject *m_receivedData; -}; + 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 */ -//----------------------------------------------------------------------------- -// wxClipboardModule -//----------------------------------------------------------------------------- + bool m_formatSupported; + GdkAtom m_targetRequested; + bool m_usePrimary; + wxDataObject *m_receivedData; -class wxClipboardModule: public wxModule -{ - DECLARE_DYNAMIC_CLASS(wxClipboardModule) - -public: - wxClipboardModule() {} - bool OnInit(); - void OnExit(); +private: + DECLARE_DYNAMIC_CLASS(wxClipboard) }; -#endif - - // wxUSE_CLIPBOARD - -#endif - // __GTKCLIPBOARDH__ +#endif // _WX_GTK_CLIPBOARD_H_