X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3922ecc98e00774e7c4d3b2ab122d3bdcc246393..3e1512cdfecd2c531567e6603083d9c3968216c7:/include/wx/msw/ole/dataobj2.h diff --git a/include/wx/msw/ole/dataobj2.h b/include/wx/msw/ole/dataobj2.h index 5bb231f9f0..8389942302 100644 --- a/include/wx/msw/ole/dataobj2.h +++ b/include/wx/msw/ole/dataobj2.h @@ -7,7 +7,7 @@ // Created: 21.10.99 // RCS-ID: $Id$ // Copyright: (c) 1999 Vadim Zeitlin -// Licence: wxWindows license +// Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// #ifndef _WX_MSW_OLE_DATAOBJ2_H @@ -38,9 +38,20 @@ public: virtual bool GetDataHere(void *buf) const; virtual bool SetData(size_t len, const void *buf); + virtual size_t GetDataSize(const wxDataFormat& WXUNUSED(format)) const + { return GetDataSize(); } + virtual bool GetDataHere(const wxDataFormat& WXUNUSED(format), + void *buf) const + { return GetDataHere(buf); } + virtual bool SetData(const wxDataFormat& WXUNUSED(format), + size_t len, const void *buf) + { return SetData(len, buf); } + private: // the DIB data void /* BITMAPINFO */ *m_data; + + DECLARE_NO_COPY_CLASS(wxBitmapDataObject) }; // ---------------------------------------------------------------------------- @@ -62,6 +73,18 @@ public: virtual size_t GetDataSize() const; virtual bool GetDataHere(void *buf) const; virtual bool SetData(size_t len, const void *buf); + + virtual size_t GetDataSize(const wxDataFormat& WXUNUSED(format)) const + { return GetDataSize(); } + virtual bool GetDataHere(const wxDataFormat& WXUNUSED(format), + void *buf) const + { return GetDataHere(buf); } + virtual bool SetData(const wxDataFormat& WXUNUSED(format), + size_t len, const void *buf) + { return SetData(len, buf); } + +private: + DECLARE_NO_COPY_CLASS(wxBitmapDataObject2) }; // ---------------------------------------------------------------------------- @@ -71,8 +94,53 @@ public: class WXDLLEXPORT wxFileDataObject : public wxFileDataObjectBase { public: + wxFileDataObject() { } + // implement base class pure virtuals virtual bool SetData(size_t len, const void *buf); + virtual size_t GetDataSize() const; + virtual bool GetDataHere(void *pData) const; + virtual void AddFile(const wxString& file); + + virtual size_t GetDataSize(const wxDataFormat& WXUNUSED(format)) const + { return GetDataSize(); } + virtual bool GetDataHere(const wxDataFormat& WXUNUSED(format), + void *buf) const + { return GetDataHere(buf); } + virtual bool SetData(const wxDataFormat& WXUNUSED(format), + size_t len, const void *buf) + { return SetData(len, buf); } + +private: + DECLARE_NO_COPY_CLASS(wxFileDataObject) +}; + +// ---------------------------------------------------------------------------- +// wxURLDataObject: data object for URLs +// ---------------------------------------------------------------------------- + +class WXDLLEXPORT wxURLDataObject : public wxDataObjectComposite +{ +public: + // initialize with URL in ctor or use SetURL later + wxURLDataObject(const wxString& url = wxEmptyString); + + // return the URL as string + wxString GetURL() const; + + // Set a string as the URL in the data object + void SetURL(const wxString& url); + + // override to set m_textFormat + virtual bool SetData(const wxDataFormat& format, + size_t len, + const void *buf); + +private: + // last data object we got data in + wxDataObjectSimple *m_dataObjectLast; + + DECLARE_NO_COPY_CLASS(wxURLDataObject) }; #endif // _WX_MSW_OLE_DATAOBJ2_H