- wxString str = (const char*)data->data;
- printf( "Received %s\n.", WXSTRINGCAST str );
+ /* negative data length and non 8-bit data format
+ qualifies for junk */
+ gtk_drag_finish (context, FALSE, FALSE, time);
+ }
+ else
+ {
+ wxASSERT_MSG( data->target == data_object->GetFormat().GetAtom(), "DnD GetData target mismatch." );
+
+ if (data_object->GetFormat().GetType() == wxDF_TEXT)
+ {
+ wxTextDataObject *text_object = (wxTextDataObject*)data_object;
+ text_object->SetText( (const char*)data->data );
+ } else
+
+ if (data_object->GetFormat().GetType() == wxDF_FILENAME)
+ {
+ } else
+
+ if (data_object->GetFormat().GetType() == wxDF_PRIVATE)
+ {
+ wxPrivateDataObject *priv_object = (wxPrivateDataObject*)data_object;
+ priv_object->SetData( (const char*)data->data, (size_t)data->length );
+ }
+
+ /* tell wxDropTarget that data transfer was successfull */
+ drop_target->m_dataRetrieveSuccess = TRUE;
+
+ /* tell GTK that data transfer was successfull */