+ 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)