]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/gtk1/dnd.h
no message
[wxWidgets.git] / include / wx / gtk1 / dnd.h
index 937fe1aa896ddba3a793568d0b45aefeaaa1493f..bd392388ce4cd80965e5955d0884d55ddf6015ba 100644 (file)
 #endif
 
 #include "wx/defs.h"
+
+#if wxUSE_DRAG_AND_DROP
+
 #include "wx/object.h"
 #include "wx/string.h"
+#include "wx/dataobj.h"
 #include "wx/cursor.h"
 
 //-------------------------------------------------------------------------
 
 class wxWindow;
 
-class wxDataObject;
-class wxTextDataObject;
-class wxFileDataObject;
-
 class wxDropTarget;
 class wxTextDropTarget;
 class wxFileDropTarget;
 
 class wxDropSource;
 
-//-------------------------------------------------------------------------
-// wxDataObject
-//-------------------------------------------------------------------------
-
-class wxDataObject: public wxObject
-{
-public:
-
-  wxDataObject() {};
-  ~wxDataObject() {};
-
-  virtual wxDataFormat GetPreferredFormat() const = 0;
-  virtual bool IsSupportedFormat( wxDataFormat format ) const = 0;
-  virtual size_t GetDataSize() const = 0;
-  virtual void GetDataHere( void *data ) const = 0;
-
-};
-
-// ----------------------------------------------------------------------------
-// wxTextDataObject is a specialization of wxDataObject for text data
-// ----------------------------------------------------------------------------
-
-class wxTextDataObject : public wxDataObject
-{
-public:
-
-  wxTextDataObject() { }
-  wxTextDataObject(const wxString& strText) : m_strText(strText) { }
-  void Init(const wxString& strText) { m_strText = strText; }
-
-  virtual wxDataFormat GetPreferredFormat() const
-    { return wxDF_TEXT; }
-    
-  virtual bool IsSupportedFormat(wxDataFormat format) const
-    { return format == wxDF_TEXT; }
-
-  virtual size_t GetDataSize() const
-    { return m_strText.Len() + 1; } // +1 for trailing '\0'
-    
-  virtual void GetDataHere( void *data ) const
-    { memcpy(data, m_strText.c_str(), GetDataSize()); }
-
-private:
-  wxString  m_strText;
-  
-};
-
-// ----------------------------------------------------------------------------
-// wxFileDataObject is a specialization of wxDataObject for file names
-// ----------------------------------------------------------------------------
-
-class wxFileDataObject : public wxDataObject
-{
-public:
-
-  wxFileDataObject(void) { }
-  void AddFile( const wxString &file )
-    { m_files += file; m_files += '\0'; }
-
-  virtual wxDataFormat GetPreferredFormat() const
-    { return wxDF_FILENAME; }
-    
-  virtual bool IsSupportedFormat( wxDataFormat format ) const
-    { return format == wxDF_FILENAME; }
-    
-  virtual size_t GetDataSize() const
-    { return m_files.Len(); } // no trailing '\0'
-    
-  virtual void GetDataHere( void *data ) const
-    { memcpy(data, m_files.c_str(), GetDataSize()); }
-
-private:
-  wxString  m_files;
-  
-};
 //-------------------------------------------------------------------------
 // wxDropTarget
 //-------------------------------------------------------------------------
@@ -226,6 +151,10 @@ class wxDropSource: public wxObject
     wxCursor      m_goaheadCursor;
 };
 
+#endif
+
+   // wxUSE_DRAG_AND_DROP
+
 #endif  
        //__GTKDNDH__