From 851d27fff121f6cb7a7271329212bd62f605540a Mon Sep 17 00:00:00 2001 From: Gilbert Ramirez Date: Mon, 21 Jun 1999 19:04:35 +0000 Subject: Found some erroneous usages of gtk_signal_connect_object. I always wondered why I had to swap fields (data = w) in some of the callback functions when I added support for gtk+-1.1. Because of the use of gtk_signal_connect_object, the wrong value was being sent to the callback function. We were just lucky that with gtk+-1.0 it worked. gtk_signal_connect_object is for use with callbacks that take one argument. gtk_signal_connect is for use with callbacks that take two arguments. svn path=/trunk/; revision=324 --- capture.c | 33 ++++++++++++++------------------- column.c | 4 ++-- display.c | 29 +++++++++++------------------ prefs.c | 50 +++++++++++++++++++++----------------------------- print.c | 8 ++++---- 5 files changed, 52 insertions(+), 72 deletions(-) diff --git a/capture.c b/capture.c index 9d503083c8..f60892a549 100644 --- a/capture.c +++ b/capture.c @@ -1,7 +1,7 @@ /* capture.c * Routines for packet capture windows * - * $Id: capture.c,v 1.27 1999/06/19 01:14:48 guy Exp $ + * $Id: capture.c,v 1.28 1999/06/21 19:04:34 gram Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs @@ -265,7 +265,7 @@ capture_prep_cb(GtkWidget *w, gpointer d) { gtk_widget_show(bbox); ok_bt = gtk_button_new_with_label ("OK"); - gtk_signal_connect_object(GTK_OBJECT(ok_bt), "clicked", + gtk_signal_connect(GTK_OBJECT(ok_bt), "clicked", GTK_SIGNAL_FUNC(capture_prep_ok_cb), GTK_OBJECT(cap_open_w)); GTK_WIDGET_SET_FLAGS(ok_bt, GTK_CAN_DEFAULT); gtk_box_pack_start (GTK_BOX (bbox), ok_bt, TRUE, TRUE, 0); @@ -273,7 +273,7 @@ capture_prep_cb(GtkWidget *w, gpointer d) { gtk_widget_show(ok_bt); cancel_bt = gtk_button_new_with_label ("Cancel"); - gtk_signal_connect_object(GTK_OBJECT(cancel_bt), "clicked", + gtk_signal_connect(GTK_OBJECT(cancel_bt), "clicked", GTK_SIGNAL_FUNC(capture_prep_close_cb), GTK_OBJECT(cap_open_w)); GTK_WIDGET_SET_FLAGS(cancel_bt, GTK_CAN_DEFAULT); gtk_box_pack_start (GTK_BOX (bbox), cancel_bt, TRUE, TRUE, 0); @@ -289,17 +289,15 @@ capture_prep_cb(GtkWidget *w, gpointer d) { } static void -capture_prep_ok_cb(GtkWidget *w, gpointer data) { +capture_prep_ok_cb(GtkWidget *ok_bt, gpointer parent_w) { GtkWidget *if_cb, *filter_te, *count_cb, *snap_sb; gchar *filter_text; -#ifdef GTK_HAVE_FEATURES_1_1_0 - data = w; -#endif - if_cb = (GtkWidget *) gtk_object_get_data(GTK_OBJECT(data), E_CAP_IFACE_KEY); - filter_te = (GtkWidget *) gtk_object_get_data(GTK_OBJECT(data), E_CAP_FILT_KEY); - count_cb = (GtkWidget *) gtk_object_get_data(GTK_OBJECT(data), E_CAP_COUNT_KEY); - snap_sb = (GtkWidget *) gtk_object_get_data(GTK_OBJECT(data), E_CAP_SNAP_KEY); + + if_cb = (GtkWidget *) gtk_object_get_data(GTK_OBJECT(parent_w), E_CAP_IFACE_KEY); + filter_te = (GtkWidget *) gtk_object_get_data(GTK_OBJECT(parent_w), E_CAP_FILT_KEY); + count_cb = (GtkWidget *) gtk_object_get_data(GTK_OBJECT(parent_w), E_CAP_COUNT_KEY); + snap_sb = (GtkWidget *) gtk_object_get_data(GTK_OBJECT(parent_w), E_CAP_SNAP_KEY); if (cf.iface) g_free(cf.iface); cf.iface = @@ -317,7 +315,7 @@ capture_prep_ok_cb(GtkWidget *w, gpointer data) { else if (cf.snap < MIN_PACKET_SIZE) cf.snap = MIN_PACKET_SIZE; - gtk_widget_destroy(GTK_WIDGET(data)); + gtk_widget_destroy(GTK_WIDGET(parent_w)); /* Choose a random name for the capture buffer */ if (cf.save_file && !cf.user_saved) { @@ -392,13 +390,10 @@ capture_prep_ok_cb(GtkWidget *w, gpointer data) { } static void -capture_prep_close_cb(GtkWidget *w, gpointer win) { - -#ifdef GTK_HAVE_FEATURES_1_1_0 - win = w; -#endif - gtk_grab_remove(GTK_WIDGET(win)); - gtk_widget_destroy(GTK_WIDGET(win)); +capture_prep_close_cb(GtkWidget *close_bt, gpointer parent_w) +{ + gtk_grab_remove(GTK_WIDGET(parent_w)); + gtk_widget_destroy(GTK_WIDGET(parent_w)); } void diff --git a/column.c b/column.c index b4bd10a753..4ea29e98ce 100644 --- a/column.c +++ b/column.c @@ -1,7 +1,7 @@ /* column.c * Routines for handling column preferences * - * $Id: column.c,v 1.13 1999/06/19 03:14:30 guy Exp $ + * $Id: column.c,v 1.14 1999/06/21 19:04:34 gram Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs @@ -429,7 +429,7 @@ column_prefs_show() { for (i = 0; i < NUM_COL_FMTS; i++) { mitem = gtk_menu_item_new_with_label(col_format_desc(i)); gtk_menu_append(GTK_MENU(menu), mitem); - gtk_signal_connect_object( GTK_OBJECT(mitem), "activate", + gtk_signal_connect( GTK_OBJECT(mitem), "activate", GTK_SIGNAL_FUNC(column_set_fmt_cb), (gpointer) i); gtk_widget_show(mitem); } diff --git a/display.c b/display.c index 49e0fa0576..9266660250 100644 --- a/display.c +++ b/display.c @@ -1,7 +1,7 @@ /* display.c * Routines for packet display windows * - * $Id: display.c,v 1.3 1999/06/19 03:14:29 guy Exp $ + * $Id: display.c,v 1.4 1999/06/21 19:04:34 gram Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs @@ -124,7 +124,7 @@ display_opt_cb(GtkWidget *w, gpointer d) { gtk_widget_show(bbox); ok_bt = gtk_button_new_with_label ("OK"); - gtk_signal_connect_object(GTK_OBJECT(ok_bt), "clicked", + gtk_signal_connect(GTK_OBJECT(ok_bt), "clicked", GTK_SIGNAL_FUNC(display_opt_ok_cb), GTK_OBJECT(display_opt_w)); GTK_WIDGET_SET_FLAGS(ok_bt, GTK_CAN_DEFAULT); gtk_box_pack_start (GTK_BOX (bbox), ok_bt, TRUE, TRUE, 0); @@ -132,7 +132,7 @@ display_opt_cb(GtkWidget *w, gpointer d) { gtk_widget_show(ok_bt); cancel_bt = gtk_button_new_with_label ("Cancel"); - gtk_signal_connect_object(GTK_OBJECT(cancel_bt), "clicked", + gtk_signal_connect(GTK_OBJECT(cancel_bt), "clicked", GTK_SIGNAL_FUNC(display_opt_close_cb), GTK_OBJECT(display_opt_w)); GTK_WIDGET_SET_FLAGS(cancel_bt, GTK_CAN_DEFAULT); gtk_box_pack_start (GTK_BOX (bbox), cancel_bt, TRUE, TRUE, 0); @@ -142,39 +142,32 @@ display_opt_cb(GtkWidget *w, gpointer d) { } static void -display_opt_ok_cb(GtkWidget *w, gpointer data) { +display_opt_ok_cb(GtkWidget *ok_bt, gpointer parent_w) { GtkWidget *button; -#ifdef GTK_HAVE_FEATURES_1_1_0 - data = w; -#endif - - button = (GtkWidget *) gtk_object_get_data(GTK_OBJECT(data), + button = (GtkWidget *) gtk_object_get_data(GTK_OBJECT(parent_w), E_DISPLAY_TIME_ABS_KEY); if (GTK_TOGGLE_BUTTON (button)->active) timestamp_type = ABSOLUTE; - button = (GtkWidget *) gtk_object_get_data(GTK_OBJECT(data), + button = (GtkWidget *) gtk_object_get_data(GTK_OBJECT(parent_w), E_DISPLAY_TIME_REL_KEY); if (GTK_TOGGLE_BUTTON (button)->active) timestamp_type = RELATIVE; - button = (GtkWidget *) gtk_object_get_data(GTK_OBJECT(data), + button = (GtkWidget *) gtk_object_get_data(GTK_OBJECT(parent_w), E_DISPLAY_TIME_DELTA_KEY); if (GTK_TOGGLE_BUTTON (button)->active) timestamp_type = DELTA; - gtk_widget_destroy(GTK_WIDGET(data)); + gtk_widget_destroy(GTK_WIDGET(parent_w)); redisplay_packets(&cf); } static void -display_opt_close_cb(GtkWidget *w, gpointer win) { +display_opt_close_cb(GtkWidget *close_bt, gpointer parent_w) { -#ifdef GTK_HAVE_FEATURES_1_1_0 - win = w; -#endif - gtk_grab_remove(GTK_WIDGET(win)); - gtk_widget_destroy(GTK_WIDGET(win)); + gtk_grab_remove(GTK_WIDGET(parent_w)); + gtk_widget_destroy(GTK_WIDGET(parent_w)); } diff --git a/prefs.c b/prefs.c index 45736e4dd2..5f9b3fc878 100644 --- a/prefs.c +++ b/prefs.c @@ -1,7 +1,7 @@ /* prefs.c * Routines for handling preferences * - * $Id: prefs.c,v 1.17 1999/06/12 07:04:35 guy Exp $ + * $Id: prefs.c,v 1.18 1999/06/21 19:04:35 gram Exp $ * * Ethereal - Network traffic analyzer * By Gerald Combs @@ -139,7 +139,7 @@ prefs_cb(GtkWidget *w, gpointer sp) { gtk_widget_show(bbox); ok_bt = gtk_button_new_with_label ("OK"); - gtk_signal_connect_object(GTK_OBJECT(ok_bt), "clicked", + gtk_signal_connect(GTK_OBJECT(ok_bt), "clicked", GTK_SIGNAL_FUNC(prefs_main_ok_cb), GTK_OBJECT(prefs_w)); GTK_WIDGET_SET_FLAGS(ok_bt, GTK_CAN_DEFAULT); gtk_box_pack_start (GTK_BOX (bbox), ok_bt, TRUE, TRUE, 0); @@ -147,14 +147,14 @@ prefs_cb(GtkWidget *w, gpointer sp) { gtk_widget_show(ok_bt); save_bt = gtk_button_new_with_label ("Save"); - gtk_signal_connect_object(GTK_OBJECT(save_bt), "clicked", + gtk_signal_connect(GTK_OBJECT(save_bt), "clicked", GTK_SIGNAL_FUNC(prefs_main_save_cb), GTK_OBJECT(prefs_w)); GTK_WIDGET_SET_FLAGS(save_bt, GTK_CAN_DEFAULT); gtk_box_pack_start (GTK_BOX (bbox), save_bt, TRUE, TRUE, 0); gtk_widget_show(save_bt); cancel_bt = gtk_button_new_with_label ("Cancel"); - gtk_signal_connect_object(GTK_OBJECT(cancel_bt), "clicked", + gtk_signal_connect(GTK_OBJECT(cancel_bt), "clicked", GTK_SIGNAL_FUNC(prefs_main_cancel_cb), GTK_OBJECT(prefs_w)); GTK_WIDGET_SET_FLAGS(cancel_bt, GTK_CAN_DEFAULT); gtk_box_pack_start (GTK_BOX (bbox), cancel_bt, TRUE, TRUE, 0); @@ -164,38 +164,30 @@ prefs_cb(GtkWidget *w, gpointer sp) { } void -prefs_main_ok_cb(GtkWidget *w, gpointer win) { - -#ifdef GTK_HAVE_FEATURES_1_1_0 - win = w; -#endif - printer_prefs_ok(gtk_object_get_data(GTK_OBJECT(win), E_PRINT_PAGE_KEY)); - filter_prefs_ok(gtk_object_get_data(GTK_OBJECT(win), E_FILTER_PAGE_KEY)); - column_prefs_ok(gtk_object_get_data(GTK_OBJECT(win), E_COLUMN_PAGE_KEY)); - gtk_widget_destroy(GTK_WIDGET(win)); +prefs_main_ok_cb(GtkWidget *ok_bt, gpointer parent_w) +{ + printer_prefs_ok(gtk_object_get_data(GTK_OBJECT(parent_w), E_PRINT_PAGE_KEY)); + filter_prefs_ok(gtk_object_get_data(GTK_OBJECT(parent_w), E_FILTER_PAGE_KEY)); + column_prefs_ok(gtk_object_get_data(GTK_OBJECT(parent_w), E_COLUMN_PAGE_KEY)); + gtk_widget_destroy(GTK_WIDGET(parent_w)); } void -prefs_main_save_cb(GtkWidget *w, gpointer win) { -#ifdef GTK_HAVE_FEATURES_1_1_0 - win = w; -#endif - printer_prefs_save(gtk_object_get_data(GTK_OBJECT(win), E_PRINT_PAGE_KEY)); - filter_prefs_save(gtk_object_get_data(GTK_OBJECT(win), E_FILTER_PAGE_KEY)); - column_prefs_save(gtk_object_get_data(GTK_OBJECT(win), E_COLUMN_PAGE_KEY)); +prefs_main_save_cb(GtkWidget *save_bt, gpointer parent_w) +{ + printer_prefs_save(gtk_object_get_data(GTK_OBJECT(parent_w), E_PRINT_PAGE_KEY)); + filter_prefs_save(gtk_object_get_data(GTK_OBJECT(parent_w), E_FILTER_PAGE_KEY)); + column_prefs_save(gtk_object_get_data(GTK_OBJECT(parent_w), E_COLUMN_PAGE_KEY)); write_prefs(); } void -prefs_main_cancel_cb(GtkWidget *w, gpointer win) { - -#ifdef GTK_HAVE_FEATURES_1_1_0 - win = w; -#endif - printer_prefs_cancel(gtk_object_get_data(GTK_OBJECT(win), E_PRINT_PAGE_KEY)); - filter_prefs_cancel(gtk_object_get_data(GTK_OBJECT(win), E_FILTER_PAGE_KEY)); - column_prefs_cancel(gtk_object_get_data(GTK_OBJECT(win), E_COLUMN_PAGE_KEY)); - gtk_widget_destroy(GTK_WIDGET(win)); +prefs_main_cancel_cb(GtkWidget *cancel_bt, gpointer parent_w) +{ + printer_prefs_cancel(gtk_object_get_data(GTK_OBJECT(parent_w), E_PRINT_PAGE_KEY)); + filter_prefs_cancel(gtk_object_get_data(GTK_OBJECT(parent_w), E_FILTER_PAGE_KEY)); + column_prefs_cancel(gtk_object_get_data(GTK_OBJECT(parent_w), E_COLUMN_PAGE_KEY)); + gtk_widget_destroy(GTK_WIDGET(parent_w)); } /* Parse through a list of comma-separated, quoted strings. Return a diff --git a/print.c b/print.c index 3fb1a64db2..d9b5d36c47 100644 --- a/print.c +++ b/print.c @@ -1,7 +1,7 @@ /* print.c * Routines for printing packet analysis trees. * - * $Id: print.c,v 1.9 1999/03/23 03:14:46 gram Exp $ + * $Id: print.c,v 1.10 1999/06/21 19:04:35 gram Exp $ * * Gilbert Ramirez * @@ -162,7 +162,7 @@ GtkWidget * printer_prefs_show() gtk_table_attach_defaults(GTK_TABLE(main_tb), file_te, 1, 2, 3, 4); gtk_widget_show(file_te); - gtk_signal_connect_object(GTK_OBJECT(file_bt), "clicked", + gtk_signal_connect(GTK_OBJECT(file_bt), "clicked", GTK_SIGNAL_FUNC(printer_opts_file_cb), GTK_OBJECT(file_te)); gtk_widget_show(main_vb); @@ -171,11 +171,11 @@ GtkWidget * printer_prefs_show() static void -printer_opts_file_cb(GtkWidget *w, gpointer te) { +printer_opts_file_cb(GtkWidget *file_bt, gpointer file_te) { GtkWidget *fs; fs = gtk_file_selection_new ("Ethereal: Print to a File"); - gtk_object_set_data(GTK_OBJECT(fs), PRINT_FILE_TE_KEY, te); + gtk_object_set_data(GTK_OBJECT(fs), PRINT_FILE_TE_KEY, file_te); gtk_signal_connect (GTK_OBJECT (GTK_FILE_SELECTION(fs)->ok_button), "clicked", (GtkSignalFunc) printer_opts_fs_ok_cb, fs); -- cgit v1.2.3