#include "wx/mstream.h"
#include "wx/uri.h"
-#include <gdk/gdk.h>
+#include "wx/gtk/private.h"
//-------------------------------------------------------------------------
// global data
wxString wxDataFormat::GetId() const
{
- gchar* atom_name = gdk_atom_name( m_format );
- wxString ret = wxString::FromAscii( atom_name );
- g_free(atom_name);
- return ret;
+ wxGtkString atom_name(gdk_atom_name(m_format));
+ return wxString::FromAscii(atom_name);
}
void wxDataFormat::SetId( NativeFormat format )
lenPrefix += 2;
}
- AddFile(wxURI::Unescape(filename.c_str() + lenPrefix));
+ // It would probably be nicer to use a GTK or Glib
+ // function to unescape the 8-bit strings pointed to
+ // by buf, but this does the same in wx code.
+ wxString filename_unicode = wxURI::Unescape(filename.c_str() + lenPrefix);
+ wxCharBuffer filename_8bit = wxConvISO8859_1.cWX2MB( filename_unicode );
+ filename_unicode = wxConvFileName->cMB2WX( filename_8bit );
+ AddFile( filename_unicode );
filename.Empty();
}
else if ( !filename.empty() )
}
else
{
+ // The string is in ISO-8859-1 according to XDND spec
filename += *p;
}
}