On 02/23/2012 02:49 PM, Gilles DOFFE wrote: > Hello, > > Below a simple application with a GtkButton and a GtkEntry. > Two callbacks associated to this widgets following this rules : > 1) When I click on the GtkButton, it should display the GtkEntry pointer > value. > 2) When I focus on the GtkEntry, it should display the GtkButton pointer > value. > > Case 1) works perfectly but case 2) always give a different value for the > GtkButton pointer ?! > > Did i miss something ?
That the signature for focus-in-event isn't the same[1], and that second parameter you use in your printf is a pointer to the GdkEvent, not your user_data (Also, this callback should return a gboolean value). -j [1] http://developer.gnome.org/gtk/stable/GtkWidget.html#GtkWidget-focus-in-event > > Thanks, > Gilles > > #include <gtk/gtk.h> > > void > onEntryFocusIn(GtkWidget *entry, gpointer pData) > { > printf("pData = %p\n", (GtkWidget *)pData); > } > > int main(int argc, char **argv) > { > GtkWidget *pWindow = NULL; > GtkWidget *pButton = NULL; > GtkWidget *pEntry = NULL; > GtkWidget *pHbx = NULL; > > gtk_init(NULL, NULL); > > pWindow = gtk_window_new(GTK_WINDOW_TOPLEVEL); > pButton = gtk_button_new(); > pEntry = gtk_entry_new(); > pHbx = gtk_hbox_new(FALSE, FALSE); > > gtk_box_pack_start(GTK_BOX(pHbx), GTK_WIDGET(pButton), FALSE, FALSE, 0); > gtk_box_pack_start(GTK_BOX(pHbx), GTK_WIDGET(pEntry), FALSE, FALSE, 0); > > gtk_container_add(pWindow, pHbx); > > g_signal_connect(G_OBJECT(pWindow), "destroy", (GCallback) > gtk_main_quit, NULL); > > /* THIS WORKS : */ > g_signal_connect(G_OBJECT(pButton), "clicked", (GCallback) > onEntryFocusIn, (gpointer)pEntry); > > /* THIS DOES NOT WORK : */ > g_signal_connect(G_OBJECT(pEntry), "focus-in-event", (GCallback) > onEntryFocusIn, (gpointer)pButton); > > gtk_widget_show_all(pWindow); > > printf("pEntry = %p\n", pEntry); > printf("pButton = %p\n", pButton); > > gtk_main(); > } > _______________________________________________ > gtk-app-devel-list mailing list > gtk-app-devel-list@gnome.org > http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list _______________________________________________ gtk-app-devel-list mailing list gtk-app-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list