]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk/clipbrd.h
Don't define __STRICT_ANSI__, we should build both with and without it.
[wxWidgets.git] / include / wx / gtk / clipbrd.h
index 04f26042eb3c1af0f6acdeb98dd4cc675dc890f8..28d84df8152445dba2dd47444de308a2b5b743d3 100644 (file)
@@ -1,8 +1,7 @@
 /////////////////////////////////////////////////////////////////////////////
-// Name:        wx/gtk/clipboard.h
+// Name:        wx/gtk/clipbrd.h
 // Purpose:     wxClipboard for wxGTK
 // Author:      Robert Roebling, Vadim Zeitlin
-// Id:          $Id$
 // Copyright:   (c) 1998 Robert Roebling
 //              (c) 2007 Vadim Zeitlin
 // Licence:     wxWindows licence
@@ -15,6 +14,8 @@
 // wxClipboard
 // ----------------------------------------------------------------------------
 
+#include "wx/weakref.h"
+
 class WXDLLIMPEXP_CORE wxClipboard : public wxClipboardBase
 {
 public:
@@ -46,6 +47,9 @@ public:
     // 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 );
 
@@ -60,8 +64,8 @@ public:
     // get our clipboard item (depending on m_usePrimary value)
     GdkAtom GTKGetClipboardAtom() const;
 
-    // get the data object currently being used
-    wxDataObject *GTKGetDataObject() { return Data(); }
+    // get the data object currently being requested
+    wxDataObject *GTKGetDataObject( GdkAtom atom );
 
     // clear the data for the given clipboard kind
     void GTKClearData(Kind kind);
@@ -113,9 +117,17 @@ private:
     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)
 };