X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/865bb3251ecf83ddac350b734f4fed1d258e250b..700dbceb374774f5207a2daf2b7ea69e08bfd56f:/src/gtk/clipbrd.cpp diff --git a/src/gtk/clipbrd.cpp b/src/gtk/clipbrd.cpp index a8fc2c7ee0..496f09c3ee 100644 --- a/src/gtk/clipbrd.cpp +++ b/src/gtk/clipbrd.cpp @@ -7,10 +7,6 @@ // Licence: wxWindows licence ///////////////////////////////////////////////////////////////////////////// -#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA) -#pragma implementation "clipbrd.h" -#endif - // For compilers that support precompilation, includes "wx.h". #include "wx/wxprec.h" @@ -119,7 +115,7 @@ targets_selection_received( GtkWidget *WXUNUSED(widget), wxT("selection received for targets, format %s"), format.GetId().c_str() ); -// printf( "format %s requested %s\n", +// printf( "format %s requested %s\n", // gdk_atom_name( atoms[i] ), // gdk_atom_name( clipboard->m_targetRequested ) ); @@ -266,7 +262,7 @@ selection_handler( GtkWidget *WXUNUSED(widget), wxString::FromAscii(gdk_atom_name(selection_data->selection)).c_str() ); #endif - + if (!data->IsSupportedFormat( format )) return; int size = data->GetDataSize( format ); @@ -278,7 +274,6 @@ selection_handler( GtkWidget *WXUNUSED(widget), // Text data will be in UTF8 in Unicode mode. data->GetDataHere( selection_data->target, d ); -#ifdef __WXGTK20__ // NB: GTK+ requires special treatment of UTF8_STRING data, the text // would show as UTF-8 data interpreted as latin1 (?) in other // GTK+ apps if we used gtk_selection_data_set() @@ -287,17 +282,16 @@ selection_handler( GtkWidget *WXUNUSED(widget), gtk_selection_data_set_text( selection_data, (const gchar*)d, - size); + size-1 ); } else -#endif { gtk_selection_data_set( selection_data, GDK_SELECTION_TYPE_STRING, 8*sizeof(gchar), (unsigned char*) d, - size ); + size-1 ); } free(d); @@ -326,25 +320,19 @@ wxClipboard::wxClipboard() m_targetsWidget = gtk_window_new( GTK_WINDOW_POPUP ); gtk_widget_realize( m_targetsWidget ); - gtk_signal_connect( GTK_OBJECT(m_targetsWidget), - "selection_received", - GTK_SIGNAL_FUNC( targets_selection_received ), - (gpointer) this ); + g_signal_connect (m_targetsWidget, "selection_received", + G_CALLBACK (targets_selection_received), this); /* we use m_clipboardWidget to get and to offer data */ m_clipboardWidget = gtk_window_new( GTK_WINDOW_POPUP ); gtk_widget_realize( m_clipboardWidget ); - gtk_signal_connect( GTK_OBJECT(m_clipboardWidget), - "selection_received", - GTK_SIGNAL_FUNC( selection_received ), - (gpointer) this ); + g_signal_connect (m_clipboardWidget, "selection_received", + G_CALLBACK (selection_received), this); - gtk_signal_connect( GTK_OBJECT(m_clipboardWidget), - "selection_clear_event", - GTK_SIGNAL_FUNC( selection_clear_clip ), - (gpointer) NULL ); + g_signal_connect (m_clipboardWidget, "selection_clear_event", + G_CALLBACK (selection_clear_clip), NULL); if (!g_clipboardAtom) g_clipboardAtom = gdk_atom_intern( "CLIPBOARD", FALSE ); if (!g_targetsAtom) g_targetsAtom = gdk_atom_intern ("TARGETS", FALSE); @@ -454,9 +442,9 @@ bool wxClipboard::AddData( wxDataObject *data ) wxT("wxClipboard now supports atom %s"), array[i].GetId().c_str() ); -// printf( "added %s\n", +// printf( "added %s\n", // gdk_atom_name( array[i].GetFormatId() ) ); - + gtk_selection_add_target( GTK_WIDGET(m_clipboardWidget), clipboard, array[i], @@ -465,10 +453,8 @@ bool wxClipboard::AddData( wxDataObject *data ) delete[] array; - gtk_signal_connect( GTK_OBJECT(m_clipboardWidget), - "selection_get", - GTK_SIGNAL_FUNC(selection_handler), - (gpointer) NULL ); + g_signal_connect (m_clipboardWidget, "selection_get", + G_CALLBACK (selection_handler), NULL); #if wxUSE_THREADS /* disable GUI threads */