//-------------------------------------------------------------------------
GdkAtom g_textAtom = 0;
+GdkAtom g_altTextAtom = 0;
GdkAtom g_pngAtom = 0;
GdkAtom g_fileAtom = 0;
{
PrepareFormats();
- if (type == wxDF_UNICODETEXT)
- type = wxDF_TEXT;
-
m_type = type;
- if (m_type == wxDF_TEXT)
+#if wxUSE_UNICODE
+ if (m_type == wxDF_UNICODETEXT)
m_format = g_textAtom;
+ else if (m_type == wxDF_TEXT)
+ m_format = g_altTextAtom;
+#else
+ if (m_type == wxDF_TEXT || m_type == wxDF_UNICODETEXT)
+ m_format = g_textAtom;
+#endif
else
if (m_type == wxDF_BITMAP)
m_format = g_pngAtom;
m_format = format;
if (m_format == g_textAtom)
+#if wxUSE_UNICODE
+ m_type = wxDF_UNICODETEXT;
+#else
+ m_type = wxDF_TEXT;
+#endif
+ else
+ if (m_format == g_altTextAtom)
m_type = wxDF_TEXT;
else
if (m_format == g_pngAtom)
if (!g_textAtom)
#if wxUSE_UNICODE
g_textAtom = gdk_atom_intern( "UTF8_STRING", FALSE );
+ g_altTextAtom = gdk_atom_intern( "STRING", FALSE );
#else
g_textAtom = gdk_atom_intern( "STRING" /* "text/plain" */, FALSE );
#endif
}
}
+// ----------------------------------------------------------------------------
+// wxTextDataObject
+// ----------------------------------------------------------------------------
+
+#if defined(__WXGTK20__) && wxUSE_UNICODE
+void wxTextDataObject::GetAllFormats(wxDataFormat *formats, wxDataObjectBase::Direction dir) const
+{
+ *formats++ = GetPreferredFormat();
+ *formats = g_altTextAtom;
+}
+#endif
+
// ----------------------------------------------------------------------------
// wxFileDataObject
// ----------------------------------------------------------------------------