]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk1/clipbrd.h
Call SetDataSource() from OnEnter() so that querying/accessing the data is possible...
[wxWidgets.git] / include / wx / gtk1 / clipbrd.h
index 913379cac7631cd26f89afb2ce9434d1f7d83165..eb0240467841464186c1704195f099df4b6c5e2c 100644 (file)
@@ -1,5 +1,5 @@
 /////////////////////////////////////////////////////////////////////////////
 /////////////////////////////////////////////////////////////////////////////
-// Name:        clipboard.h
+// Name:        wx/gtk1/clipboard.h
 // Purpose:
 // Author:      Robert Roebling
 // Id:          $Id$
 // Purpose:
 // Author:      Robert Roebling
 // Id:          $Id$
 #ifndef __GTKCLIPBOARDH__
 #define __GTKCLIPBOARDH__
 
 #ifndef __GTKCLIPBOARDH__
 #define __GTKCLIPBOARDH__
 
-#ifdef __GNUG__
-#pragma interface
-#endif
-
-#include "wx/defs.h"
-
 #if wxUSE_CLIPBOARD
 
 #include "wx/object.h"
 #if wxUSE_CLIPBOARD
 
 #include "wx/object.h"
 #include "wx/control.h"
 #include "wx/module.h"
 
 #include "wx/control.h"
 #include "wx/module.h"
 
-//-----------------------------------------------------------------------------
-// classes
-//-----------------------------------------------------------------------------
-
-class wxClipboard;
-class wxClipboardModule;
-
-//-----------------------------------------------------------------------------
-// global data
-//-----------------------------------------------------------------------------
-
-extern wxClipboard* wxTheClipboard;
-
-//-----------------------------------------------------------------------------
+// ----------------------------------------------------------------------------
 // wxClipboard
 // wxClipboard
-//-----------------------------------------------------------------------------
+// ----------------------------------------------------------------------------
 
 
-class wxClipboard : public wxObject
+class WXDLLIMPEXP_CORE wxClipboard : public wxClipboardBase
 {
 {
-    DECLARE_DYNAMIC_CLASS(wxClipboard)
-
 public:
     wxClipboard();
 public:
     wxClipboard();
-    ~wxClipboard();
+    virtual ~wxClipboard();
 
     // open the clipboard before SetData() and GetData()
     virtual bool Open();
 
     // open the clipboard before SetData() and GetData()
     virtual bool Open();
@@ -56,6 +35,9 @@ public:
     // close the clipboard after SetData() and GetData()
     virtual void Close();
 
     // 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 );
 
     // set the clipboard data. all other formats will be deleted.
     virtual bool SetData( wxDataObject *data );
 
@@ -63,46 +45,33 @@ public:
     virtual bool AddData( wxDataObject *data );
 
     // ask if data in correct format is available
     virtual bool AddData( wxDataObject *data );
 
     // ask if data in correct format is available
-    virtual bool IsSupported( wxDataObject &data );
+    virtual bool IsSupported( const wxDataFormat& format );
 
     // fill data with data on the clipboard (if available)
 
     // fill data with data on the clipboard (if available)
-    virtual bool GetData( wxDataObject &data );
+    virtual bool GetData( wxDataObjectdata );
 
     // clears wxTheClipboard and the system's clipboard if possible
     virtual void Clear();
 
 
     // clears wxTheClipboard and the system's clipboard if possible
     virtual void Clear();
 
-    // implementation
-
+    // implementation from now on
     bool              m_open;
     bool              m_open;
-
     bool              m_ownsClipboard;
     bool              m_ownsPrimarySelection;
     bool              m_ownsClipboard;
     bool              m_ownsPrimarySelection;
+    wxDataObject     *m_data;
 
 
-    wxDataBroker     *m_dataBroker;
-    GtkWidget        *m_clipboardWidget;
+    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;
 
     bool              m_formatSupported;
     GdkAtom           m_targetRequested;
+    wxDataObject     *m_receivedData;
 
 
-    wxDataObject      *m_receivedData;
-};
-
-//-----------------------------------------------------------------------------
-// wxClipboardModule
-//-----------------------------------------------------------------------------
-
-class wxClipboardModule: public wxModule
-{
-  DECLARE_DYNAMIC_CLASS(wxClipboardModule)
-
-public:
-    wxClipboardModule() {}
-    bool OnInit();
-    void OnExit();
+private:
+    DECLARE_DYNAMIC_CLASS(wxClipboard)
 };
 
 #endif
 };
 
 #endif
-
    // wxUSE_CLIPBOARD
 
 #endif
    // wxUSE_CLIPBOARD
 
 #endif