X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/e5d6aa2208e2cede142bd2cf703a75cbdff5df92..cbeda384e51acb82e13994cb67ac1714669cae10:/include/wx/gtk/dataobj2.h?ds=sidebyside diff --git a/include/wx/gtk/dataobj2.h b/include/wx/gtk/dataobj2.h index fee8e27832..b820f1c22c 100644 --- a/include/wx/gtk/dataobj2.h +++ b/include/wx/gtk/dataobj2.h @@ -5,21 +5,17 @@ // Created: 19.10.99 (extracted from gtk/dataobj.h) // RCS-ID: $Id$ // Copyright: (c) 1998, 1999 Vadim Zeitlin, Robert Roebling -// Licence: wxWindows license +// Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// #ifndef _WX_GTK_DATAOBJ2_H_ #define _WX_GTK_DATAOBJ2_H_ -#ifdef __GNUG__ - #pragma interface "dataobj.h" -#endif - // ---------------------------------------------------------------------------- // wxBitmapDataObject is a specialization of wxDataObject for bitmaps // ---------------------------------------------------------------------------- -class wxBitmapDataObject : public wxBitmapDataObjectBase +class WXDLLIMPEXP_CORE wxBitmapDataObject : public wxBitmapDataObjectBase { public: // ctors @@ -27,7 +23,7 @@ public: wxBitmapDataObject(const wxBitmap& bitmap); // destr - ~wxBitmapDataObject(); + virtual ~wxBitmapDataObject(); // override base class virtual to update PNG data too virtual void SetBitmap(const wxBitmap& bitmap); @@ -38,9 +34,22 @@ public: virtual size_t GetDataSize() const { return m_pngSize; } virtual bool GetDataHere(void *buf) const; virtual bool SetData(size_t len, const void *buf); + // Must provide overloads to avoid hiding them (and warnings about it) + virtual size_t GetDataSize(const wxDataFormat&) const + { + return GetDataSize(); + } + virtual bool GetDataHere(const wxDataFormat&, void *buf) const + { + return GetDataHere(buf); + } + virtual bool SetData(const wxDataFormat&, size_t len, const void *buf) + { + return SetData(len, buf); + } protected: - void Init() { m_pngData = (void *)NULL; m_pngSize = 0; } + void Init() { m_pngData = NULL; m_pngSize = 0; } void Clear() { free(m_pngData); } void ClearAll() { Clear(); Init(); } @@ -54,7 +63,7 @@ protected: // wxFileDataObject is a specialization of wxDataObject for file names // ---------------------------------------------------------------------------- -class wxFileDataObject : public wxFileDataObjectBase +class WXDLLIMPEXP_CORE wxFileDataObject : public wxFileDataObjectBase { public: // implement base class pure virtuals @@ -65,7 +74,55 @@ public: virtual size_t GetDataSize() const; virtual bool GetDataHere(void *buf) const; virtual bool SetData(size_t len, const void *buf); + // Must provide overloads to avoid hiding them (and warnings about it) + virtual size_t GetDataSize(const wxDataFormat&) const + { + return GetDataSize(); + } + virtual bool GetDataHere(const wxDataFormat&, void *buf) const + { + return GetDataHere(buf); + } + virtual bool SetData(const wxDataFormat&, size_t len, const void *buf) + { + return SetData(len, buf); + } }; +// ---------------------------------------------------------------------------- +// wxURLDataObject is a specialization of wxDataObject for URLs +// ---------------------------------------------------------------------------- + +class WXDLLIMPEXP_CORE wxURLDataObject : public wxDataObjectSimple +{ +public: + wxURLDataObject(const wxString& url = wxEmptyString); + + wxString GetURL() const { return m_url; } + void SetURL(const wxString& url) { m_url = url; } + + virtual size_t GetDataSize() const; + virtual bool GetDataHere(void *buf) const; + virtual bool SetData(size_t len, const void *buf); + + // Must provide overloads to avoid hiding them (and warnings about it) + virtual size_t GetDataSize(const wxDataFormat&) const + { + return GetDataSize(); + } + virtual bool GetDataHere(const wxDataFormat&, void *buf) const + { + return GetDataHere(buf); + } + virtual bool SetData(const wxDataFormat&, size_t len, const void *buf) + { + return SetData(len, buf); + } + +private: + wxString m_url; +}; + + #endif // _WX_GTK_DATAOBJ2_H_