+ const char* const src = static_cast<const char*>(buf);
+
+ // The string might be "\r\n"-terminated but this is not necessarily
+ // the case (e.g. when dragging an URL from Firefox, it isn't).
+ if ( len > 1 && src[len - 1] == '\n' )
+ {
+ if ( len > 2 && src[len - 2] == '\r' )
+ len--;
+
+ 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);