+            len--;
+        }
+
+        m_url = wxString::FromUTF8(src, len);
+
+        return true;
+    }
+
+    // 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;
+};
+
+wxURLDataObject::wxURLDataObject(const wxString& url) :
+    m_dobjURIList(new wxTextURIListDataObject(url)),
+    m_dobjText(new wxTextDataObject(url))