| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135 | 
							- /////////////////////////////////////////////////////////////////////////////
 
- // Name:        wx/gtk/clipbrd.h
 
- // Purpose:     wxClipboard for wxGTK
 
- // Author:      Robert Roebling, Vadim Zeitlin
 
- // Copyright:   (c) 1998 Robert Roebling
 
- //              (c) 2007 Vadim Zeitlin
 
- // Licence:     wxWindows licence
 
- /////////////////////////////////////////////////////////////////////////////
 
- #ifndef _WX_GTK_CLIPBOARD_H_
 
- #define _WX_GTK_CLIPBOARD_H_
 
- // ----------------------------------------------------------------------------
 
- // wxClipboard
 
- // ----------------------------------------------------------------------------
 
- #include "wx/weakref.h"
 
- class WXDLLIMPEXP_CORE wxClipboard : public wxClipboardBase
 
- {
 
- public:
 
-     // there are several clipboards in X11 (and in GDK)
 
-     enum Kind
 
-     {
 
-         Primary,
 
-         Clipboard
 
-     };
 
-     wxClipboard();
 
-     virtual ~wxClipboard();
 
-     // open the clipboard before SetData() and GetData()
 
-     virtual bool Open();
 
-     // close the clipboard after SetData() and GetData()
 
-     virtual void Close();
 
-     // 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 );
 
-     // add to the clipboard data.
 
-     virtual bool AddData( wxDataObject *data );
 
-     // ask if data in correct format is available
 
-     virtual bool IsSupported( const wxDataFormat& format );
 
-     // ask if data in correct format is available
 
-     virtual bool IsSupportedAsync( wxEvtHandler *sink );
 
-     // 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
 
-     // --------------------------
 
-     // get our clipboard item (depending on m_usePrimary value)
 
-     GdkAtom GTKGetClipboardAtom() const;
 
-     // get the data object currently being requested
 
-     wxDataObject *GTKGetDataObject( GdkAtom atom );
 
-     // clear the data for the given clipboard kind
 
-     void GTKClearData(Kind kind);
 
-     // called when selection data is received
 
-     void GTKOnSelectionReceived(const GtkSelectionData& sel);
 
-     // called when available target information is received
 
-     bool GTKOnTargetReceived(const wxDataFormat& format);
 
- private:
 
-     // the data object for the specific selection
 
-     wxDataObject *& Data(Kind kind)
 
-     {
 
-         return kind == Primary ? m_dataPrimary : m_dataClipboard;
 
-     }
 
-     // the data object we're currently using
 
-     wxDataObject *& Data()
 
-     {
 
-         return Data(m_usePrimary ? Primary : Clipboard);
 
-     }
 
-     // set or unset selection ownership
 
-     bool SetSelectionOwner(bool set = true);
 
-     // add atom to the list of supported targets
 
-     void AddSupportedTarget(GdkAtom atom);
 
-     // check if the given format is supported
 
-     bool DoIsSupported(const wxDataFormat& format);
 
-     // both of these pointers can be non-NULL simultaneously but we only use
 
-     // one of them at any moment depending on m_usePrimary value, use Data()
 
-     // (from inside) or GTKGetDataObject() (from outside) accessors
 
-     wxDataObject *m_dataPrimary,
 
-                  *m_dataClipboard;
 
-     // this is used to temporarily hold the object passed to our GetData() so
 
-     // that GTK callbacks could access it
 
-     wxDataObject *m_receivedData;
 
-     // used to pass information about the format we need from DoIsSupported()
 
-     // to GTKOnTargetReceived()
 
-     GdkAtom m_targetRequested;
 
-     GtkWidget *m_clipboardWidget;  // for getting and offering data
 
-     GtkWidget *m_targetsWidget;    // for getting list of supported formats
 
-     // ID of the connection to "selection_get" signal, initially 0.
 
-     unsigned long m_idSelectionGetHandler;
 
-     bool m_open;
 
-     bool m_formatSupported;
 
- public:
 
-     // async stuff
 
-     wxEvtHandlerRef    m_sink;
 
- private:
 
-     GtkWidget         *m_targetsWidgetAsync;  // for getting list of supported formats
 
-     DECLARE_DYNAMIC_CLASS(wxClipboard)
 
- };
 
- #endif // _WX_GTK_CLIPBOARD_H_
 
 
  |