changeset 4162:d3c8d2b40494

[gaim-migrate @ 4391] gtk_signal_connect() to g_signal_connect() Everything seems fine, and nothing should be broken. However, please let me know if anything strange happens. committer: Tailor Script <tailor@pidgin.im>
author Christian Hammond <chipx86@chipx86.com>
date Tue, 31 Dec 2002 19:32:38 +0000
parents c79961f48063
children 986c175a607c
files src/about.c src/aim.c src/away.c src/buddy.c src/buddy_chat.c src/conversation.c src/dialogs.c src/ft.c src/multi.c src/prefs.c src/prpl.c src/server.c src/util.c
diffstat 13 files changed, 487 insertions(+), 482 deletions(-) [+]
line wrap: on
line diff
--- a/src/about.c	Tue Dec 31 18:21:32 2002 +0000
+++ b/src/about.c	Tue Dec 31 19:32:38 2002 +0000
@@ -173,10 +173,10 @@
 		button = gaim_pixbuf_button_from_stock(_("Close"), GTK_STOCK_CLOSE, GAIM_BUTTON_HORIZONTAL);
 		gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
 
-		gtk_signal_connect_object(GTK_OBJECT(button), "clicked",
-					  GTK_SIGNAL_FUNC(destroy_about), GTK_OBJECT(about));
-		gtk_signal_connect(GTK_OBJECT(about), "destroy",
-					   GTK_SIGNAL_FUNC(destroy_about), GTK_OBJECT(about));
+		g_signal_connect_swapped(G_OBJECT(button), "clicked",
+								 G_CALLBACK(destroy_about), G_OBJECT(about));
+		g_signal_connect(G_OBJECT(about), "destroy",
+						 G_CALLBACK(destroy_about), G_OBJECT(about));
 		gtk_widget_show(button);
 
 		/* this makes the sizes not work. */
--- a/src/aim.c	Tue Dec 31 18:21:32 2002 +0000
+++ b/src/aim.c	Tue Dec 31 19:32:38 2002 +0000
@@ -284,8 +284,8 @@
 	gtk_widget_realize(mainwindow);
 	gdk_window_set_group(mainwindow->window, mainwindow->window);
 	gtk_container_set_border_width(GTK_CONTAINER(mainwindow), 5);
-	gtk_signal_connect(GTK_OBJECT(mainwindow), "delete_event", 
-					GTK_SIGNAL_FUNC(do_quit), mainwindow);
+	g_signal_connect(G_OBJECT(mainwindow), "delete_event",
+					 G_CALLBACK(do_quit), mainwindow);
 
 
 	icon = gaim_pixbuf(NULL, "gaim.png");
@@ -311,10 +311,10 @@
 	tmp = combo_user_names();
 	gtk_combo_set_popdown_strings(GTK_COMBO(name), tmp);
 	g_list_free(tmp);
-	gtk_signal_connect(GTK_OBJECT(GTK_COMBO(name)->entry), "activate",
-			   GTK_SIGNAL_FUNC(doenter), mainwindow);
-	gtk_signal_connect(GTK_OBJECT(GTK_COMBO(name)->entry), "changed",
-			   GTK_SIGNAL_FUNC(combo_changed), name);
+	g_signal_connect(G_OBJECT(GTK_COMBO(name)->entry), "activate",
+					 G_CALLBACK(doenter), mainwindow);
+	g_signal_connect(G_OBJECT(GTK_COMBO(name)->entry), "changed",
+					 G_CALLBACK(combo_changed), name);
 	gtk_box_pack_start(GTK_BOX(vbox2), name, FALSE, TRUE, 0);
 	gtk_box_pack_start(GTK_BOX(vbox), vbox2, FALSE, TRUE, 0);
 
@@ -327,7 +327,8 @@
 
 	pass = gtk_entry_new();
 	gtk_entry_set_visibility(GTK_ENTRY(pass), FALSE);
-	gtk_signal_connect(GTK_OBJECT(pass), "activate", GTK_SIGNAL_FUNC(doenter), mainwindow);
+	g_signal_connect(G_OBJECT(pass), "activate",
+					 G_CALLBACK(doenter), mainwindow);
 	gtk_box_pack_start(GTK_BOX(vbox2), pass, FALSE, TRUE, 0);
 	gtk_box_pack_start(GTK_BOX(vbox), vbox2, FALSE, TRUE, 0);
 
@@ -338,7 +339,8 @@
 	/* And now for the buttons */
 	button = gaim_pixbuf_button("Accounts", "accounts.png", GAIM_BUTTON_VERTICAL);
 	gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(account_editor), mainwindow);
+	g_signal_connect(G_OBJECT(button), "clicked",
+					 G_CALLBACK(account_editor), mainwindow);
 	gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
 
 #ifdef NO_MULTI
@@ -347,12 +349,14 @@
 
 	button = gaim_pixbuf_button("Settings", "preferences.png", GAIM_BUTTON_VERTICAL);
 	gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(show_prefs), mainwindow);
+	g_signal_connect(G_OBJECT(button), "clicked",
+					 G_CALLBACK(show_prefs), mainwindow);
 	gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
 
 	button = gaim_pixbuf_button("Sign On", "signon.png", GAIM_BUTTON_VERTICAL);
 	gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(dologin), mainwindow);
+	g_signal_connect(G_OBJECT(button), "clicked",
+					 G_CALLBACK(dologin), mainwindow);
 	gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
 
 #ifdef _WIN32
--- a/src/away.c	Tue Dec 31 18:21:32 2002 +0000
+++ b/src/away.c	Tue Dec 31 19:32:38 2002 +0000
@@ -190,7 +190,8 @@
 			 gtk_window_set_title(GTK_WINDOW(imaway), a->name);
 		else
 			gtk_window_set_title(GTK_WINDOW(imaway), _("Gaim - Away!"));
-		gtk_signal_connect(GTK_OBJECT(imaway), "destroy", GTK_SIGNAL_FUNC(do_im_back), imaway);
+		g_signal_connect(G_OBJECT(imaway), "destroy",
+						 G_CALLBACK(do_im_back), imaway);
 		gtk_widget_realize(imaway);
 
 		vbox = gtk_vbox_new(FALSE, 5);
@@ -250,7 +251,7 @@
 
 		back = picture_button(imaway, _("I'm Back!"), join_xpm);
 		gtk_box_pack_start(GTK_BOX(vbox), back, FALSE, FALSE, 0);
-		gtk_signal_connect(GTK_OBJECT(back), "clicked", GTK_SIGNAL_FUNC(do_im_back), imaway);
+		g_signal_connect(GTK_OBJECT(back), "clicked", G_CALLBACK(do_im_back), imaway);
 		gtk_window_set_focus(GTK_WINDOW(imaway), back);
 
 		awaymessage = a;
@@ -336,8 +337,8 @@
 			a = (struct away_message *)awy->data;
 			list_item = gtk_list_item_new();
 			gtk_container_add(GTK_CONTAINER(prefs_away_list), list_item);
-			gtk_signal_connect(GTK_OBJECT(list_item), "select",
-					   GTK_SIGNAL_FUNC(away_list_clicked), a);
+			g_signal_connect(GTK_OBJECT(list_item), "select",
+					   G_CALLBACK(away_list_clicked), a);
 			gtk_object_set_user_data(GTK_OBJECT(list_item), a);
 			gtk_widget_show(list_item);
 
@@ -369,7 +370,7 @@
 		menuitem = gtk_menu_item_new_with_label(_("New Away Message"));
 		gtk_menu_append(GTK_MENU(awaymenu), menuitem);
 		gtk_widget_show(menuitem);
-		gtk_signal_connect(GTK_OBJECT(menuitem), "activate", GTK_SIGNAL_FUNC(create_away_mess),
+		g_signal_connect(GTK_OBJECT(menuitem), "activate", G_CALLBACK(create_away_mess),
 				   NULL);
 
 		awy = away_messages;
@@ -379,8 +380,8 @@
 			remitem = gtk_menu_item_new_with_label(a->name);
 			gtk_menu_append(GTK_MENU(remmenu), remitem);
 			gtk_widget_show(remitem);
-			gtk_signal_connect(GTK_OBJECT(remitem), "activate",
-					   GTK_SIGNAL_FUNC(rem_away_mess), a);
+			g_signal_connect(GTK_OBJECT(remitem), "activate",
+					   G_CALLBACK(rem_away_mess), a);
 
 			awy = g_slist_next(awy);
 
@@ -430,8 +431,8 @@
 					gtk_object_set_user_data(GTK_OBJECT(menuitem), a);
 					gtk_menu_append(GTK_MENU(awaymenu), menuitem);
 					gtk_widget_show(menuitem);
-					gtk_signal_connect(GTK_OBJECT(menuitem), "activate",
-							   GTK_SIGNAL_FUNC(do_away_message), a);
+					g_signal_connect(GTK_OBJECT(menuitem), "activate",
+							   G_CALLBACK(do_away_message), a);
 
 					awy = g_slist_next(awy);
 				}
@@ -445,8 +446,8 @@
 					gtk_widget_show(menuitem);
 
 					if (strcmp(msgs->data, GAIM_AWAY_CUSTOM)) {
-						gtk_signal_connect(GTK_OBJECT(menuitem), "activate",
-								   GTK_SIGNAL_FUNC(set_gc_state), gc);
+						g_signal_connect(GTK_OBJECT(menuitem), "activate",
+								   G_CALLBACK(set_gc_state), gc);
 					} else {
 						submenu = gtk_menu_new();
 						gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem),
@@ -461,9 +462,9 @@
 										 a);
 							gtk_menu_append(GTK_MENU(submenu), menuitem);
 							gtk_widget_show(menuitem);
-							gtk_signal_connect(GTK_OBJECT(menuitem),
+							g_signal_connect(GTK_OBJECT(menuitem),
 									   "activate",
-									   GTK_SIGNAL_FUNC
+									   G_CALLBACK
 									   (do_away_message), a);
 
 							awy = g_slist_next(awy);
@@ -501,8 +502,8 @@
 					menuitem = gtk_menu_item_new_with_label(_("Back"));
 					gtk_menu_append(GTK_MENU(submenu), menuitem);
 					gtk_widget_show(menuitem);
-					gtk_signal_connect(GTK_OBJECT(menuitem), "activate",
-							   GTK_SIGNAL_FUNC(set_gc_away), gc);
+					g_signal_connect(GTK_OBJECT(menuitem), "activate",
+							   G_CALLBACK(set_gc_away), gc);
 
 					sep = gtk_hseparator_new();
 					menuitem = gtk_menu_item_new();
@@ -521,8 +522,8 @@
 						gtk_object_set_user_data(GTK_OBJECT(menuitem), a);
 						gtk_menu_append(GTK_MENU(submenu), menuitem);
 						gtk_widget_show(menuitem);
-						gtk_signal_connect(GTK_OBJECT(menuitem), "activate",
-								   GTK_SIGNAL_FUNC(set_gc_away), gc);
+						g_signal_connect(GTK_OBJECT(menuitem), "activate",
+								   G_CALLBACK(set_gc_away), gc);
 
 						awy = g_slist_next(awy);
 					}
@@ -537,9 +538,9 @@
 						gtk_widget_show(menuitem);
 
 						if (strcmp(msgs->data, GAIM_AWAY_CUSTOM)) {
-							gtk_signal_connect(GTK_OBJECT(menuitem),
+							g_signal_connect(GTK_OBJECT(menuitem),
 									   "activate",
-									   GTK_SIGNAL_FUNC(set_gc_state),
+									   G_CALLBACK(set_gc_state),
 									   gc);
 						} else {
 							submenu2 = gtk_menu_new();
@@ -558,9 +559,9 @@
 								gtk_menu_append(GTK_MENU(submenu2),
 										menuitem);
 								gtk_widget_show(menuitem);
-								gtk_signal_connect(GTK_OBJECT(menuitem),
+								g_signal_connect(GTK_OBJECT(menuitem),
 										   "activate",
-										   GTK_SIGNAL_FUNC
+										   G_CALLBACK
 										   (set_gc_away), gc);
 
 								awy = g_slist_next(awy);
@@ -591,8 +592,8 @@
 				gtk_object_set_user_data(GTK_OBJECT(menuitem), a);
 				gtk_menu_append(GTK_MENU(submenu), menuitem);
 				gtk_widget_show(menuitem);
-				gtk_signal_connect(GTK_OBJECT(menuitem), "activate",
-						   GTK_SIGNAL_FUNC(do_away_message), a);
+				g_signal_connect(GTK_OBJECT(menuitem), "activate",
+						   G_CALLBACK(do_away_message), a);
 
 				awy = g_slist_next(awy);
 			}
--- a/src/buddy.c	Tue Dec 31 18:21:32 2002 +0000
+++ b/src/buddy.c	Tue Dec 31 19:32:38 2002 +0000
@@ -642,25 +642,25 @@
 		menu = gtk_menu_new();
 
 		button = gtk_menu_item_new_with_label(_("IM"));
-		gtk_signal_connect(GTK_OBJECT(button), "activate", GTK_SIGNAL_FUNC(pressed_im), b);
+		g_signal_connect(GTK_OBJECT(button), "activate", G_CALLBACK(pressed_im), b);
 		gtk_menu_append(GTK_MENU(menu), button);
 		gtk_widget_show(button);
 
 		button = gtk_menu_item_new_with_label(_("Alias"));
-		gtk_signal_connect(GTK_OBJECT(button), "activate", GTK_SIGNAL_FUNC(pressed_alias_bs), b);
+		g_signal_connect(GTK_OBJECT(button), "activate", G_CALLBACK(pressed_alias_bs), b);
 		gtk_menu_append(GTK_MENU(menu), button);
 		gtk_widget_show(button);
 
 		button = gtk_menu_item_new_with_label(_("Add Buddy Pounce"));
-		gtk_signal_connect(GTK_OBJECT(button), "activate",
-				   GTK_SIGNAL_FUNC(new_bp_callback),
+		g_signal_connect(GTK_OBJECT(button), "activate",
+				   G_CALLBACK(new_bp_callback),
 				   cn ? find_buddy(cn->data, b->name) : NULL);
 		gtk_menu_append(GTK_MENU(menu), button);
 		gtk_widget_show(button);
 
 		button = gtk_menu_item_new_with_label(_("View Log"));
-		gtk_signal_connect(GTK_OBJECT(button), "activate",
-				   GTK_SIGNAL_FUNC(pressed_log), b->name);
+		g_signal_connect(GTK_OBJECT(button), "activate",
+				   G_CALLBACK(pressed_log), b->name);
 		gtk_menu_append(GTK_MENU(menu), button);
 		gtk_widget_show(button);
 
@@ -683,8 +683,8 @@
 						GtkWidget *button;
 
 						button = gtk_menu_item_new_with_label(pbm->label);
-						gtk_signal_connect(GTK_OBJECT(button), "activate",
-								   GTK_SIGNAL_FUNC(menu_click), b->name);
+						g_signal_connect(GTK_OBJECT(button), "activate",
+								   G_CALLBACK(menu_click), b->name);
 						gtk_object_set_user_data(GTK_OBJECT(button), mo);
 						gtk_menu_append(GTK_MENU(conmenu), button);
 						gtk_widget_show(button);
@@ -704,8 +704,8 @@
 					GtkWidget *button;
 
 					button = gtk_menu_item_new_with_label(pbm->label);
-					gtk_signal_connect(GTK_OBJECT(button), "activate",
-							   GTK_SIGNAL_FUNC(menu_click), b->name);
+					g_signal_connect(GTK_OBJECT(button), "activate",
+							   G_CALLBACK(menu_click), b->name);
 					gtk_object_set_user_data(GTK_OBJECT(button), mo);
 					gtk_menu_append(GTK_MENU(menu), button);
 					gtk_widget_show(button);
@@ -797,8 +797,8 @@
 		menu = gtk_menu_new();
 
 		button = gtk_menu_item_new_with_label(_("Rename"));
-		gtk_signal_connect(GTK_OBJECT(button), "activate",
-				   GTK_SIGNAL_FUNC(show_rename_group), group);
+		g_signal_connect(GTK_OBJECT(button), "activate",
+				   G_CALLBACK(show_rename_group), group);
 		gtk_menu_append(GTK_MENU(menu), button);
 		gtk_widget_show(button);
 
@@ -810,38 +810,38 @@
 		menu = gtk_menu_new();
 
 		button = gtk_menu_item_new_with_label(_("IM"));
-		gtk_signal_connect(GTK_OBJECT(button), "activate", GTK_SIGNAL_FUNC(pressed_im_bud), b);
+		g_signal_connect(GTK_OBJECT(button), "activate", G_CALLBACK(pressed_im_bud), b);
 		gtk_menu_append(GTK_MENU(menu), button);
 		gtk_widget_show(button);
 
 		button = gtk_menu_item_new_with_label(_("Alias"));
-		gtk_signal_connect(GTK_OBJECT(button), "activate",
-				   GTK_SIGNAL_FUNC(pressed_alias_bud), b);
+		g_signal_connect(GTK_OBJECT(button), "activate",
+				   G_CALLBACK(pressed_alias_bud), b);
 		gtk_menu_append(GTK_MENU(menu), button);
 		gtk_widget_show(button);
 
 		if (strcmp(b->name, b->show)) {
 			button = gtk_menu_item_new_with_label(_("Un-Alias"));
-			gtk_signal_connect(GTK_OBJECT(button), "activate", GTK_SIGNAL_FUNC(un_alias), b);
+			g_signal_connect(GTK_OBJECT(button), "activate", G_CALLBACK(un_alias), b);
 			gtk_menu_append(GTK_MENU(menu), button);
 			gtk_widget_show(button);
 		}
 
 		button = gtk_menu_item_new_with_label(_("Rename"));
-		gtk_signal_connect(GTK_OBJECT(button), "activate",
-				   GTK_SIGNAL_FUNC(show_rename_buddy), b);
+		g_signal_connect(GTK_OBJECT(button), "activate",
+				   G_CALLBACK(show_rename_buddy), b);
 		gtk_menu_append(GTK_MENU(menu), button);
 		gtk_widget_show(button);
 
 		button = gtk_menu_item_new_with_label(_("Add Buddy Pounce"));
-		gtk_signal_connect(GTK_OBJECT(button), "activate",
-				   GTK_SIGNAL_FUNC(new_bp_callback), b);
+		g_signal_connect(GTK_OBJECT(button), "activate",
+				   G_CALLBACK(new_bp_callback), b);
 		gtk_menu_append(GTK_MENU(menu), button);
 		gtk_widget_show(button);
 
 		button = gtk_menu_item_new_with_label(_("View Log"));
-		gtk_signal_connect(GTK_OBJECT(button), "activate",
-				   GTK_SIGNAL_FUNC(pressed_log), b->name);
+		g_signal_connect(GTK_OBJECT(button), "activate",
+				   G_CALLBACK(pressed_log), b->name);
 		gtk_menu_append(GTK_MENU(menu), button);
 		gtk_widget_show(button);
 
@@ -856,8 +856,8 @@
 				GtkWidget *button;
 
 				button = gtk_menu_item_new_with_label(pbm->label);
-				gtk_signal_connect(GTK_OBJECT(button), "activate",
-						   GTK_SIGNAL_FUNC(menu_click), b->name);
+				g_signal_connect(GTK_OBJECT(button), "activate",
+						   G_CALLBACK(menu_click), b->name);
 				gtk_object_set_user_data(GTK_OBJECT(button), mo);
 				gtk_menu_append(GTK_MENU(menu), button);
 				gtk_widget_show(button);
@@ -1535,8 +1535,8 @@
 
 		menuitem = gtk_menu_item_new_with_label(a->name);
 		gtk_menu_append(GTK_MENU(menu), menuitem);
-		gtk_signal_connect(GTK_OBJECT(menuitem), "activate",
-				   GTK_SIGNAL_FUNC(do_away_message), a);
+		g_signal_connect(GTK_OBJECT(menuitem), "activate",
+				   G_CALLBACK(do_away_message), a);
 		gtk_widget_show(menuitem);
 		awy = awy->next;
 	}
@@ -1683,7 +1683,7 @@
 	menuitem = gtk_menu_item_new_with_label(_("New Buddy Pounce"));
 	gtk_menu_append(GTK_MENU(bpmenu), menuitem);
 	gtk_widget_show(menuitem);
-	gtk_signal_connect(GTK_OBJECT(menuitem), "activate", GTK_SIGNAL_FUNC(new_bp_callback), NULL);
+	g_signal_connect(GTK_OBJECT(menuitem), "activate", G_CALLBACK(new_bp_callback), NULL);
 
 
 	while (bp) {
@@ -1692,7 +1692,7 @@
 		remitem = gtk_menu_item_new_with_label(b->name);
 		gtk_menu_append(GTK_MENU(remmenu), remitem);
 		gtk_widget_show(remitem);
-		gtk_signal_connect(GTK_OBJECT(remitem), "activate", GTK_SIGNAL_FUNC(rem_bp), b);
+		g_signal_connect(GTK_OBJECT(remitem), "activate", G_CALLBACK(rem_bp), b);
 
 		bp = bp->next;
 
@@ -1731,7 +1731,7 @@
 		gtk_menu_append(GTK_MENU(messmenu), mess);
 		gtk_tooltips_set_tip(bp_tooltip, GTK_WIDGET(mess), _("[Click to edit]"), NULL);
 		gtk_widget_show(mess);
-		gtk_signal_connect(GTK_OBJECT(mess), "activate", GTK_SIGNAL_FUNC(edit_bp_callback), b);
+		g_signal_connect(GTK_OBJECT(mess), "activate", G_CALLBACK(edit_bp_callback), b);
 		bp = bp->next;
 
 	}
@@ -1852,8 +1852,8 @@
 
 	g->item = gtk_tree_item_new();
 
-	gtk_signal_connect(GTK_OBJECT(g->item), "button_press_event",
-			   GTK_SIGNAL_FUNC(handle_click_group), g);
+	g_signal_connect(GTK_OBJECT(g->item), "button_press_event",
+			   G_CALLBACK(handle_click_group), g);
 
 	gtk_tree_insert(GTK_TREE(buddies), g->item, pos);
 
@@ -1926,8 +1926,8 @@
 	b->item = gtk_tree_item_new();
 	gtk_tree_insert(GTK_TREE(gs->tree), b->item, pos);
 	gtk_object_set_user_data(GTK_OBJECT(b->item), b);
-	gtk_signal_connect(GTK_OBJECT(b->item), "button_press_event",
-			   GTK_SIGNAL_FUNC(handle_click_buddy), b);
+	g_signal_connect(GTK_OBJECT(b->item), "button_press_event",
+			   G_CALLBACK(handle_click_buddy), b);
 	gtk_widget_show(b->item);
 
 	box = gtk_hbox_new(FALSE, 1);
@@ -2549,13 +2549,13 @@
 		gtk_box_pack_start(GTK_BOX(imchatbox), awaybutton, TRUE, TRUE, 0);
 		gtk_container_border_width(GTK_CONTAINER(imchatbox), 5);
 
-		gtk_signal_connect(GTK_OBJECT(imbutton), "clicked", GTK_SIGNAL_FUNC(im_callback),
+		g_signal_connect(GTK_OBJECT(imbutton), "clicked", G_CALLBACK(im_callback),
 				   buddies);
-		gtk_signal_connect(GTK_OBJECT(infobutton), "clicked", GTK_SIGNAL_FUNC(info_callback),
+		g_signal_connect(GTK_OBJECT(infobutton), "clicked", G_CALLBACK(info_callback),
 				   buddies);
-		gtk_signal_connect(GTK_OBJECT(chatbutton), "clicked", GTK_SIGNAL_FUNC(chat_callback),
+		g_signal_connect(GTK_OBJECT(chatbutton), "clicked", G_CALLBACK(chat_callback),
 				   buddies);
-		gtk_signal_connect(GTK_OBJECT(awaybutton), "clicked", GTK_SIGNAL_FUNC(away_callback),
+		g_signal_connect(GTK_OBJECT(awaybutton), "clicked", G_CALLBACK(away_callback),
 				   buddies);
 
 		gtk_tooltips_set_tip(tips, infobutton, _("Information on selected Buddy"), "Penguin");
@@ -2629,27 +2629,27 @@
 	gtk_menu_bar_append(GTK_MENU_BAR(menubar), menuitem);
 
 	gaim_new_item_from_stock(menu, _("_Add A Buddy"), GTK_STOCK_ADD,
-				  GTK_SIGNAL_FUNC(add_buddy_callback), NULL,  'b', GDK_CONTROL_MASK, "Ctl+B");
+				  G_CALLBACK(add_buddy_callback), NULL,  'b', GDK_CONTROL_MASK, "Ctl+B");
 	gaim_new_item_from_stock(menu, _("_Join A Chat"), GTK_STOCK_JUMP_TO,
-				  GTK_SIGNAL_FUNC(chat_callback), NULL, 'c', GDK_CONTROL_MASK, "Ctl+C");
+				  G_CALLBACK(chat_callback), NULL, 'c', GDK_CONTROL_MASK, "Ctl+C");
 	gaim_new_item_from_stock(menu, _("_New Message"), GTK_STOCK_CONVERT,
-				  GTK_SIGNAL_FUNC(show_im_dialog), NULL, 'i', GDK_CONTROL_MASK, "Ctl+I");
+				  G_CALLBACK(show_im_dialog), NULL, 'i', GDK_CONTROL_MASK, "Ctl+I");
 	gaim_new_item_from_stock(menu, _("_Get User Info"), GTK_STOCK_FIND,
-				  GTK_SIGNAL_FUNC(show_info_dialog), NULL, 'j', GDK_CONTROL_MASK, "Ctl+J");
+				  G_CALLBACK(show_info_dialog), NULL, 'j', GDK_CONTROL_MASK, "Ctl+J");
 
 	gaim_separator(menu);
 
 	gaim_new_item_from_pixbuf(menu, _("Import Buddy List"), "import-menu.png",
-				  GTK_SIGNAL_FUNC(import_callback), NULL, 0, 0, 0);
+				  G_CALLBACK(import_callback), NULL, 0, 0, 0);
 
 	gaim_separator(menu);
 
 	gaim_new_item_from_stock(menu, _("Signoff"), NULL,
-				  GTK_SIGNAL_FUNC(signoff_all), (void*)1, 'd', GDK_CONTROL_MASK, "Ctl+D");
+				  G_CALLBACK(signoff_all), (void*)1, 'd', GDK_CONTROL_MASK, "Ctl+D");
 	gaim_new_item_from_stock(menu, _("Hide"), NULL,
-				  GTK_SIGNAL_FUNC(hide_buddy_list), NULL, 'h', GDK_CONTROL_MASK, "Ctl+H");
+				  G_CALLBACK(hide_buddy_list), NULL, 'h', GDK_CONTROL_MASK, "Ctl+H");
 	gaim_new_item_from_stock(menu, _("Quit"), GTK_STOCK_QUIT,
-				  GTK_SIGNAL_FUNC(do_quit), NULL, 'q', GDK_CONTROL_MASK, "Ctl+Q");
+				  G_CALLBACK(do_quit), NULL, 'q', GDK_CONTROL_MASK, "Ctl+Q");
 
 	menu = gtk_menu_new();
 
@@ -2671,10 +2671,10 @@
 
 #ifndef NO_MULTI
 	gaim_new_item_from_pixbuf(menu, _("_Accounts..."), "accounts-menu.png",
-				  GTK_SIGNAL_FUNC(account_editor), NULL, 'a', GDK_CONTROL_MASK, "Ctl+A");
+				  G_CALLBACK(account_editor), NULL, 'a', GDK_CONTROL_MASK, "Ctl+A");
 #endif
 	gaim_new_item_from_stock(menu, _("_Preferences..."), GTK_STOCK_PREFERENCES,
-				  GTK_SIGNAL_FUNC(show_prefs), NULL, 'p', GDK_CONTROL_MASK, "Ctl+P");
+				  G_CALLBACK(show_prefs), NULL, 'p', GDK_CONTROL_MASK, "Ctl+P");
 
 	gaim_separator(menu);
 
@@ -2684,10 +2684,10 @@
 	do_proto_menu();
 
 	gaim_new_item_from_stock(menu, _("Pr_ivacy..."), NULL,
-				  GTK_SIGNAL_FUNC(show_privacy_options), NULL, 0, 0, 0);
+				  G_CALLBACK(show_privacy_options), NULL, 0, 0, 0);
 
 	gaim_new_item_from_stock(menu, _("_View System Log..."), NULL,
-				  GTK_SIGNAL_FUNC(show_syslog), NULL, 0, 0, 0);
+				  G_CALLBACK(show_syslog), NULL, 0, 0, 0);
 
 	menu = gtk_menu_new();
 
@@ -2695,12 +2695,12 @@
 	gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), menu);
 	gtk_menu_bar_append(GTK_MENU_BAR(menubar), menuitem);
 
-	gaim_new_item_from_stock(menu, _("Online Help"), GTK_STOCK_HELP, GTK_SIGNAL_FUNC(open_url), WEBSITE"documentation.php", GDK_F1, 0, NULL);
-	gaim_new_item_from_stock(menu, _("Debug Window"), NULL, GTK_SIGNAL_FUNC(clicked_debug), NULL, 0, 0, NULL);
+	gaim_new_item_from_stock(menu, _("Online Help"), GTK_STOCK_HELP, G_CALLBACK(open_url), WEBSITE"documentation.php", GDK_F1, 0, NULL);
+	gaim_new_item_from_stock(menu, _("Debug Window"), NULL, G_CALLBACK(clicked_debug), NULL, 0, 0, NULL);
 	
 	gaim_separator(menu);
 
-	gaim_new_item_from_pixbuf(menu, _("About Gaim"), "about_menu.png", GTK_SIGNAL_FUNC(show_about), NULL, GDK_F1, GDK_CONTROL_MASK, NULL);
+	gaim_new_item_from_pixbuf(menu, _("About Gaim"), "about_menu.png", G_CALLBACK(show_about), NULL, GDK_F1, GDK_CONTROL_MASK, NULL);
 	
 	gtk_widget_show(menubar);
 
@@ -2740,15 +2740,15 @@
 	gtk_ctree_set_line_style(GTK_CTREE(edittree), GTK_CTREE_LINES_SOLID);;
 	gtk_ctree_set_expander_style(GTK_CTREE(edittree), GTK_CTREE_EXPANDER_SQUARE);
 	gtk_clist_set_reorderable(GTK_CLIST(edittree), TRUE);
-	gtk_signal_connect(GTK_OBJECT(edittree), "button_press_event",
-			   GTK_SIGNAL_FUNC(click_edit_tree), NULL);
+	g_signal_connect(GTK_OBJECT(edittree), "button_press_event",
+			   G_CALLBACK(click_edit_tree), NULL);
 
 	gtk_ctree_set_drag_compare_func(GTK_CTREE(edittree),
 					(GtkCTreeCompareDragFunc) edit_drag_compare_func);
 
 
-	gtk_signal_connect_after(GTK_OBJECT(edittree), "tree_move",
-				 GTK_SIGNAL_FUNC(edit_tree_move), NULL);
+	g_signal_connect_after(GTK_OBJECT(edittree), "tree_move",
+				 G_CALLBACK(edit_tree_move), NULL);
 
 
 	bbox = gtk_hbox_new(TRUE, 5);
--- a/src/buddy_chat.c	Tue Dec 31 18:21:32 2002 +0000
+++ b/src/buddy_chat.c	Tue Dec 31 19:32:38 2002 +0000
@@ -186,8 +186,8 @@
 				gtk_widget_grab_focus(entry);
 				focus = FALSE;
 			}
-			gtk_signal_connect(GTK_OBJECT(entry), "activate",
-					   GTK_SIGNAL_FUNC(do_join_chat), NULL);
+			g_signal_connect(GTK_OBJECT(entry), "activate",
+					   G_CALLBACK(do_join_chat), NULL);
 			gtk_widget_show(entry);
 		}
 
@@ -230,7 +230,7 @@
 		g_snprintf(buf, sizeof buf, "%s (%s)", g->username, g->prpl->name);
 		opt = gtk_menu_item_new_with_label(buf);
 		gtk_object_set_user_data(GTK_OBJECT(opt), g);
-		gtk_signal_connect(GTK_OBJECT(opt), "activate", GTK_SIGNAL_FUNC(joinchat_choose), g);
+		g_signal_connect(GTK_OBJECT(opt), "activate", G_CALLBACK(joinchat_choose), g);
 		gtk_menu_append(GTK_MENU(menu), opt);
 		gtk_widget_show(opt);
 	}
@@ -270,8 +270,8 @@
 		gtk_window_set_role(GTK_WINDOW(joinchat), "joinchat");
 		gtk_window_set_policy(GTK_WINDOW(joinchat), FALSE, TRUE, TRUE);
 		gtk_widget_realize(joinchat);
-		gtk_signal_connect(GTK_OBJECT(joinchat), "delete_event",
-				   GTK_SIGNAL_FUNC(destroy_join_chat), joinchat);
+		g_signal_connect(GTK_OBJECT(joinchat), "delete_event",
+				   G_CALLBACK(destroy_join_chat), joinchat);
 		gtk_window_set_title(GTK_WINDOW(joinchat), _("Join Chat"));
 
 		mainbox = gtk_vbox_new(FALSE, 5);
@@ -312,12 +312,12 @@
 
 		join = picture_button(joinchat, _("Join"), join_xpm);
 		gtk_box_pack_end(GTK_BOX(bbox), join, FALSE, FALSE, 0);
-		gtk_signal_connect(GTK_OBJECT(join), "clicked", GTK_SIGNAL_FUNC(do_join_chat), NULL);
+		g_signal_connect(GTK_OBJECT(join), "clicked", G_CALLBACK(do_join_chat), NULL);
 
 		cancel = picture_button(joinchat, _("Cancel"), cancel_xpm);
 		gtk_box_pack_end(GTK_BOX(bbox), cancel, FALSE, FALSE, 0);
-		gtk_signal_connect(GTK_OBJECT(cancel), "clicked",
-				   GTK_SIGNAL_FUNC(destroy_join_chat), joinchat);
+		g_signal_connect(GTK_OBJECT(cancel), "clicked",
+				   G_CALLBACK(destroy_join_chat), joinchat);
 	}
 	gtk_widget_show_all(joinchat);
 }
@@ -442,13 +442,13 @@
 		gtk_box_pack_end(GTK_BOX(bbox), invite_btn, FALSE, FALSE, 0);
 
 		/* Handle closes right */
-		gtk_signal_connect(GTK_OBJECT(invite), "delete_event",
-				   GTK_SIGNAL_FUNC(destroy_invite), invite);
+		g_signal_connect(GTK_OBJECT(invite), "delete_event",
+				   G_CALLBACK(destroy_invite), invite);
 
-		gtk_signal_connect(GTK_OBJECT(cancel), "clicked", GTK_SIGNAL_FUNC(destroy_invite), b);
-		gtk_signal_connect(GTK_OBJECT(invite_btn), "clicked", GTK_SIGNAL_FUNC(do_invite), b);
-		gtk_signal_connect(GTK_OBJECT(GTK_ENTRY(GTK_COMBO(inviteentry)->entry)), "activate",
-				   GTK_SIGNAL_FUNC(do_invite), b);
+		g_signal_connect(GTK_OBJECT(cancel), "clicked", G_CALLBACK(destroy_invite), b);
+		g_signal_connect(GTK_OBJECT(invite_btn), "clicked", G_CALLBACK(do_invite), b);
+		g_signal_connect(GTK_OBJECT(GTK_ENTRY(GTK_COMBO(inviteentry)->entry)), "activate",
+				   G_CALLBACK(do_invite), b);
 
 		/* Finish up */
 		gtk_widget_set_usize(GTK_WIDGET(invite), 550, 115);
@@ -867,7 +867,7 @@
 		menu = gtk_menu_new();
 
 		button = gtk_menu_item_new_with_label(_("IM"));
-		gtk_signal_connect(GTK_OBJECT(button), "activate", GTK_SIGNAL_FUNC(chat_press_im), b);
+		g_signal_connect(GTK_OBJECT(button), "activate", G_CALLBACK(chat_press_im), b);
 		gtk_object_set_user_data(GTK_OBJECT(button), who);
 		gtk_menu_append(GTK_MENU(menu), button);
 		gtk_widget_show(button);
@@ -877,15 +877,15 @@
 		else
 			button = gtk_menu_item_new_with_label(_("Ignore"));
 		
-		gtk_signal_connect(GTK_OBJECT(button), "activate", GTK_SIGNAL_FUNC(chat_press_ign), b);
+		g_signal_connect(GTK_OBJECT(button), "activate", G_CALLBACK(chat_press_ign), b);
 		gtk_object_set_user_data(GTK_OBJECT(button), who);
 		gtk_menu_append(GTK_MENU(menu), button);
 		gtk_widget_show(button);
 
 		if (b->gc && b->gc->prpl->get_info) {
 			button = gtk_menu_item_new_with_label(_("Info"));
-			gtk_signal_connect(GTK_OBJECT(button), "activate",
-					   GTK_SIGNAL_FUNC(chat_press_info), b);
+			g_signal_connect(GTK_OBJECT(button), "activate",
+					   G_CALLBACK(chat_press_info), b);
 			gtk_object_set_user_data(GTK_OBJECT(button), who);
 			gtk_menu_append(GTK_MENU(menu), button);
 			gtk_widget_show(button);
@@ -893,8 +893,8 @@
 
 		if (b->gc && b->gc->prpl->get_cb_away) {
 			button = gtk_menu_item_new_with_label(_("Get Away Msg"));
-			gtk_signal_connect(GTK_OBJECT(button), "activate",
-					   GTK_SIGNAL_FUNC(chat_press_away), b);
+			g_signal_connect(GTK_OBJECT(button), "activate",
+					   G_CALLBACK(chat_press_away), b);
 			gtk_object_set_user_data(GTK_OBJECT(button), who);
 			gtk_menu_append(GTK_MENU(menu), button);
 			gtk_widget_show(button);
@@ -906,8 +906,8 @@
 				button = gtk_menu_item_new_with_label(_("Remove"));
 			else
 				button = gtk_menu_item_new_with_label(_("Add"));
-			gtk_signal_connect(GTK_OBJECT(button), "activate",
-					   GTK_SIGNAL_FUNC(chat_press_add), b);
+			g_signal_connect(GTK_OBJECT(button), "activate",
+					   G_CALLBACK(chat_press_add), b);
 			gtk_object_set_user_data(GTK_OBJECT(button), 
 						 who);
 			gtk_menu_append(GTK_MENU(menu), button);
@@ -1208,8 +1208,8 @@
 			gtk_container_border_width(GTK_CONTAINER(win), 0);
 			gtk_widget_realize(win);
 			gtk_window_set_title(GTK_WINDOW(win), _("Gaim - Group Chats"));
-			gtk_signal_connect(GTK_OBJECT(win), "delete_event",
-					   GTK_SIGNAL_FUNC(delete_all_convo), NULL);
+			g_signal_connect(GTK_OBJECT(win), "delete_event",
+					   G_CALLBACK(delete_all_convo), NULL);
 
 			chat_notebook = gtk_notebook_new();
 			if ((convo_options & OPT_CONVO_COMBINE) && (im_options & OPT_IM_ONE_WINDOW))
@@ -1239,8 +1239,8 @@
 			gtk_notebook_set_scrollable(GTK_NOTEBOOK(chat_notebook), TRUE);
 			gtk_notebook_popup_enable(GTK_NOTEBOOK(chat_notebook));
 			gtk_container_add(GTK_CONTAINER(win), testidea);
-			gtk_signal_connect(GTK_OBJECT(chat_notebook), "switch-page",
-					   GTK_SIGNAL_FUNC(convo_switch), NULL);
+			g_signal_connect(GTK_OBJECT(chat_notebook), "switch-page",
+					   G_CALLBACK(convo_switch), NULL);
 			gtk_widget_show(chat_notebook);
 		} else
 			win = b->window = all_chats;
@@ -1255,7 +1255,7 @@
 		gtk_button_set_relief(GTK_BUTTON(b->close), GTK_RELIEF_NONE);
 		b->tab_label = gtk_label_new(b->name);
 
-		gtk_signal_connect(GTK_OBJECT(b->close), "clicked", GTK_SIGNAL_FUNC(close_callback), b);
+		g_signal_connect(GTK_OBJECT(b->close), "clicked", G_CALLBACK(close_callback), b);
 
 		gtk_box_pack_start(GTK_BOX(tabby), b->tab_label, FALSE, FALSE, 0);
 		gtk_box_pack_start(GTK_BOX(tabby), b->close, FALSE, FALSE, 0);
@@ -1272,7 +1272,7 @@
 		gtk_widget_realize(win);
 		g_snprintf(buf, sizeof(buf), "Gaim - %s (chat)", b->name);
 		gtk_window_set_title(GTK_WINDOW(win), buf);
-		gtk_signal_connect(GTK_OBJECT(win), "destroy", GTK_SIGNAL_FUNC(close_callback), b);
+		g_signal_connect(GTK_OBJECT(win), "destroy", G_CALLBACK(close_callback), b);
 
 		cont = gtk_vbox_new(FALSE, 5);
 		gtk_container_add(GTK_CONTAINER(win), cont);
@@ -1342,14 +1342,14 @@
 	rend = gtk_cell_renderer_text_new();
 	col = gtk_tree_view_column_new_with_attributes(NULL, rend, "text", 0, NULL);
 	gtk_tree_view_column_set_clickable(GTK_TREE_VIEW_COLUMN(col), TRUE);
-	gtk_signal_connect(GTK_OBJECT(list), "button_press_event",
-		GTK_SIGNAL_FUNC(right_click_chat), b);
+	g_signal_connect(GTK_OBJECT(list), "button_press_event",
+		G_CALLBACK(right_click_chat), b);
 	gtk_tree_view_append_column(GTK_TREE_VIEW(list), col);
 
 	col = gtk_tree_view_column_new_with_attributes(NULL, rend, "text", 1, NULL);
 	gtk_tree_view_column_set_clickable(GTK_TREE_VIEW_COLUMN(col), TRUE);
-	gtk_signal_connect(GTK_OBJECT(list), "button_press_event",
-		GTK_SIGNAL_FUNC(right_click_chat), b);
+	g_signal_connect(GTK_OBJECT(list), "button_press_event",
+		G_CALLBACK(right_click_chat), b);
 	gtk_tree_view_append_column(GTK_TREE_VIEW(list), col);
 
 	gtk_widget_set_usize(list, 150, -1);
@@ -1367,19 +1367,19 @@
 	button = gaim_pixbuf_button_from_stock(NULL, "gtk-redo", GAIM_BUTTON_VERTICAL);
 	gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);
 	gtk_box_pack_start(GTK_BOX(bbox2), button, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(im_callback), b);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(im_callback), b);
 	gtk_widget_show(button);
 
 	button = gaim_pixbuf_button_from_stock(NULL, "gtk-dialog-error", GAIM_BUTTON_VERTICAL);
 	gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);
 	gtk_box_pack_start(GTK_BOX(bbox2), button, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(ignore_callback), b);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(ignore_callback), b);
 	gtk_widget_show(button);
 
 	button = gaim_pixbuf_button_from_stock(NULL, "gtk-find", GAIM_BUTTON_VERTICAL);
 	gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);
 	gtk_box_pack_start(GTK_BOX(bbox2), button, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(info_callback), b);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(info_callback), b);
 	gtk_widget_show(button);
 	b->info = button;
 
@@ -1427,7 +1427,7 @@
 	close = picture_button2(win, _("Close"), cancel_xpm, dispstyle);
 	b->close = close;
 	gtk_object_set_user_data(GTK_OBJECT(close), b);
-	gtk_signal_connect(GTK_OBJECT(close), "clicked", GTK_SIGNAL_FUNC(close_callback), b);
+	g_signal_connect(GTK_OBJECT(close), "clicked", G_CALLBACK(close_callback), b);
 	gtk_box_pack_end(GTK_BOX(bbox), close, dispstyle, dispstyle, 0);
 	*/
 
@@ -1438,7 +1438,7 @@
 				GAIM_BUTTON_VERTICAL);
 
 	gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(send_callback), b);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(send_callback), b);
 	gtk_widget_show(button);
 	gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0);
 	b->send = button;
@@ -1453,7 +1453,7 @@
 				(dispstyle == 1 ? NULL : "gtk-jump-to"),
 				GAIM_BUTTON_VERTICAL);
 
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(invite_callback), b);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(invite_callback), b);
 	gtk_widget_show(button);
 	gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0);
 	gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);
@@ -1548,10 +1548,10 @@
 			gtk_box_pack_end(GTK_BOX(parent), c->send, FALSE, FALSE, 0);
 			gtk_box_pack_end(GTK_BOX(parent), c->invite, FALSE, FALSE, 0);
 
-			gtk_signal_connect(GTK_OBJECT(c->send), "clicked",
-					   GTK_SIGNAL_FUNC(send_callback), c);
-			gtk_signal_connect(GTK_OBJECT(c->invite), "clicked",
-					   GTK_SIGNAL_FUNC(invite_callback), c);
+			g_signal_connect(GTK_OBJECT(c->send), "clicked",
+					   G_CALLBACK(send_callback), c);
+			g_signal_connect(GTK_OBJECT(c->invite), "clicked",
+					   G_CALLBACK(invite_callback), c);
 
 			gtk_button_set_relief(GTK_BUTTON(c->send), GTK_RELIEF_NONE);
 			gtk_button_set_relief(GTK_BUTTON(c->invite), GTK_RELIEF_NONE);
@@ -1619,10 +1619,10 @@
 
 		update_buttons_by_protocol(c);
 
-		gtk_signal_connect(GTK_OBJECT(c->send), "clicked", GTK_SIGNAL_FUNC(send_callback), c);
-		gtk_signal_connect(GTK_OBJECT(c->info), "clicked", GTK_SIGNAL_FUNC(info_callback), c);
-		gtk_signal_connect(GTK_OBJECT(c->warn), "clicked", GTK_SIGNAL_FUNC(warn_callback), c);
-		gtk_signal_connect(GTK_OBJECT(c->block), "clicked", GTK_SIGNAL_FUNC(block_callback), c);
+		g_signal_connect(GTK_OBJECT(c->send), "clicked", G_CALLBACK(send_callback), c);
+		g_signal_connect(GTK_OBJECT(c->info), "clicked", G_CALLBACK(info_callback), c);
+		g_signal_connect(GTK_OBJECT(c->warn), "clicked", G_CALLBACK(warn_callback), c);
+		g_signal_connect(GTK_OBJECT(c->block), "clicked", G_CALLBACK(block_callback), c);
 		bcs = bcs->next;
 	}
 }
@@ -1650,7 +1650,7 @@
 			gtk_widget_reparent(imhtml, c->sw);
 			c->text = imhtml;
 			gtk_signal_disconnect_by_func(GTK_OBJECT(win),
-						      GTK_SIGNAL_FUNC(close_callback), c);
+						      G_CALLBACK(close_callback), c);
 			gtk_widget_destroy(win);
 
 			if (c->topic)
--- a/src/conversation.c	Tue Dec 31 18:21:32 2002 +0000
+++ b/src/conversation.c	Tue Dec 31 19:32:38 2002 +0000
@@ -201,7 +201,7 @@
 	if (!(convo_options & OPT_CONVO_SHOW_SMILEY))
 		gtk_imhtml_show_smileys(GTK_IMHTML(imhtml), FALSE);
 
-	gtk_signal_connect(GTK_OBJECT(imhtml), "url_clicked", GTK_SIGNAL_FUNC(open_url), NULL);
+	g_signal_connect(GTK_OBJECT(imhtml), "url_clicked", G_CALLBACK(open_url), NULL);
 	gaim_setup_imhtml_smileys(imhtml);	
 }
 
@@ -512,10 +512,10 @@
 	g_snprintf(buf, sizeof(buf), "%s" G_DIR_SEPARATOR_S "%s.log", gaim_home_dir(), normalize(c->name));
 	gtk_file_selection_set_filename(GTK_FILE_SELECTION(window), buf);
 	gtk_object_set_user_data(GTK_OBJECT(GTK_FILE_SELECTION(window)->ok_button), c);
-	gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(window)->ok_button),
-			   "clicked", GTK_SIGNAL_FUNC(do_save_convo), window);
-	gtk_signal_connect_object(GTK_OBJECT(GTK_FILE_SELECTION(window)->cancel_button),
-				  "clicked", GTK_SIGNAL_FUNC(gtk_widget_destroy), (gpointer)window);
+	g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(window)->ok_button),
+			   "clicked", G_CALLBACK(do_save_convo), window);
+	g_signal_connect_swapped(GTK_OBJECT(GTK_FILE_SELECTION(window)->cancel_button),
+				  "clicked", G_CALLBACK(gtk_widget_destroy), (gpointer)window);
 	gtk_widget_show(window);
 }
 
@@ -560,10 +560,10 @@
 	g_snprintf(buf, sizeof(buf), "%s" G_DIR_SEPARATOR_S, gaim_home_dir());
 	gtk_file_selection_set_filename(GTK_FILE_SELECTION(window), buf);
 	gtk_object_set_user_data(GTK_OBJECT(GTK_FILE_SELECTION(window)->ok_button), c);
-	gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(window)->ok_button),
-			   "clicked", GTK_SIGNAL_FUNC(do_insert_image), window);
-	gtk_signal_connect_object(GTK_OBJECT(GTK_FILE_SELECTION(window)->cancel_button),
-				  "clicked", GTK_SIGNAL_FUNC(gtk_widget_destroy), (gpointer)window);
+	g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(window)->ok_button),
+			   "clicked", G_CALLBACK(do_insert_image), window);
+	g_signal_connect_swapped(GTK_OBJECT(GTK_FILE_SELECTION(window)->cancel_button),
+				  "clicked", G_CALLBACK(gtk_widget_destroy), (gpointer)window);
 	gtk_widget_show(window);
 }
 
@@ -2195,22 +2195,22 @@
 	gtk_menu_item_set_submenu(GTK_MENU_ITEM(menuitem), menu);
 	gtk_menu_shell_append(GTK_MENU_SHELL(menubar), menuitem);
 
-	gaim_new_item_from_stock(menu, _("_Save Conversation"), "gtk-save-as", GTK_SIGNAL_FUNC(save_convo), c, 0, 0, NULL); 
-
-	gaim_new_item_from_stock(menu, _("View _History"), NULL, GTK_SIGNAL_FUNC(conv_show_log), GINT_TO_POINTER(c->name), 0, 0, NULL); 
+	gaim_new_item_from_stock(menu, _("_Save Conversation"), "gtk-save-as", G_CALLBACK(save_convo), c, 0, 0, NULL); 
+
+	gaim_new_item_from_stock(menu, _("View _History"), NULL, G_CALLBACK(conv_show_log), GINT_TO_POINTER(c->name), 0, 0, NULL); 
 
 	menuitem = gtk_menu_item_new();
 	gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
 /*
 	c->sendfile_btn = gaim_new_item_from_pixbuf(menu, _("Send File"), "send-file-small.png", NULL, NULL, 0, 0, NULL); */
 
-	gaim_new_item_from_pixbuf(menu, _("Insert _URL"), "insert-link-small.png", GTK_SIGNAL_FUNC(insert_link_cb), c, 0, 0, NULL); 
-	c->image_menubtn = gaim_new_item_from_pixbuf(menu, _("Insert _Image"), "insert-image-small.png", GTK_SIGNAL_FUNC(insert_image), c, 0, 0, NULL); 
+	gaim_new_item_from_pixbuf(menu, _("Insert _URL"), "insert-link-small.png", G_CALLBACK(insert_link_cb), c, 0, 0, NULL); 
+	c->image_menubtn = gaim_new_item_from_pixbuf(menu, _("Insert _Image"), "insert-image-small.png", G_CALLBACK(insert_image), c, 0, 0, NULL); 
 
 	menuitem = gtk_menu_item_new();
 	gtk_menu_shell_append(GTK_MENU_SHELL(menu), menuitem);
 
-	gaim_new_item_from_stock(menu, _("_Close"), "gtk-close", GTK_SIGNAL_FUNC(close_callback), c, 0, 0, NULL); 
+	gaim_new_item_from_stock(menu, _("_Close"), "gtk-close", G_CALLBACK(close_callback), c, 0, 0, NULL); 
 
 	/* The Options  menu */
 	menu = gtk_menu_new();
@@ -2232,7 +2232,7 @@
 
 	state_lock = 0;
 
-	gtk_signal_connect(GTK_OBJECT(menuitem), "toggled", GTK_SIGNAL_FUNC(toggle_loggle), c);
+	g_signal_connect(GTK_OBJECT(menuitem), "toggled", G_CALLBACK(toggle_loggle), c);
 
 	/* Sounds */
 
@@ -2240,7 +2240,7 @@
 
 	menuitem = gtk_check_menu_item_new_with_mnemonic(_("Enable _Sounds"));
 	c->makesound = 1;
-	gtk_signal_connect(GTK_OBJECT(menuitem), "toggled", GTK_SIGNAL_FUNC(toggle_sound), c);
+	g_signal_connect(GTK_OBJECT(menuitem), "toggled", G_CALLBACK(toggle_sound), c);
 	state_lock = 1;
 	gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(menuitem), TRUE);
 	state_lock = 0;
@@ -2294,21 +2294,21 @@
 		button = gaim_pixbuf_toolbar_button_from_stock("gtk-bold");
 		gtk_size_group_add_widget(sg, button);
 		gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(do_bold), c);
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(do_bold), c);
 		c->bold = button; /* We should remember this */
 
 		/* Italic */
 		button = gaim_pixbuf_toolbar_button_from_stock("gtk-italic");
 		gtk_size_group_add_widget(sg, button);
 		gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(do_italic), c);
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(do_italic), c);
 		c->italic = button; /* We should remember this */
 
 		/* Underline */
 		button = gaim_pixbuf_toolbar_button_from_stock("gtk-underline");
 		gtk_size_group_add_widget(sg, button);
 		gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(do_underline), c);
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(do_underline), c);
 		c->underline = button; /* We should remember this */
 
 		/* Sep */
@@ -2319,20 +2319,20 @@
 		button = gaim_pixbuf_toolbar_button_from_file("text_bigger.png");
 		gtk_size_group_add_widget(sg, button);
 		gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(do_big), c);
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(do_big), c);
 		
 		/* Normal Font Size */
 		button = gaim_pixbuf_toolbar_button_from_file("text_normal.png");
 		gtk_size_group_add_widget(sg, button);
 		gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(do_normal), c);
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(do_normal), c);
 		c->font = button; /* We should remember this */
 		
 		/* Decrease font size */
 		button = gaim_pixbuf_toolbar_button_from_file("text_smaller.png");
 		gtk_size_group_add_widget(sg, button);
 		gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(do_small), c);
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(do_small), c);
 
 		/* Sep */
 		sep = gtk_vseparator_new();
@@ -2342,14 +2342,14 @@
 		button = gaim_pixbuf_toolbar_button_from_file("change-fgcolor-small.png");
 		gtk_size_group_add_widget(sg, button);
 		gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_fg_color), c);
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(toggle_fg_color), c);
 		c->fgcolorbtn = button; /* We should remember this */
 
 		/* Font Color */
 		button = gaim_pixbuf_toolbar_button_from_file("change-bgcolor-small.png");
 		gtk_size_group_add_widget(sg, button);
 		gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_bg_color), c);
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(toggle_bg_color), c);
 		c->bgcolorbtn = button; /* We should remember this */
 
 
@@ -2359,21 +2359,21 @@
 
 		/* Insert IM Image  */
 		button = gaim_pixbuf_toolbar_button_from_file("insert-image-small.png");
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(insert_image), c);
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(insert_image), c);
 		gtk_size_group_add_widget(sg, button);
 		gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
 		c->imagebtn = button;
 
 		/* Insert Link  */
 		button = gaim_pixbuf_toolbar_button_from_file("insert-link-small.png");
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_link), c);
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(toggle_link), c);
 		gtk_size_group_add_widget(sg, button);
 		gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
 		c->link = button;
 
 		/* Insert Smiley */
 		button = gaim_pixbuf_toolbar_button_from_file("insert-smiley-small.png");
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(insert_smiley), c);
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(insert_smiley), c);
 		gtk_size_group_add_widget(sg, button);
 		gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
 		c->smiley = button;
@@ -2476,7 +2476,7 @@
 	}
 
 	if (rebuild) {
-		gtk_signal_connect(GTK_OBJECT(c->add), "clicked", GTK_SIGNAL_FUNC(add_callback), c);
+		g_signal_connect(GTK_OBJECT(c->add), "clicked", G_CALLBACK(add_callback), c);
 		gtk_box_pack_start(GTK_BOX(parent), c->add, FALSE, FALSE, 0);
 		gtk_box_reorder_child(GTK_BOX(parent), c->add, 3);
 		gtk_button_set_relief(GTK_BUTTON(c->add), GTK_RELIEF_NONE);
@@ -2502,8 +2502,8 @@
 			g_snprintf(buf, sizeof buf, "%s (%s)", c->username, c->prpl->name);
 			opt = gtk_menu_item_new_with_label(buf);
 			gtk_object_set_user_data(GTK_OBJECT(opt), cnv);
-			gtk_signal_connect(GTK_OBJECT(opt), "activate",
-					   GTK_SIGNAL_FUNC(convo_sel_send), c);
+			g_signal_connect(GTK_OBJECT(opt), "activate",
+					   G_CALLBACK(convo_sel_send), c);
 			gtk_widget_show(opt);
 			gtk_menu_shell_append(GTK_MENU_SHELL(menu), opt);
 			g = g->next;
@@ -2844,8 +2844,8 @@
 			gtk_container_border_width(GTK_CONTAINER(win), 0);
 			gtk_widget_realize(win);
 			gtk_window_set_title(GTK_WINDOW(win), _("Gaim - Conversations"));
-			gtk_signal_connect(GTK_OBJECT(win), "delete_event",
-					   GTK_SIGNAL_FUNC(delete_all_convo), NULL);
+			g_signal_connect(GTK_OBJECT(win), "delete_event",
+					   G_CALLBACK(delete_all_convo), NULL);
 
 			convo_notebook = gtk_notebook_new();
 			if ((convo_options & OPT_CONVO_COMBINE) && (chat_options & OPT_CHAT_ONE_WINDOW))
@@ -2880,8 +2880,8 @@
 			convo_menubar = menubar;
 
 			gtk_container_add(GTK_CONTAINER(win), testidea);
-			gtk_signal_connect(GTK_OBJECT(convo_notebook), "switch-page",
-					   GTK_SIGNAL_FUNC(convo_switch), NULL);
+			g_signal_connect(GTK_OBJECT(convo_notebook), "switch-page",
+					   G_CALLBACK(convo_switch), NULL);
 		} else
 			win = c->window = all_convos;
 
@@ -2896,7 +2896,7 @@
 		gtk_button_set_relief(GTK_BUTTON(c->close), GTK_RELIEF_NONE);
 		c->tab_label = gtk_label_new(c->name);
 
-		gtk_signal_connect(GTK_OBJECT(c->close), "clicked", GTK_SIGNAL_FUNC(close_callback), c);
+		g_signal_connect(GTK_OBJECT(c->close), "clicked", G_CALLBACK(close_callback), c);
 
 		gtk_box_pack_start(GTK_BOX(tabby), c->tab_label, FALSE, FALSE, 0);
 		gtk_box_pack_start(GTK_BOX(tabby), c->close, FALSE, FALSE, 0);
@@ -2913,8 +2913,8 @@
 		gtk_window_set_policy(GTK_WINDOW(win), TRUE, TRUE, TRUE);
 		gtk_container_border_width(GTK_CONTAINER(win), 0);
 		gtk_widget_realize(win);
-		gtk_signal_connect(GTK_OBJECT(win), "delete_event",
-				   GTK_SIGNAL_FUNC(delete_event_convo), c);
+		g_signal_connect(GTK_OBJECT(win), "delete_event",
+				   G_CALLBACK(delete_event_convo), c);
 	}
 	set_convo_title(c);
 
@@ -3017,7 +3017,7 @@
 	close = picture_button2(win, _("Close"), cancel_xpm, dispstyle);
 	c->close = close;
 	gtk_object_set_user_data(GTK_OBJECT(close), c);
-	gtk_signal_connect(GTK_OBJECT(close), "clicked", GTK_SIGNAL_FUNC(close_callback), c);
+	g_signal_connect(GTK_OBJECT(close), "clicked", G_CALLBACK(close_callback), c);
 	gtk_box_pack_end(GTK_BOX(bbox), close, dispstyle, dispstyle, 0);
 	gtk_widget_show(close);
 	
@@ -3032,7 +3032,7 @@
 				(dispstyle == 1 ? NULL : "gtk-convert"),
 				GAIM_BUTTON_VERTICAL);
 	c->send = send;
-	gtk_signal_connect(GTK_OBJECT(send), "clicked", GTK_SIGNAL_FUNC(send_callback), c);
+	g_signal_connect(GTK_OBJECT(send), "clicked", G_CALLBACK(send_callback), c);
 	gtk_box_pack_end(GTK_BOX(bbox), send, FALSE, FALSE, 0);
 	gtk_widget_show(send);
 
@@ -3055,7 +3055,7 @@
 				GAIM_BUTTON_VERTICAL);
 
 	c->add = add;
-	gtk_signal_connect(GTK_OBJECT(add), "clicked", GTK_SIGNAL_FUNC(add_callback), c);
+	g_signal_connect(GTK_OBJECT(add), "clicked", G_CALLBACK(add_callback), c);
 	gtk_box_pack_start(GTK_BOX(bbox), add, FALSE, FALSE, 0);
 	gtk_widget_show(add);
 
@@ -3064,7 +3064,7 @@
 				(dispstyle == 1 ? NULL : "gtk-dialog-warning"),
 				GAIM_BUTTON_VERTICAL);
 	c->warn = warn;
-	gtk_signal_connect(GTK_OBJECT(warn), "clicked", GTK_SIGNAL_FUNC(warn_callback), c);
+	g_signal_connect(GTK_OBJECT(warn), "clicked", G_CALLBACK(warn_callback), c);
 	gtk_box_pack_start(GTK_BOX(bbox), warn, FALSE, FALSE, 0);
 	gtk_widget_show(warn);
 
@@ -3073,7 +3073,7 @@
 				(dispstyle == 1 ? NULL : "gtk-find"),
 				GAIM_BUTTON_VERTICAL);
 	c->info = info;
-	gtk_signal_connect(GTK_OBJECT(info), "clicked", GTK_SIGNAL_FUNC(info_callback), c);
+	g_signal_connect(GTK_OBJECT(info), "clicked", G_CALLBACK(info_callback), c);
 	gtk_box_pack_start(GTK_BOX(bbox), info, FALSE, FALSE, 0);
 	gtk_widget_show(info);
 
@@ -3083,7 +3083,7 @@
 				(dispstyle == 1 ? NULL : "gtk-stop"),
 				GAIM_BUTTON_VERTICAL);
 	c->block = block;
-	gtk_signal_connect(GTK_OBJECT(block), "clicked", GTK_SIGNAL_FUNC(block_callback), c);
+	g_signal_connect(GTK_OBJECT(block), "clicked", G_CALLBACK(block_callback), c);
 	gtk_box_pack_start(GTK_BOX(bbox), block, FALSE, FALSE, 0);
 	gtk_widget_show(block);
 
@@ -3584,12 +3584,12 @@
 	gtk_file_selection_hide_fileop_buttons(GTK_FILE_SELECTION(c->save_icon));
 	g_snprintf(buf, BUF_LEN - 1, "%s" G_DIR_SEPARATOR_S "%s.icon", gaim_home_dir(), c->name);
 	gtk_file_selection_set_filename(GTK_FILE_SELECTION(c->save_icon), buf);
-	gtk_signal_connect(GTK_OBJECT(c->save_icon), "delete_event",
-			   GTK_SIGNAL_FUNC(des_save_icon), c);
-	gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(c->save_icon)->ok_button), "clicked",
-			   GTK_SIGNAL_FUNC(do_save_icon), c);
-	gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(c->save_icon)->cancel_button), "clicked",
-			   GTK_SIGNAL_FUNC(cancel_save_icon), c);
+	g_signal_connect(GTK_OBJECT(c->save_icon), "delete_event",
+			   G_CALLBACK(des_save_icon), c);
+	g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(c->save_icon)->ok_button), "clicked",
+			   G_CALLBACK(do_save_icon), c);
+	g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(c->save_icon)->cancel_button), "clicked",
+			   G_CALLBACK(cancel_save_icon), c);
 
 	gtk_widget_show(c->save_icon);
 }
@@ -3615,26 +3615,26 @@
 
 	if (c->icon_timer) {
 		button = gtk_menu_item_new_with_label(_("Disable Animation"));
-		gtk_signal_connect(GTK_OBJECT(button), "activate", GTK_SIGNAL_FUNC(stop_anim), c);
+		g_signal_connect(GTK_OBJECT(button), "activate", G_CALLBACK(stop_anim), c);
 		gtk_menu_shell_append(GTK_MENU_SHELL(menu), button);
 		gtk_widget_show(button);
 	}
 	 else if (c->anim && !(gdk_pixbuf_animation_is_static_image(c->anim))) 
 	{
 		button = gtk_menu_item_new_with_label(_("Enable Animation"));
-		gtk_signal_connect(GTK_OBJECT(button), "activate", GTK_SIGNAL_FUNC(start_anim), c);
+		g_signal_connect(GTK_OBJECT(button), "activate", G_CALLBACK(start_anim), c);
 		gtk_menu_shell_append(GTK_MENU_SHELL(menu), button);
 		gtk_widget_show(button);
 	}
 
 	button = gtk_menu_item_new_with_label(_("Hide Icon"));
-	gtk_signal_connect_object(GTK_OBJECT(button), "activate",
-				  GTK_SIGNAL_FUNC(remove_icon), (void *)c);
+	g_signal_connect_swapped(GTK_OBJECT(button), "activate",
+				  G_CALLBACK(remove_icon), (void *)c);
 	gtk_menu_shell_append(GTK_MENU_SHELL(menu), button);
 	gtk_widget_show(button);
 
 	button = gtk_menu_item_new_with_label(_("Save Icon As..."));
-	gtk_signal_connect(GTK_OBJECT(button), "activate", GTK_SIGNAL_FUNC(save_icon), c);
+	g_signal_connect(GTK_OBJECT(button), "activate", G_CALLBACK(save_icon), c);
 	gtk_menu_shell_append(GTK_MENU_SHELL(menu), button);
 	gtk_widget_show(button);
 
@@ -3744,7 +3744,7 @@
 
 	event = gtk_event_box_new();
 	gtk_container_add(GTK_CONTAINER(frame), event);
-	gtk_signal_connect(GTK_OBJECT(event), "button-press-event", GTK_SIGNAL_FUNC(icon_menu), c);
+	g_signal_connect(GTK_OBJECT(event), "button-press-event", G_CALLBACK(icon_menu), c);
 	gtk_widget_show(event);
 
 	c->icon = gtk_pixmap_new(pm, bm);
--- a/src/dialogs.c	Tue Dec 31 18:21:32 2002 +0000
+++ b/src/dialogs.c	Tue Dec 31 19:32:38 2002 +0000
@@ -753,8 +753,8 @@
 				opt = gtk_menu_item_new_with_label(buf);
 				gtk_object_set_user_data(GTK_OBJECT(opt), info);
 				
-				gtk_signal_connect(GTK_OBJECT(opt), "activate",
-						   GTK_SIGNAL_FUNC(show_info_select_account), c);
+				g_signal_connect(GTK_OBJECT(opt), "activate",
+						   G_CALLBACK(show_info_select_account), c);
 				
 				gtk_menu_append(GTK_MENU(menu), opt);
 				g = g->next;
@@ -847,8 +847,8 @@
 			opt = gtk_menu_item_new_with_label(buf);
 			gtk_object_set_user_data(GTK_OBJECT(opt), info);
 
-			gtk_signal_connect(GTK_OBJECT(opt), "activate",
-					   GTK_SIGNAL_FUNC(show_info_select_account), c);
+			g_signal_connect(GTK_OBJECT(opt), "activate",
+					   G_CALLBACK(show_info_select_account), c);
 
 			gtk_menu_append(GTK_MENU(menu), opt);
 			g = g->next;
@@ -1020,8 +1020,8 @@
 				c->username, c->prpl->name);
 		opt = gtk_menu_item_new_with_label(buf);
 		gtk_object_set_user_data(GTK_OBJECT(opt), b);
-		gtk_signal_connect(GTK_OBJECT(opt), "activate",
-				GTK_SIGNAL_FUNC(addbuddy_select_account),
+		g_signal_connect(GTK_OBJECT(opt), "activate",
+				G_CALLBACK(addbuddy_select_account),
 				c);
 		gtk_widget_show(opt);
 		gtk_menu_append(GTK_MENU(menu), opt);
@@ -1068,8 +1068,8 @@
 	gtk_window_set_title(GTK_WINDOW(a->window), _("Gaim - Add Buddy"));
 
 	gtk_widget_realize(a->window);
-	gtk_signal_connect(GTK_OBJECT(a->window), "destroy", GTK_SIGNAL_FUNC(destroy_dialog), a->window);
-	gtk_signal_connect(GTK_OBJECT(a->window), "destroy", GTK_SIGNAL_FUNC(free_dialog), a);
+	g_signal_connect(GTK_OBJECT(a->window), "destroy", G_CALLBACK(destroy_dialog), a->window);
+	g_signal_connect(GTK_OBJECT(a->window), "destroy", G_CALLBACK(free_dialog), a);
 	dialogwindows = g_list_prepend(dialogwindows, a->window);
 
 	mainbox = gtk_vbox_new(FALSE, 5);
@@ -1094,7 +1094,7 @@
 	gtk_widget_grab_focus(a->entry);
 	if (buddy != NULL)
 		gtk_entry_set_text(GTK_ENTRY(a->entry), buddy);
-	gtk_signal_connect(GTK_OBJECT(a->entry), "activate", GTK_SIGNAL_FUNC(do_add_buddy), a);
+	g_signal_connect(GTK_OBJECT(a->entry), "activate", G_CALLBACK(do_add_buddy), a);
 
 	label = gtk_label_new(_("Alias"));
 	gtk_table_attach_defaults(GTK_TABLE(table), label, 0, 1, 1, 2);
@@ -1127,11 +1127,11 @@
 
 	add = picture_button(a->window, _("Add"), add_xpm);
 	gtk_box_pack_end(GTK_BOX(bbox), add, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(add), "clicked", GTK_SIGNAL_FUNC(do_add_buddy), a);
+	g_signal_connect(GTK_OBJECT(add), "clicked", G_CALLBACK(do_add_buddy), a);
 
 	cancel = picture_button(a->window, _("Cancel"), cancel_xpm);
 	gtk_box_pack_end(GTK_BOX(bbox), cancel, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(cancel), "clicked", GTK_SIGNAL_FUNC(destroy_dialog), a->window);
+	g_signal_connect(GTK_OBJECT(cancel), "clicked", G_CALLBACK(destroy_dialog), a->window);
 
 	gtk_widget_show_all(a->window);
 	if (group != NULL) 
@@ -1171,7 +1171,7 @@
 		    gtk_radio_button_new_with_label(gtk_radio_button_group(GTK_RADIO_BUTTON(set)),
 						    label);
 	gtk_box_pack_start(GTK_BOX(box), opt, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(opt), "toggled", GTK_SIGNAL_FUNC(set_deny_mode), (void *)which);
+	g_signal_connect(GTK_OBJECT(opt), "toggled", G_CALLBACK(set_deny_mode), (void *)which);
 	gtk_widget_show(opt);
 	if (current_deny_gc->permdeny == which)
 		gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(opt), TRUE);
@@ -1298,7 +1298,7 @@
 			continue;
 		g_snprintf(buf, sizeof buf, "%s (%s)", gc->username, gc->prpl->name);
 		opt = gtk_menu_item_new_with_label(buf);
-		gtk_signal_connect(GTK_OBJECT(opt), "activate", GTK_SIGNAL_FUNC(deny_gc_opt), gc);
+		g_signal_connect(GTK_OBJECT(opt), "activate", G_CALLBACK(deny_gc_opt), gc);
 		gtk_widget_show(opt);
 		gtk_menu_append(GTK_MENU(menu), opt);
 		if (gc == current_deny_gc)
@@ -1411,7 +1411,7 @@
 	gtk_window_set_policy(GTK_WINDOW(pwin), FALSE, TRUE, TRUE);
 	gtk_window_set_role(GTK_WINDOW(pwin), "privacy");
 	gtk_window_set_title(GTK_WINDOW(pwin), _("Gaim - Privacy"));
-	gtk_signal_connect(GTK_OBJECT(pwin), "destroy", GTK_SIGNAL_FUNC(destroy_privacy), NULL);
+	g_signal_connect(GTK_OBJECT(pwin), "destroy", G_CALLBACK(destroy_privacy), NULL);
 	gtk_widget_realize(pwin);
 
 	gtk_widget_set_usize(pwin, 0, 400);
@@ -1435,7 +1435,7 @@
 
 	deny_opt_menu = gtk_option_menu_new();
 	gtk_box_pack_start(GTK_BOX(deny_conn_hbox), deny_opt_menu, FALSE, FALSE, 5);
-	gtk_signal_connect(GTK_OBJECT(deny_opt_menu), "destroy", GTK_SIGNAL_FUNC(des_deny_opt), NULL);
+	g_signal_connect(GTK_OBJECT(deny_opt_menu), "destroy", G_CALLBACK(des_deny_opt), NULL);
 	gtk_widget_show(deny_opt_menu);
 
 	build_deny_menu();
@@ -1472,11 +1472,11 @@
 	gtk_widget_show(bbox);
 
 	button = picture_button(pwin, _("Add"), gnome_add_xpm);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(pref_deny_add), (void *)TRUE);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(pref_deny_add), (void *)TRUE);
 	gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 5);
 
 	button = picture_button(pwin, _("Remove"), gnome_remove_xpm);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(pref_deny_rem), (void *)TRUE);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(pref_deny_rem), (void *)TRUE);
 	gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 5);
 
 	vbox = gtk_vbox_new(FALSE, 5);
@@ -1506,11 +1506,11 @@
 	gtk_widget_show(bbox);
 
 	button = picture_button(pwin, _("Add"), gnome_add_xpm);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(pref_deny_add), FALSE);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(pref_deny_add), FALSE);
 	gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 5);
 
 	button = picture_button(pwin, _("Remove"), gnome_remove_xpm);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(pref_deny_rem), FALSE);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(pref_deny_rem), FALSE);
 	gtk_box_pack_start(GTK_BOX(bbox), button, FALSE, FALSE, 5);
 
 	sep = gtk_hseparator_new();
@@ -1522,7 +1522,7 @@
 	gtk_widget_show(hbox);
 	close_button = picture_button(pwin, _("Close"), cancel_xpm);
 	gtk_box_pack_end(GTK_BOX(hbox), close_button, FALSE, FALSE, 5);
-	gtk_signal_connect_object(GTK_OBJECT(close_button), "clicked", GTK_SIGNAL_FUNC(gtk_widget_destroy), pwin);
+	g_signal_connect_swapped(GTK_OBJECT(close_button), "clicked", G_CALLBACK(gtk_widget_destroy), pwin);
 
 	gtk_widget_show(pwin);
 }
@@ -1629,7 +1629,7 @@
 		g_snprintf(buf, sizeof buf, "%s (%s)", a->username, (p && p->name)?p->name:"Unknown");
 		opt = gtk_menu_item_new_with_label(buf);
 		gtk_object_set_user_data(GTK_OBJECT(opt), a);
-		gtk_signal_connect(GTK_OBJECT(opt), "activate", GTK_SIGNAL_FUNC(pounce_choose), b);
+		g_signal_connect(GTK_OBJECT(opt), "activate", G_CALLBACK(pounce_choose), b);
 		gtk_menu_append(GTK_MENU(menu), opt);
 		gtk_widget_show(opt);
 
@@ -1679,7 +1679,7 @@
 	gtk_window_set_policy(GTK_WINDOW(b->window), FALSE, TRUE, TRUE);
 	gtk_window_set_role(GTK_WINDOW(b->window), "new_bp");
 	gtk_window_set_title(GTK_WINDOW(b->window), _("Gaim - New Buddy Pounce"));
-	gtk_signal_connect(GTK_OBJECT(b->window), "destroy", GTK_SIGNAL_FUNC(destroy_dialog), b->window);
+	g_signal_connect(GTK_OBJECT(b->window), "destroy", G_CALLBACK(destroy_dialog), b->window);
 	gtk_widget_realize(b->window);
 
 	vbox = gtk_vbox_new(FALSE, 5);
@@ -1812,7 +1812,7 @@
 
 	b->messentry = gtk_entry_new();
 	gtk_table_attach(GTK_TABLE(table), b->messentry, 1, 2, 1, 2, GTK_FILL | GTK_EXPAND, 0, 0, 0);
-	gtk_signal_connect(GTK_OBJECT(b->messentry), "activate", GTK_SIGNAL_FUNC(do_new_bp), b);
+	g_signal_connect(GTK_OBJECT(b->messentry), "activate", G_CALLBACK(do_new_bp), b);
 	if(edit_bp) {
 		gtk_widget_set_sensitive(GTK_WIDGET(b->messentry), 
 					(edit_bp->options & OPT_POUNCE_SEND_IM) ? TRUE : FALSE);
@@ -1820,7 +1820,7 @@
 	}
 	gtk_widget_show(b->messentry);
 
-	gtk_signal_connect(GTK_OBJECT(b->sendim), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive),	b->messentry);
+	g_signal_connect(GTK_OBJECT(b->sendim), "clicked", G_CALLBACK(toggle_sensitive),	b->messentry);
 
 	b->command = gtk_check_button_new_with_label(_("Execute command on pounce"));
 	gtk_table_attach(GTK_TABLE(table), b->command, 0, 1, 2, 3, GTK_FILL, 0, 0, 0);
@@ -1833,7 +1833,7 @@
 
 	b->commentry = gtk_entry_new();
 	gtk_table_attach(GTK_TABLE(table), b->commentry, 1, 2, 2, 3, GTK_FILL | GTK_EXPAND, 0, 0, 0);
-	gtk_signal_connect(GTK_OBJECT(b->commentry), "activate", GTK_SIGNAL_FUNC(do_new_bp), b);
+	g_signal_connect(GTK_OBJECT(b->commentry), "activate", G_CALLBACK(do_new_bp), b);
 	if(edit_bp) {
 		gtk_widget_set_sensitive(GTK_WIDGET(b->commentry), 
 					(edit_bp->options & OPT_POUNCE_COMMAND) ? TRUE : FALSE);
@@ -1842,7 +1842,7 @@
 	else
 		gtk_widget_set_sensitive(GTK_WIDGET(b->commentry), FALSE);
 	gtk_widget_show(b->commentry);
-	gtk_signal_connect(GTK_OBJECT(b->command), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), b->commentry);
+	g_signal_connect(GTK_OBJECT(b->command), "clicked", G_CALLBACK(toggle_sensitive), b->commentry);
 	
 	b->sound = gtk_check_button_new_with_label(_("Play sound on pounce"));
 	if(edit_bp)
@@ -1855,7 +1855,7 @@
 
 	b->soundentry = gtk_entry_new();
 	gtk_table_attach(GTK_TABLE(table), b->soundentry, 1, 2, 3, 4, GTK_FILL | GTK_EXPAND, 0, 0, 0);
-	gtk_signal_connect(GTK_OBJECT(b->soundentry), "activate", GTK_SIGNAL_FUNC(do_new_bp), b);
+	g_signal_connect(GTK_OBJECT(b->soundentry), "activate", G_CALLBACK(do_new_bp), b);
 	if(edit_bp) {
 		gtk_widget_set_sensitive(GTK_WIDGET(b->soundentry), 
 					(edit_bp->options & OPT_POUNCE_SOUND) ? TRUE : FALSE);
@@ -1863,7 +1863,7 @@
 	} else 
 		gtk_widget_set_sensitive(GTK_WIDGET(b->soundentry), FALSE);
 	gtk_widget_show(b->soundentry);
-	gtk_signal_connect(GTK_OBJECT(b->sound), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), b->soundentry);
+	g_signal_connect(GTK_OBJECT(b->sound), "clicked", G_CALLBACK(toggle_sensitive), b->soundentry);
 	/* </pounce type="action"> */
 
 	b->save = gtk_check_button_new_with_label(_("Save this pounce after activation"));
@@ -1888,13 +1888,13 @@
 
 	button = gaim_pixbuf_button_from_stock(_("_Save"), "gtk-execute", GAIM_BUTTON_HORIZONTAL);
 	gtk_size_group_add_widget(sg, button);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(do_new_bp), b);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(do_new_bp), b);
 	gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0);
 	gtk_widget_show(button);
 
 	button = gaim_pixbuf_button_from_stock(_("C_ancel"), "gtk-cancel", GAIM_BUTTON_HORIZONTAL);
 	gtk_size_group_add_widget(sg, button);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(destroy_dialog), b->window);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(destroy_dialog), b->window);
 	gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0);
 	gtk_widget_show(button);
 
@@ -1964,7 +1964,7 @@
 	gtk_window_set_role(GTK_WINDOW(b->window), "set_dir");
 	gtk_window_set_policy(GTK_WINDOW(b->window), FALSE, TRUE, TRUE);
 	gtk_window_set_title(GTK_WINDOW(b->window), _("Gaim - Set Dir Info"));
-	gtk_signal_connect(GTK_OBJECT(b->window), "destroy", GTK_SIGNAL_FUNC(destroy_dialog), b->window);
+	g_signal_connect(GTK_OBJECT(b->window), "destroy", G_CALLBACK(destroy_dialog), b->window);
 	gtk_widget_realize(b->window);
 
 	fbox = gtk_vbox_new(FALSE, 5);
@@ -2097,11 +2097,11 @@
 
 	b->save = picture_button(b->window, _("Save"), save_xpm);
 	gtk_box_pack_end(GTK_BOX(bot), b->save, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(b->save), "clicked", GTK_SIGNAL_FUNC(do_set_dir), b);
+	g_signal_connect(GTK_OBJECT(b->save), "clicked", G_CALLBACK(do_set_dir), b);
 
 	b->cancel = picture_button(b->window, _("Cancel"), cancel_xpm);
 	gtk_box_pack_end(GTK_BOX(bot), b->cancel, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(b->cancel), "clicked", GTK_SIGNAL_FUNC(destroy_dialog), b->window);
+	g_signal_connect(GTK_OBJECT(b->cancel), "clicked", G_CALLBACK(destroy_dialog), b->window);
 
 	gtk_window_set_focus(GTK_WINDOW(b->window), b->first);
 
@@ -2148,7 +2148,7 @@
 	gtk_window_set_policy(GTK_WINDOW(b->window), FALSE, TRUE, TRUE);
 	gtk_window_set_role(GTK_WINDOW(b->window), "change_passwd");
 	gtk_window_set_title(GTK_WINDOW(b->window), _("Gaim - Password Change"));
-	gtk_signal_connect(GTK_OBJECT(b->window), "destroy", GTK_SIGNAL_FUNC(destroy_dialog), b->window);
+	g_signal_connect(GTK_OBJECT(b->window), "destroy", G_CALLBACK(destroy_dialog), b->window);
 	gtk_widget_realize(b->window);
 	dialogwindows = g_list_prepend(dialogwindows, b->window);
 
@@ -2220,11 +2220,11 @@
 
 	b->ok = picture_button(b->window, _("OK"), ok_xpm);
 	gtk_box_pack_end(GTK_BOX(hbox), b->ok, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(b->ok), "clicked", GTK_SIGNAL_FUNC(do_change_password), b);
+	g_signal_connect(GTK_OBJECT(b->ok), "clicked", G_CALLBACK(do_change_password), b);
 
 	b->cancel = picture_button(b->window, _("Cancel"), cancel_xpm);
 	gtk_box_pack_end(GTK_BOX(hbox), b->cancel, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(b->cancel), "clicked", GTK_SIGNAL_FUNC(destroy_dialog), b->window);
+	g_signal_connect(GTK_OBJECT(b->cancel), "clicked", G_CALLBACK(destroy_dialog), b->window);
 
 	gtk_widget_show(b->window);
 }
@@ -2247,7 +2247,7 @@
 	gtk_window_set_role(GTK_WINDOW(b->window), "set_info");
 	dialogwindows = g_list_prepend(dialogwindows, b->window);
 	gtk_window_set_title(GTK_WINDOW(b->window), _("Gaim - Set User Info"));
-	gtk_signal_connect(GTK_OBJECT(b->window), "destroy", GTK_SIGNAL_FUNC(destroy_dialog), b->window);
+	g_signal_connect(GTK_OBJECT(b->window), "destroy", G_CALLBACK(destroy_dialog), b->window);
 	gtk_widget_realize(b->window);
 
 	vbox = gtk_vbox_new(FALSE, 5);
@@ -2285,11 +2285,11 @@
 
 	b->save = picture_button(b->window, _("Save"), save_xpm);
 	gtk_box_pack_end(GTK_BOX(buttons), b->save, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(b->save), "clicked", GTK_SIGNAL_FUNC(do_save_info), b);
+	g_signal_connect(GTK_OBJECT(b->save), "clicked", G_CALLBACK(do_save_info), b);
 
 	b->cancel = picture_button(b->window, _("Cancel"), cancel_xpm);
 	gtk_box_pack_end(GTK_BOX(buttons), b->cancel, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(b->cancel), "clicked", GTK_SIGNAL_FUNC(destroy_dialog), b->window);
+	g_signal_connect(GTK_OBJECT(b->cancel), "clicked", G_CALLBACK(destroy_dialog), b->window);
 
 	gtk_widget_show(b->window);
 
@@ -2356,7 +2356,7 @@
 		gtk_window_set_title(GTK_WINDOW(b->window), "Gaim");
 		gtk_container_border_width(GTK_CONTAINER(b->window), 5);
 		gtk_widget_realize(GTK_WIDGET(b->window));
-		gtk_signal_connect(GTK_OBJECT(b->window), "destroy", GTK_SIGNAL_FUNC(info_dlg_free), b);
+		g_signal_connect(GTK_OBJECT(b->window), "destroy", G_CALLBACK(info_dlg_free), b);
 
 		bbox = gtk_vbox_new(FALSE, 5);
 		gtk_container_add(GTK_CONTAINER(b->window), bbox);
@@ -2377,7 +2377,7 @@
 		gaim_setup_imhtml(text);
 
 		ok = picture_button(b->window, _("OK"), ok_xpm);
-		gtk_signal_connect_object(GTK_OBJECT(ok), "clicked", GTK_SIGNAL_FUNC(gtk_widget_destroy),
+		g_signal_connect_swapped(GTK_OBJECT(ok), "clicked", G_CALLBACK(gtk_widget_destroy),
 					  GTK_OBJECT(b->window));
 		gtk_box_pack_start(GTK_BOX(bbox), ok, FALSE, FALSE, 0);
 
@@ -2521,10 +2521,10 @@
 
 
 	/* Handle closes right */
-	gtk_signal_connect(GTK_OBJECT(p->window), "destroy", GTK_SIGNAL_FUNC(destroy_dialog), p->window);
-	gtk_signal_connect(GTK_OBJECT(cancel), "clicked", GTK_SIGNAL_FUNC(destroy_dialog), p->window);
-	gtk_signal_connect(GTK_OBJECT(add), "clicked", GTK_SIGNAL_FUNC(do_add_perm), p);
-	gtk_signal_connect(GTK_OBJECT(p->entry), "activate", GTK_SIGNAL_FUNC(do_add_perm), p);
+	g_signal_connect(GTK_OBJECT(p->window), "destroy", G_CALLBACK(destroy_dialog), p->window);
+	g_signal_connect(GTK_OBJECT(cancel), "clicked", G_CALLBACK(destroy_dialog), p->window);
+	g_signal_connect(GTK_OBJECT(add), "clicked", G_CALLBACK(do_add_perm), p);
+	g_signal_connect(GTK_OBJECT(p->entry), "activate", G_CALLBACK(do_add_perm), p);
 
 	/* Finish up */
 	gtk_widget_show(add);
@@ -2602,12 +2602,12 @@
 		g_snprintf(buf, BUF_LEN - 1, "%s" G_DIR_SEPARATOR_S "%s.log", gaim_home_dir(), normalize(c->name));
 		gtk_object_set_user_data(GTK_OBJECT(c->log_dialog), "log dialog");
 		gtk_file_selection_set_filename(GTK_FILE_SELECTION(c->log_dialog), buf);
-		gtk_signal_connect(GTK_OBJECT(c->log_dialog), "delete_event",
-				   GTK_SIGNAL_FUNC(delete_event_dialog), c);
-		gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(c->log_dialog)->ok_button), "clicked",
-				   GTK_SIGNAL_FUNC(do_log), c);
-		gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(c->log_dialog)->cancel_button),
-				   "clicked", GTK_SIGNAL_FUNC(cancel_log), c);
+		g_signal_connect(GTK_OBJECT(c->log_dialog), "delete_event",
+				   G_CALLBACK(delete_event_dialog), c);
+		g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(c->log_dialog)->ok_button), "clicked",
+				   G_CALLBACK(do_log), c);
+		g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(c->log_dialog)->cancel_button),
+				   "clicked", G_CALLBACK(cancel_log), c);
 	}
 
 	g_free(buf);
@@ -2783,9 +2783,9 @@
 	gtk_box_pack_start(GTK_BOX(fbox), frame, FALSE, FALSE, 0);
 	gtk_box_pack_start(GTK_BOX(fbox), bbox, FALSE, FALSE, 0);
 
-	gtk_signal_connect(GTK_OBJECT(b->window), "destroy", GTK_SIGNAL_FUNC(destroy_dialog), b->window);
-	gtk_signal_connect(GTK_OBJECT(cancel), "clicked", GTK_SIGNAL_FUNC(destroy_dialog), b->window);
-	gtk_signal_connect(GTK_OBJECT(ok), "clicked", GTK_SIGNAL_FUNC(do_find_info), b);
+	g_signal_connect(GTK_OBJECT(b->window), "destroy", G_CALLBACK(destroy_dialog), b->window);
+	g_signal_connect(GTK_OBJECT(cancel), "clicked", G_CALLBACK(destroy_dialog), b->window);
+	g_signal_connect(GTK_OBJECT(ok), "clicked", G_CALLBACK(do_find_info), b);
 
 	gtk_widget_show(ok);
 	gtk_widget_show(cancel);
@@ -2827,7 +2827,7 @@
 	gtk_window_set_role(GTK_WINDOW(b->window), "find_email");
 	gtk_widget_realize(b->window);
 	dialogwindows = g_list_prepend(dialogwindows, b->window);
-	gtk_signal_connect(GTK_OBJECT(b->window), "destroy", GTK_SIGNAL_FUNC(destroy_dialog), b->window);
+	g_signal_connect(GTK_OBJECT(b->window), "destroy", G_CALLBACK(destroy_dialog), b->window);
 	gtk_window_set_title(GTK_WINDOW(b->window), _("Gaim - Find Buddy By Email"));
 
 	vbox = gtk_vbox_new(FALSE, 5);
@@ -2846,18 +2846,18 @@
 
 	b->emailentry = gtk_entry_new();
 	gtk_box_pack_start(GTK_BOX(topbox), b->emailentry, TRUE, TRUE, 0);
-	gtk_signal_connect(GTK_OBJECT(b->emailentry), "activate", GTK_SIGNAL_FUNC(do_find_email), b);
+	g_signal_connect(GTK_OBJECT(b->emailentry), "activate", G_CALLBACK(do_find_email), b);
 	gtk_window_set_focus(GTK_WINDOW(b->window), b->emailentry);
 
 	bbox = gtk_hbox_new(FALSE, 5);
 	gtk_box_pack_start(GTK_BOX(vbox), bbox, FALSE, FALSE, 0);
 
 	button = picture_button(b->window, _("OK"), ok_xpm);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(do_find_email), b);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(do_find_email), b);
 	gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0);
 
 	button = picture_button(b->window, _("Cancel"), cancel_xpm);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(destroy_dialog), b->window);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(destroy_dialog), b->window);
 	gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0);
 
 	gtk_widget_show_all(b->window);
@@ -2961,10 +2961,10 @@
 		gtk_box_pack_start(GTK_BOX(fbox), bbox, TRUE, TRUE, 5);
 		gtk_widget_show(vbox);
 
-		gtk_signal_connect(GTK_OBJECT(c->link_dialog), "destroy",
-				   GTK_SIGNAL_FUNC(cancel_link), c);
-		gtk_signal_connect(GTK_OBJECT(b->cancel), "clicked", GTK_SIGNAL_FUNC(cancel_link), c);
-		gtk_signal_connect(GTK_OBJECT(b->ok), "clicked", GTK_SIGNAL_FUNC(do_add_link), b);
+		g_signal_connect(GTK_OBJECT(c->link_dialog), "destroy",
+				   G_CALLBACK(cancel_link), c);
+		g_signal_connect(GTK_OBJECT(b->cancel), "clicked", G_CALLBACK(cancel_link), c);
+		g_signal_connect(GTK_OBJECT(b->ok), "clicked", G_CALLBACK(do_add_link), b);
 
 		gtk_container_add(GTK_CONTAINER(c->link_dialog), fbox);
 		gtk_container_border_width(GTK_CONTAINER(c->link_dialog), 10);
@@ -3082,12 +3082,12 @@
 		fgcseld = gtk_color_selection_dialog_new(_("Select Text Color"));
 		gtk_color_selection_set_color(GTK_COLOR_SELECTION
 					      (GTK_COLOR_SELECTION_DIALOG(fgcseld)->colorsel), fgclr);
-		gtk_signal_connect(GTK_OBJECT(fgcseld), "delete_event",
-				   GTK_SIGNAL_FUNC(destroy_colorsel), (void *)1);
-		gtk_signal_connect(GTK_OBJECT(GTK_COLOR_SELECTION_DIALOG(fgcseld)->cancel_button),
-				   "clicked", GTK_SIGNAL_FUNC(destroy_colorsel), (void *)1);
-		gtk_signal_connect(GTK_OBJECT(GTK_COLOR_SELECTION_DIALOG(fgcseld)->ok_button), "clicked",
-				   GTK_SIGNAL_FUNC(apply_color_dlg), (void *)1);
+		g_signal_connect(GTK_OBJECT(fgcseld), "delete_event",
+				   G_CALLBACK(destroy_colorsel), (void *)1);
+		g_signal_connect(GTK_OBJECT(GTK_COLOR_SELECTION_DIALOG(fgcseld)->cancel_button),
+				   "clicked", G_CALLBACK(destroy_colorsel), (void *)1);
+		g_signal_connect(GTK_OBJECT(GTK_COLOR_SELECTION_DIALOG(fgcseld)->ok_button), "clicked",
+				   G_CALLBACK(apply_color_dlg), (void *)1);
 		gtk_widget_realize(fgcseld);
 		gtk_widget_show(fgcseld);
 		gdk_window_raise(fgcseld->window);
@@ -3104,13 +3104,13 @@
 		gtk_color_selection_set_color(GTK_COLOR_SELECTION(colorsel), fgclr);
 		gtk_object_set_user_data(GTK_OBJECT(colorsel), c);
 
-		gtk_signal_connect(GTK_OBJECT(c->fg_color_dialog), "delete_event",
-				   GTK_SIGNAL_FUNC(delete_event_dialog), c);
-		gtk_signal_connect(GTK_OBJECT(GTK_COLOR_SELECTION_DIALOG(c->fg_color_dialog)->ok_button),
-				   "clicked", GTK_SIGNAL_FUNC(do_fgcolor), colorsel);
-		gtk_signal_connect(GTK_OBJECT
+		g_signal_connect(GTK_OBJECT(c->fg_color_dialog), "delete_event",
+				   G_CALLBACK(delete_event_dialog), c);
+		g_signal_connect(GTK_OBJECT(GTK_COLOR_SELECTION_DIALOG(c->fg_color_dialog)->ok_button),
+				   "clicked", G_CALLBACK(do_fgcolor), colorsel);
+		g_signal_connect(GTK_OBJECT
 				   (GTK_COLOR_SELECTION_DIALOG(c->fg_color_dialog)->cancel_button),
-				   "clicked", GTK_SIGNAL_FUNC(cancel_fgcolor), c);
+				   "clicked", G_CALLBACK(cancel_fgcolor), c);
 
 		gtk_widget_realize(c->fg_color_dialog);
 	}
@@ -3134,12 +3134,12 @@
 		bgcseld = gtk_color_selection_dialog_new(_("Select Background Color"));
 		gtk_color_selection_set_color(GTK_COLOR_SELECTION
 					      (GTK_COLOR_SELECTION_DIALOG(bgcseld)->colorsel), bgclr);
-		gtk_signal_connect(GTK_OBJECT(bgcseld), "delete_event",
-				   GTK_SIGNAL_FUNC(destroy_colorsel), NULL);
-		gtk_signal_connect(GTK_OBJECT(GTK_COLOR_SELECTION_DIALOG(bgcseld)->cancel_button),
-				   "clicked", GTK_SIGNAL_FUNC(destroy_colorsel), NULL);
-		gtk_signal_connect(GTK_OBJECT(GTK_COLOR_SELECTION_DIALOG(bgcseld)->ok_button), "clicked",
-				   GTK_SIGNAL_FUNC(apply_color_dlg), (void *)2);
+		g_signal_connect(GTK_OBJECT(bgcseld), "delete_event",
+				   G_CALLBACK(destroy_colorsel), NULL);
+		g_signal_connect(GTK_OBJECT(GTK_COLOR_SELECTION_DIALOG(bgcseld)->cancel_button),
+				   "clicked", G_CALLBACK(destroy_colorsel), NULL);
+		g_signal_connect(GTK_OBJECT(GTK_COLOR_SELECTION_DIALOG(bgcseld)->ok_button), "clicked",
+				   G_CALLBACK(apply_color_dlg), (void *)2);
 		gtk_widget_realize(bgcseld);
 		gtk_widget_show(bgcseld);
 		gdk_window_raise(bgcseld->window);
@@ -3156,13 +3156,13 @@
 		gtk_color_selection_set_color(GTK_COLOR_SELECTION(colorsel), bgclr);
 		gtk_object_set_user_data(GTK_OBJECT(colorsel), c);
 
-		gtk_signal_connect(GTK_OBJECT(c->bg_color_dialog), "delete_event",
-				   GTK_SIGNAL_FUNC(delete_event_dialog), c);
-		gtk_signal_connect(GTK_OBJECT(GTK_COLOR_SELECTION_DIALOG(c->bg_color_dialog)->ok_button),
-				   "clicked", GTK_SIGNAL_FUNC(do_bgcolor), colorsel);
-		gtk_signal_connect(GTK_OBJECT
+		g_signal_connect(GTK_OBJECT(c->bg_color_dialog), "delete_event",
+				   G_CALLBACK(delete_event_dialog), c);
+		g_signal_connect(GTK_OBJECT(GTK_COLOR_SELECTION_DIALOG(c->bg_color_dialog)->ok_button),
+				   "clicked", G_CALLBACK(do_bgcolor), colorsel);
+		g_signal_connect(GTK_OBJECT
 				   (GTK_COLOR_SELECTION_DIALOG(c->bg_color_dialog)->cancel_button),
-				   "clicked", GTK_SIGNAL_FUNC(cancel_bgcolor), c);
+				   "clicked", G_CALLBACK(cancel_bgcolor), c);
 
 		gtk_widget_realize(c->bg_color_dialog);
 	}
@@ -3237,12 +3237,12 @@
 		}
 
 		gtk_object_set_user_data(GTK_OBJECT(fontseld), NULL);
-		gtk_signal_connect(GTK_OBJECT(fontseld), "delete_event",
-				   GTK_SIGNAL_FUNC(destroy_fontsel), NULL);
-		gtk_signal_connect(GTK_OBJECT(GTK_FONT_SELECTION_DIALOG(fontseld)->cancel_button),
-				   "clicked", GTK_SIGNAL_FUNC(destroy_fontsel), NULL);
-		gtk_signal_connect(GTK_OBJECT(GTK_FONT_SELECTION_DIALOG(fontseld)->ok_button), "clicked",
-				   GTK_SIGNAL_FUNC(apply_font_dlg), fontseld);
+		g_signal_connect(GTK_OBJECT(fontseld), "delete_event",
+				   G_CALLBACK(destroy_fontsel), NULL);
+		g_signal_connect(GTK_OBJECT(GTK_FONT_SELECTION_DIALOG(fontseld)->cancel_button),
+				   "clicked", G_CALLBACK(destroy_fontsel), NULL);
+		g_signal_connect(GTK_OBJECT(GTK_FONT_SELECTION_DIALOG(fontseld)->ok_button), "clicked",
+				   G_CALLBACK(apply_font_dlg), fontseld);
 		gtk_widget_realize(fontseld);
 		gtk_widget_show(fontseld);
 		gdk_window_raise(fontseld->window);
@@ -3266,12 +3266,12 @@
 								DEFAULT_FONT_FACE);
 		}
 
-		gtk_signal_connect(GTK_OBJECT(c->font_dialog), "delete_event",
-				   GTK_SIGNAL_FUNC(delete_event_dialog), c);
-		gtk_signal_connect(GTK_OBJECT(GTK_FONT_SELECTION_DIALOG(c->font_dialog)->ok_button),
-				   "clicked", GTK_SIGNAL_FUNC(apply_font), c->font_dialog);
-		gtk_signal_connect(GTK_OBJECT(GTK_FONT_SELECTION_DIALOG(c->font_dialog)->cancel_button),
-				   "clicked", GTK_SIGNAL_FUNC(cancel_font), c);
+		g_signal_connect(GTK_OBJECT(c->font_dialog), "delete_event",
+				   G_CALLBACK(delete_event_dialog), c);
+		g_signal_connect(GTK_OBJECT(GTK_FONT_SELECTION_DIALOG(c->font_dialog)->ok_button),
+				   "clicked", G_CALLBACK(apply_font), c->font_dialog);
+		g_signal_connect(GTK_OBJECT(GTK_FONT_SELECTION_DIALOG(c->font_dialog)->cancel_button),
+				   "clicked", G_CALLBACK(cancel_font), c);
 
 		gtk_widget_realize(c->font_dialog);
 
@@ -3337,7 +3337,7 @@
 		c = (struct gaim_connection *)g->data;
 		g_snprintf(buf, sizeof buf, "%s (%s)", c->username, c->prpl->name);
 		opt = gtk_menu_item_new_with_label(buf);
-		gtk_signal_connect(GTK_OBJECT(opt), "activate", GTK_SIGNAL_FUNC(set_import_gc), c);
+		g_signal_connect(GTK_OBJECT(opt), "activate", G_CALLBACK(set_import_gc), c);
 		gtk_widget_show(opt);
 		gtk_menu_append(GTK_MENU(menu), opt);
 		g = g->next;
@@ -3358,13 +3358,13 @@
 		g_snprintf(buf, BUF_LEN - 1, "%s" G_DIR_SEPARATOR_S, gaim_home_dir());
 
 		gtk_file_selection_set_filename(GTK_FILE_SELECTION(importdialog), buf);
-		gtk_signal_connect(GTK_OBJECT(importdialog), "destroy",
-				   GTK_SIGNAL_FUNC(destroy_dialog), importdialog);
-
-		gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(importdialog)->ok_button),
-				   "clicked", GTK_SIGNAL_FUNC(do_import_dialog), NULL);
-		gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(importdialog)->cancel_button),
-				   "clicked", GTK_SIGNAL_FUNC(destroy_dialog), importdialog);
+		g_signal_connect(GTK_OBJECT(importdialog), "destroy",
+				   G_CALLBACK(destroy_dialog), importdialog);
+
+		g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(importdialog)->ok_button),
+				   "clicked", G_CALLBACK(do_import_dialog), NULL);
+		g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(importdialog)->cancel_button),
+				   "clicked", G_CALLBACK(destroy_dialog), importdialog);
 
 		create_import_dropdown(GTK_FILE_SELECTION(importdialog));
 	}
@@ -3484,8 +3484,8 @@
 	gtk_container_border_width(GTK_CONTAINER(ca->window), 5);
 	gtk_window_set_role(GTK_WINDOW(ca->window), "away_mess");
 	gtk_window_set_title(GTK_WINDOW(ca->window), _("Gaim - New away message"));
-	gtk_signal_connect(GTK_OBJECT(ca->window), "delete_event",
-			   GTK_SIGNAL_FUNC(destroy_dialog), ca->window);
+	g_signal_connect(GTK_OBJECT(ca->window), "delete_event",
+			   G_CALLBACK(destroy_dialog), ca->window);
 	gtk_widget_realize(ca->window);
 
 	tbox = gtk_vbox_new(FALSE, 5);
@@ -3553,19 +3553,19 @@
 	gtk_widget_show(hbox);
 
 	button = picture_button(ca->window, _("Save"), ok_xpm);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(save_away_mess), ca);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(save_away_mess), ca);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
 
 	button = picture_button(ca->window, _("Save & Use"), add_xpm);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(su_away_mess), ca);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(su_away_mess), ca);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
 
 	button = picture_button(ca->window, _("Use"), gnome_preferences_xpm);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(use_away_mess), ca);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(use_away_mess), ca);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
 
 	button = picture_button(ca->window, _("Cancel"), cancel_xpm);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(destroy_dialog), ca->window);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(destroy_dialog), ca->window);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
 
 	gtk_widget_show(ca->window);
@@ -3620,8 +3620,8 @@
 	g_free(buf);
 	button =
 		gtk_toolbar_append_item(GTK_TOOLBAR(bar), NULL, NULL, NULL,
-					image, GTK_SIGNAL_FUNC(set_smiley), (char *)face);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(insert_smiley_text), c);
+					image, G_CALLBACK(set_smiley), (char *)face);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(insert_smiley_text), c);
 
 	/* these look really weird with borders */
 	gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);
@@ -3691,7 +3691,7 @@
 
 	/* connect signals */
 	gtk_object_set_user_data(GTK_OBJECT(dialog), "smiley dialog");
-	gtk_signal_connect(GTK_OBJECT(dialog), "delete_event", GTK_SIGNAL_FUNC(delete_event_dialog), c);
+	g_signal_connect(GTK_OBJECT(dialog), "delete_event", G_CALLBACK(delete_event_dialog), c);
 
 	/* show everything */
 	gtk_window_set_title(GTK_WINDOW(dialog), _("Smile!"));
@@ -3771,10 +3771,10 @@
 	gtk_box_pack_start(GTK_BOX(vbox), bbox, TRUE, TRUE, 5);
 
 	/* Handle closes right */
-	gtk_signal_connect(GTK_OBJECT(aliasdlg), "destroy", GTK_SIGNAL_FUNC(destroy_dialog), aliasdlg);
-	gtk_signal_connect(GTK_OBJECT(cancel), "clicked", GTK_SIGNAL_FUNC(destroy_dialog), aliasdlg);
-	a = gtk_signal_connect(GTK_OBJECT(add), "clicked", GTK_SIGNAL_FUNC(do_alias_bud), b);
-	c = gtk_signal_connect(GTK_OBJECT(aliasname), "activate", GTK_SIGNAL_FUNC(do_alias_bud), b);
+	g_signal_connect(GTK_OBJECT(aliasdlg), "destroy", G_CALLBACK(destroy_dialog), aliasdlg);
+	g_signal_connect(GTK_OBJECT(cancel), "clicked", G_CALLBACK(destroy_dialog), aliasdlg);
+	a = g_signal_connect(GTK_OBJECT(add), "clicked", G_CALLBACK(do_alias_bud), b);
+	c = g_signal_connect(GTK_OBJECT(aliasname), "activate", G_CALLBACK(do_alias_bud), b);
 	/* Finish up */
 	gtk_widget_show(add);
 	gtk_widget_show(cancel);
@@ -3853,15 +3853,15 @@
 		   name ? normalize(name) : "system", name ? ".log" : "");
 
 	filesel = gtk_file_selection_new(_("Gaim - Save Log File"));
-	gtk_signal_connect(GTK_OBJECT(filesel), "delete_event",
-			   GTK_SIGNAL_FUNC(destroy_dialog), filesel);
+	g_signal_connect(GTK_OBJECT(filesel), "delete_event",
+			   G_CALLBACK(destroy_dialog), filesel);
 
 	gtk_file_selection_hide_fileop_buttons(GTK_FILE_SELECTION(filesel));
 	gtk_file_selection_set_filename(GTK_FILE_SELECTION(filesel), buf);
-	gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(filesel)->ok_button),
-			   "clicked", GTK_SIGNAL_FUNC(do_save_log), filesel);
-	gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(filesel)->cancel_button),
-			   "clicked", GTK_SIGNAL_FUNC(destroy_dialog), filesel);
+	g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(filesel)->ok_button),
+			   "clicked", G_CALLBACK(do_save_log), filesel);
+	g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(filesel)->cancel_button),
+			   "clicked", G_CALLBACK(destroy_dialog), filesel);
 	gtk_object_set_user_data(GTK_OBJECT(filesel), name);
 
 	gtk_widget_realize(filesel);
@@ -3903,7 +3903,7 @@
 	gtk_window_set_role(GTK_WINDOW(window), "dialog");
 	gtk_container_set_border_width(GTK_CONTAINER(window), 10);
 	gtk_window_set_policy(GTK_WINDOW(window), TRUE, TRUE, TRUE);
-	gtk_signal_connect(GTK_OBJECT(window), "delete_event", GTK_SIGNAL_FUNC(destroy_dialog), window);
+	g_signal_connect(GTK_OBJECT(window), "delete_event", G_CALLBACK(destroy_dialog), window);
 	gtk_widget_realize(window);
 
 	box = gtk_vbox_new(FALSE, 5);
@@ -3920,14 +3920,14 @@
 	gtk_widget_show(hbox);
 
 	button = picture_button(window, _("Cancel"), cancel_xpm);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(destroy_dialog), window);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(destroy_dialog), window);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 5);
 	gtk_widget_show(button);
 
 	button = picture_button(window, _("Okay"), ok_xpm);
 	gtk_object_set_user_data(GTK_OBJECT(button), gtk_object_get_user_data(GTK_OBJECT(w)));
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(do_clear_log_file), name);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(destroy_dialog), window);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(do_clear_log_file), name);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(destroy_dialog), window);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 5);
 	gtk_widget_show(button);
 
@@ -3962,9 +3962,9 @@
 
 	gtk_widget_set_sensitive(view->bbox, FALSE);
 	gtk_signal_disconnect_by_func(GTK_OBJECT(view->window),
-				      GTK_SIGNAL_FUNC(destroy_dialog), view->window);
-	block = gtk_signal_connect(GTK_OBJECT(view->window), "delete_event",
-				   GTK_SIGNAL_FUNC(dont_destroy), view->window);
+				      G_CALLBACK(destroy_dialog), view->window);
+	block = g_signal_connect(GTK_OBJECT(view->window), "delete_event",
+				   G_CALLBACK(dont_destroy), view->window);
 
 	fseek(fp, view->offset, SEEK_SET);
 	gtk_imhtml_clear(GTK_IMHTML(view->layout));
@@ -4000,8 +4000,8 @@
 
 	gtk_widget_set_sensitive(view->bbox, TRUE);
 	gtk_signal_disconnect(GTK_OBJECT(view->window), block);
-	gtk_signal_connect(GTK_OBJECT(view->window), "delete_event",
-			   GTK_SIGNAL_FUNC(destroy_dialog), view->window);
+	g_signal_connect(GTK_OBJECT(view->window), "delete_event",
+			   G_CALLBACK(destroy_dialog), view->window);
 	g_string_free(string, TRUE);
 	fclose(fp);
 }
@@ -4072,7 +4072,7 @@
 
 	window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
 	gtk_object_set_user_data(GTK_OBJECT(window), name);
-	gtk_signal_connect(GTK_OBJECT(window), "destroy", GTK_SIGNAL_FUNC(des_log_win), NULL);
+	g_signal_connect(GTK_OBJECT(window), "destroy", G_CALLBACK(des_log_win), NULL);
 	gtk_window_set_role(GTK_WINDOW(window), "log");
 	if (name)
 		g_snprintf(buf, BUF_LONG, "Gaim - Conversations with %s", name);
@@ -4081,8 +4081,8 @@
 	gtk_window_set_title(GTK_WINDOW(window), buf);
 	gtk_container_set_border_width(GTK_CONTAINER(window), 10);
 	gtk_window_set_policy(GTK_WINDOW(window), TRUE, TRUE, TRUE);
-	block = gtk_signal_connect(GTK_OBJECT(window), "delete_event",
-				   GTK_SIGNAL_FUNC(dont_destroy), window);
+	block = g_signal_connect(GTK_OBJECT(window), "delete_event",
+				   G_CALLBACK(dont_destroy), window);
 	gtk_widget_realize(window);
 
 	layout = gtk_imhtml_new(NULL, NULL);
@@ -4146,10 +4146,10 @@
 				view->bbox = bbox;
 				view->window = window;
 				view->layout = layout;
-				gtk_signal_connect(GTK_OBJECT(item), "select",
-						   GTK_SIGNAL_FUNC(log_show_convo), view);
-				gtk_signal_connect(GTK_OBJECT(item), "destroy",
-						   GTK_SIGNAL_FUNC(des_view_item), view);
+				g_signal_connect(GTK_OBJECT(item), "select",
+						   G_CALLBACK(log_show_convo), view);
+				g_signal_connect(GTK_OBJECT(item), "destroy",
+						   G_CALLBACK(des_view_item), view);
 				last = item;
 				item_list = g_list_append(item_list, item);
 
@@ -4166,7 +4166,7 @@
 	}
 
 	gtk_signal_disconnect(GTK_OBJECT(window), block);
-	gtk_signal_connect(GTK_OBJECT(window), "delete_event", GTK_SIGNAL_FUNC(destroy_dialog), window);
+	g_signal_connect(GTK_OBJECT(window), "delete_event", G_CALLBACK(destroy_dialog), window);
 
 	frame = gtk_frame_new(_("Conversation"));
 	gtk_widget_show(frame);
@@ -4178,7 +4178,7 @@
 	gtk_container_add(GTK_CONTAINER(frame), sw);
 	gtk_box_pack_start(GTK_BOX(hbox), frame, TRUE, TRUE, 0);
 
-	gtk_signal_connect(GTK_OBJECT(layout), "url_clicked", GTK_SIGNAL_FUNC(open_url), NULL);
+	g_signal_connect(GTK_OBJECT(layout), "url_clicked", G_CALLBACK(open_url), NULL);
 	gtk_container_add(GTK_CONTAINER(sw), layout);
 	gaim_setup_imhtml(layout);
 
@@ -4187,16 +4187,16 @@
 
 	close_button = picture_button(window, _("Close"), cancel_xpm);
 	gtk_box_pack_end(GTK_BOX(bbox), close_button, FALSE, FALSE, 5);
-	gtk_signal_connect(GTK_OBJECT(close_button), "clicked", GTK_SIGNAL_FUNC(destroy_dialog), window);
+	g_signal_connect(GTK_OBJECT(close_button), "clicked", G_CALLBACK(destroy_dialog), window);
 
 	clear_button = picture_button(window, _("Clear"), close_xpm);
 	gtk_object_set_user_data(GTK_OBJECT(clear_button), window);
 	gtk_box_pack_end(GTK_BOX(bbox), clear_button, FALSE, FALSE, 5);
-	gtk_signal_connect(GTK_OBJECT(clear_button), "clicked", GTK_SIGNAL_FUNC(show_clear_log), name);
+	g_signal_connect(GTK_OBJECT(clear_button), "clicked", G_CALLBACK(show_clear_log), name);
 
 	save_button = picture_button(window, _("Save"), save_xpm);
 	gtk_box_pack_end(GTK_BOX(bbox), save_button, FALSE, FALSE, 5);
-	gtk_signal_connect(GTK_OBJECT(save_button), "clicked", GTK_SIGNAL_FUNC(show_save_log), name);
+	g_signal_connect(GTK_OBJECT(save_button), "clicked", G_CALLBACK(show_save_log), name);
 
 	gtk_widget_show_all(window);				
 	
@@ -4208,7 +4208,7 @@
 		view->window = window;
 		view->layout = layout;
 		log_show_convo(layout, view);
-		gtk_signal_connect(GTK_OBJECT(layout), "destroy", GTK_SIGNAL_FUNC(des_view_item), view);
+		g_signal_connect(GTK_OBJECT(layout), "destroy", G_CALLBACK(des_view_item), view);
 	} else {
 		gtk_list_select_item(GTK_LIST(list), 0);
 	}
@@ -4272,8 +4272,8 @@
 		gtk_window_set_role(GTK_WINDOW(rename_dialog), "rename_dialog");
 		gtk_window_set_policy(GTK_WINDOW(rename_dialog), FALSE, TRUE, TRUE);
 		gtk_window_set_title(GTK_WINDOW(rename_dialog), _("Gaim - Rename Group"));
-		gtk_signal_connect(GTK_OBJECT(rename_dialog), "destroy",
-				   GTK_SIGNAL_FUNC(destroy_dialog), rename_dialog);
+		g_signal_connect(GTK_OBJECT(rename_dialog), "destroy",
+				   G_CALLBACK(destroy_dialog), rename_dialog);
 		gtk_widget_realize(rename_dialog);
 
 		mainbox = gtk_vbox_new(FALSE, 5);
@@ -4294,8 +4294,8 @@
 		gtk_box_pack_start(GTK_BOX(fbox), name_entry, TRUE, TRUE, 0);
 		gtk_object_set_user_data(GTK_OBJECT(name_entry), g);
 		gtk_entry_set_text(GTK_ENTRY(name_entry), g->name);
-		gtk_signal_connect(GTK_OBJECT(name_entry), "activate",
-				   GTK_SIGNAL_FUNC(do_rename_group), name_entry);
+		g_signal_connect(GTK_OBJECT(name_entry), "activate",
+				   G_CALLBACK(do_rename_group), name_entry);
 		gtk_widget_grab_focus(name_entry);
 
 		bbox = gtk_hbox_new(FALSE, 5);
@@ -4303,14 +4303,14 @@
 
 		button = picture_button(rename_dialog, _("Cancel"), cancel_xpm);
 		gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0);
-		gtk_signal_connect(GTK_OBJECT(button), "clicked",
-				   GTK_SIGNAL_FUNC(destroy_dialog), rename_dialog);
+		g_signal_connect(GTK_OBJECT(button), "clicked",
+				   G_CALLBACK(destroy_dialog), rename_dialog);
 
 		button = picture_button(rename_dialog, _("OK"), ok_xpm);
 		gtk_object_set_user_data(GTK_OBJECT(button), g);
 		gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0);
-		gtk_signal_connect(GTK_OBJECT(button), "clicked",
-				   GTK_SIGNAL_FUNC(do_rename_group), name_entry);
+		g_signal_connect(GTK_OBJECT(button), "clicked",
+				   G_CALLBACK(do_rename_group), name_entry);
 	}
 
 	gtk_widget_show_all(rename_dialog);
@@ -4377,8 +4377,8 @@
 		gtk_window_set_role(GTK_WINDOW(rename_bud_dialog), "rename_bud_dialog");
 		gtk_window_set_policy(GTK_WINDOW(rename_bud_dialog), FALSE, TRUE, TRUE);
 		gtk_window_set_title(GTK_WINDOW(rename_bud_dialog), _("Gaim - Rename Buddy"));
-		gtk_signal_connect(GTK_OBJECT(rename_bud_dialog), "destroy",
-				   GTK_SIGNAL_FUNC(destroy_dialog), rename_bud_dialog);
+		g_signal_connect(GTK_OBJECT(rename_bud_dialog), "destroy",
+				   G_CALLBACK(destroy_dialog), rename_bud_dialog);
 		gtk_widget_realize(rename_bud_dialog);
 
 		mainbox = gtk_vbox_new(FALSE, 5);
@@ -4399,8 +4399,8 @@
 		gtk_box_pack_start(GTK_BOX(fbox), name_entry, TRUE, TRUE, 0);
 		gtk_object_set_user_data(GTK_OBJECT(name_entry), b);
 		gtk_entry_set_text(GTK_ENTRY(name_entry), b->name);
-		gtk_signal_connect(GTK_OBJECT(name_entry), "activate",
-				   GTK_SIGNAL_FUNC(do_rename_buddy), name_entry);
+		g_signal_connect(GTK_OBJECT(name_entry), "activate",
+				   G_CALLBACK(do_rename_buddy), name_entry);
 		gtk_widget_grab_focus(name_entry);
 
 		bbox = gtk_hbox_new(FALSE, 5);
@@ -4408,14 +4408,14 @@
 
 		button = picture_button(rename_bud_dialog, _("Cancel"), cancel_xpm);
 		gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0);
-		gtk_signal_connect(GTK_OBJECT(button), "clicked",
-				   GTK_SIGNAL_FUNC(destroy_dialog), rename_bud_dialog);
+		g_signal_connect(GTK_OBJECT(button), "clicked",
+				   G_CALLBACK(destroy_dialog), rename_bud_dialog);
 
 		button = picture_button(rename_bud_dialog, _("OK"), ok_xpm);
 		gtk_object_set_user_data(GTK_OBJECT(button), b);
 		gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0);
-		gtk_signal_connect(GTK_OBJECT(button), "clicked",
-				   GTK_SIGNAL_FUNC(do_rename_buddy), name_entry);
+		g_signal_connect(GTK_OBJECT(button), "clicked",
+				   G_CALLBACK(do_rename_buddy), name_entry);
 	}
 
 	gtk_widget_show_all(rename_bud_dialog);
@@ -4482,13 +4482,13 @@
 
 	gtk_file_selection_set_filename(GTK_FILE_SELECTION(perl_config), buf);
 	gtk_file_selection_complete(GTK_FILE_SELECTION(perl_config), "*.pl");
-	gtk_signal_connect(GTK_OBJECT(perl_config), "destroy", GTK_SIGNAL_FUNC(cfdes), perl_config);
-
-	gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(perl_config)->ok_button),
-			   "clicked", GTK_SIGNAL_FUNC(do_load), NULL);
-
-	gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(perl_config)->cancel_button),
-			   "clicked", GTK_SIGNAL_FUNC(cfdes), NULL);
+	g_signal_connect(GTK_OBJECT(perl_config), "destroy", G_CALLBACK(cfdes), perl_config);
+
+	g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(perl_config)->ok_button),
+			   "clicked", G_CALLBACK(do_load), NULL);
+
+	g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(perl_config)->cancel_button),
+			   "clicked", G_CALLBACK(cfdes), NULL);
 
 	g_free(buf);
 	gtk_widget_show(perl_config);
@@ -5121,7 +5121,7 @@
 	gtk_window_set_title(GTK_WINDOW (b->window), b->title);
 
 	/* Clean up if user dismisses window via window manager! */
-	gtk_signal_connect(GTK_OBJECT(b->window), "destroy", GTK_SIGNAL_FUNC(b->cancel), (gpointer) b);
+	g_signal_connect(GTK_OBJECT(b->window), "destroy", G_CALLBACK(b->cancel), (gpointer) b);
 	gtk_widget_realize(b->window);
 
 	vbox = gtk_vbox_new(FALSE, 5);
@@ -5151,14 +5151,14 @@
 	button = picture_button(b->window, _("Cancel"), cancel_xpm);
 
 	/* Let "destroy handling" (set above) handle cleanup */
-	gtk_signal_connect_object(GTK_OBJECT (button), "clicked",
-		GTK_SIGNAL_FUNC (gtk_widget_destroy), GTK_OBJECT (b->window));
+	g_signal_connect_swapped(GTK_OBJECT (button), "clicked",
+		G_CALLBACK (gtk_widget_destroy), GTK_OBJECT (b->window));
 	gtk_box_pack_end(GTK_BOX (hbox), button, FALSE, FALSE, 5);
 	gtk_widget_show(button);
 
 	button = picture_button(b->window, _("Save"), save_xpm);
-	gtk_signal_connect(GTK_OBJECT (button), "clicked",
-		GTK_SIGNAL_FUNC (b->ok), (gpointer) b);
+	g_signal_connect(GTK_OBJECT (button), "clicked",
+		G_CALLBACK (b->ok), (gpointer) b);
 	gtk_box_pack_end(GTK_BOX (hbox), button, FALSE, FALSE, 5);
 	gtk_widget_show(button);
 
--- a/src/ft.c	Tue Dec 31 18:21:32 2002 +0000
+++ b/src/ft.c	Tue Dec 31 19:32:38 2002 +0000
@@ -233,7 +233,7 @@
 		 */
 		if (xfer->w) {
 			gtk_signal_disconnect_by_func(GTK_OBJECT(xfer->w),
-					GTK_SIGNAL_FUNC(ft_cancel), xfer);
+					G_CALLBACK(ft_cancel), xfer);
 			gtk_widget_destroy(xfer->w);
 			xfer->w = NULL;
 		}
@@ -401,12 +401,12 @@
 			initstr);
 	g_free(initstr);
 
-	gtk_signal_connect(GTK_OBJECT(xfer->w), "delete_event",
-			GTK_SIGNAL_FUNC(ft_cancel), xfer);
-        gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(xfer->w)->cancel_button),
-			"clicked", GTK_SIGNAL_FUNC(ft_cancel), xfer);
-	gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(xfer->w)->ok_button),
-			"clicked", GTK_SIGNAL_FUNC(ft_choose_ok), xfer);
+	g_signal_connect(GTK_OBJECT(xfer->w), "delete_event",
+			G_CALLBACK(ft_cancel), xfer);
+        g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(xfer->w)->cancel_button),
+			"clicked", G_CALLBACK(ft_cancel), xfer);
+	g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(xfer->w)->ok_button),
+			"clicked", G_CALLBACK(ft_choose_ok), xfer);
 	gtk_widget_show(xfer->w);
 
 	return 0;
--- a/src/multi.c	Tue Dec 31 18:21:32 2002 +0000
+++ b/src/multi.c	Tue Dec 31 19:32:38 2002 +0000
@@ -326,8 +326,8 @@
 	gtk_box_pack_start(GTK_BOX(box), button, FALSE, FALSE, 0);
 	muo->user = u;
 	muo->opt = option;
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(mod_opt), muo);
-	gtk_signal_connect(GTK_OBJECT(button), "destroy", GTK_SIGNAL_FUNC(free_muo), muo);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(mod_opt), muo);
+	g_signal_connect(GTK_OBJECT(button), "destroy", G_CALLBACK(free_muo), muo);
 	gtk_widget_show(button);
 	return button;
 }
@@ -492,8 +492,8 @@
 		else
 			opt = gtk_menu_item_new_with_label("Unknown");
 		gtk_object_set_user_data(GTK_OBJECT(opt), u);
-		gtk_signal_connect(GTK_OBJECT(opt), "activate",
-				   GTK_SIGNAL_FUNC(set_prot), (void *)e->protocol);
+		g_signal_connect(GTK_OBJECT(opt), "activate",
+				   G_CALLBACK(set_prot), (void *)e->protocol);
 		gtk_menu_append(GTK_MENU(menu), opt);
 		gtk_widget_show(opt);
 		p = p->next;
@@ -550,11 +550,11 @@
 		gtk_file_selection_set_filename(GTK_FILE_SELECTION(dlg), buf);
 	}
 
-	gtk_signal_connect(GTK_OBJECT(dlg), "destroy", GTK_SIGNAL_FUNC(des_icon_sel), u);
-	gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(dlg)->cancel_button), "clicked",
-			   GTK_SIGNAL_FUNC(des_icon_sel), u);
-	gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(dlg)->ok_button), "clicked",
-			   GTK_SIGNAL_FUNC(set_icon), u);
+	g_signal_connect(GTK_OBJECT(dlg), "destroy", G_CALLBACK(des_icon_sel), u);
+	g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(dlg)->cancel_button), "clicked",
+			   G_CALLBACK(des_icon_sel), u);
+	g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(dlg)->ok_button), "clicked",
+			   G_CALLBACK(set_icon), u);
 
 	u->icondlg = dlg;
 
@@ -596,12 +596,12 @@
 	u->iconentry = name;
 
 	browse = gtk_button_new_with_label(_("Browse"));
-	gtk_signal_connect(GTK_OBJECT(browse), "clicked", GTK_SIGNAL_FUNC(sel_icon_dlg), u);
+	g_signal_connect(GTK_OBJECT(browse), "clicked", G_CALLBACK(sel_icon_dlg), u);
 	gtk_box_pack_start(GTK_BOX(hbox), browse, FALSE, FALSE, 0);
 	gtk_widget_show(browse);
 
 	reset = gtk_button_new_with_label(_("Reset"));
-	gtk_signal_connect(GTK_OBJECT(reset), "clicked", GTK_SIGNAL_FUNC(reset_icon), u);
+	g_signal_connect(GTK_OBJECT(reset), "clicked", G_CALLBACK(reset_icon), u);
 	gtk_box_pack_start(GTK_BOX(hbox), reset, FALSE, FALSE, 0);
 	gtk_widget_show(reset);
 
@@ -867,7 +867,7 @@
 	gtk_widget_realize(u->mod);
 	gtk_window_set_title(GTK_WINDOW(u->mod), _("Gaim - Modify Account"));
 	gtk_window_set_policy(GTK_WINDOW(u->mod), FALSE, FALSE, TRUE);	/* nothing odd here :) */
-	gtk_signal_connect(GTK_OBJECT(u->mod), "destroy", GTK_SIGNAL_FUNC(delmod), u);
+	g_signal_connect(GTK_OBJECT(u->mod), "destroy", G_CALLBACK(delmod), u);
 
 	vbox = gtk_vbox_new(FALSE, 6);
 	gtk_container_border_width(GTK_CONTAINER(vbox), 6);
@@ -894,12 +894,12 @@
 	button = gtk_button_new_from_stock(GTK_STOCK_OK);
 	gtk_size_group_add_widget(button_sg, button);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(ok_mod), u);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(ok_mod), u);
 
 	button = gtk_button_new_from_stock(GTK_STOCK_CANCEL);
 	gtk_size_group_add_widget(button_sg, button);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(cancel_mod), u);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(cancel_mod), u);
 
 	sep = gtk_hseparator_new();
 	gtk_box_pack_end (GTK_BOX (vbox), sep, FALSE, FALSE, 0);
@@ -1007,7 +1007,7 @@
 	GAIM_DIALOG(p->win);
 	gtk_window_set_role(GTK_WINDOW(p->win), "password");
 	gtk_container_border_width(GTK_CONTAINER(p->win), 5);
-	gtk_signal_connect(GTK_OBJECT(p->win), "destroy", GTK_SIGNAL_FUNC(pass_des), p);
+	g_signal_connect(GTK_OBJECT(p->win), "destroy", G_CALLBACK(pass_des), p);
 	gtk_widget_realize(p->win);
 
 	frame = make_frame(p->win, _("Enter Password"));
@@ -1029,7 +1029,7 @@
 	p->entry = gtk_entry_new();
 	gtk_entry_set_visibility(GTK_ENTRY(p->entry), FALSE);
 	gtk_box_pack_start(GTK_BOX(hbox), p->entry, FALSE, FALSE, 5);
-	gtk_signal_connect(GTK_OBJECT(p->entry), "activate", GTK_SIGNAL_FUNC(pass_signon), p);
+	g_signal_connect(GTK_OBJECT(p->entry), "activate", G_CALLBACK(pass_signon), p);
 	gtk_widget_grab_focus(p->entry);
 	gtk_widget_show(p->entry);
 
@@ -1038,11 +1038,11 @@
 	gtk_widget_show(hbox);
 
 	button = picture_button(p->win, _("Cancel"), cancel_xpm);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(pass_cancel), p);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(pass_cancel), p);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 5);
 
 	button = picture_button(p->win, _("Signon"), ok_xpm);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(pass_signon), p);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(pass_signon), p);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 5);
 
 	gtk_widget_show(p->win);
@@ -1189,7 +1189,7 @@
 	gtk_widget_realize(acctedit);
 	gtk_widget_set_usize(acctedit, -1, 250);
 	gtk_window_set_default_size(GTK_WINDOW(acctedit), 550, 250);
-	gtk_signal_connect(GTK_OBJECT(acctedit), "destroy", GTK_SIGNAL_FUNC(delete_acctedit), W);
+	g_signal_connect(GTK_OBJECT(acctedit), "destroy", G_CALLBACK(delete_acctedit), W);
 
 	vbox = gtk_vbox_new(FALSE, 6);
 	gtk_container_set_border_width(GTK_CONTAINER(vbox), 6);
@@ -1215,23 +1215,23 @@
 	gtk_button_set_label(GTK_BUTTON(button), "Select All");
 //	button = picture_button2(acctedit, _("Select All"), tb_refresh_xpm, 2);
 	gtk_box_pack_start(GTK_BOX(vbox2), button, TRUE, TRUE, 0);
-	gtk_signal_connect_object(GTK_OBJECT(button), "clicked",
-				  GTK_SIGNAL_FUNC(gtk_clist_select_all), GTK_OBJECT(list));
+	g_signal_connect_swapped(GTK_OBJECT(button), "clicked",
+				  G_CALLBACK(gtk_clist_select_all), GTK_OBJECT(list));
 
 	button = gtk_button_new_from_stock(GTK_STOCK_REDO);
 	gtk_button_set_use_stock(GTK_BUTTON(button), FALSE);
 //	gtk_button_set_label(button, "Select Autos");
 //	button = picture_button2(acctedit, _("Select Autos"), tb_redo_xpm, 2);
 	gtk_box_pack_start(GTK_BOX(vbox2), button, TRUE, TRUE, 0);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(sel_auto), NULL);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(sel_auto), NULL);
 
 	button = gtk_button_new_from_stock(GTK_STOCK_UNDO);
 	gtk_button_set_use_stock(GTK_BUTTON(button), FALSE);
 	gtk_button_set_label(GTK_BUTTON(button), "Select None");
 //	button = picture_button2(acctedit, _("Select None"), tb_undo_xpm, 2);
 	gtk_box_pack_start(GTK_BOX(vbox2), button, TRUE, TRUE, 0);
-	gtk_signal_connect_object(GTK_OBJECT(button), "clicked",
-				  GTK_SIGNAL_FUNC(gtk_clist_unselect_all), GTK_OBJECT(list));
+	g_signal_connect_swapped(GTK_OBJECT(button), "clicked",
+				  G_CALLBACK(gtk_clist_unselect_all), GTK_OBJECT(list));
 
 #endif
 
@@ -1247,23 +1247,23 @@
 	button = gtk_button_new_from_stock(GTK_STOCK_CLOSE);
 	gtk_size_group_add_widget(sg, button);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(acctedit_close), W);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(acctedit_close), W);
 
 	button = gtk_button_new_from_stock(GTK_STOCK_DELETE);
 	gtk_size_group_add_widget(sg, button);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(del_acct), NULL);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(del_acct), NULL);
 
 	button = gaim_pixbuf_button_from_stock(_("_Modify"), GTK_STOCK_PREFERENCES,
 										   GAIM_BUTTON_HORIZONTAL);
 	gtk_size_group_add_widget(sg, button);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(mod_acct), NULL);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(mod_acct), NULL);
 
 	button = gtk_button_new_from_stock(GTK_STOCK_ADD);
 	gtk_size_group_add_widget(sg, button);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(add_acct), NULL);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(add_acct), NULL);
 
 	gtk_widget_show_all(acctedit);
 }
@@ -1455,7 +1455,7 @@
 	meter->progress = gtk_progress_bar_new ();
 	
 	meter->button = gtk_button_new_with_label (_("Cancel"));
-	gtk_signal_connect (GTK_OBJECT (meter->button), "clicked", GTK_SIGNAL_FUNC (cancel_signon), meter);
+	g_signal_connect (GTK_OBJECT (meter->button), "clicked", G_CALLBACK (cancel_signon), meter);
 		
 	gtk_table_attach (GTK_TABLE (table), graphic, 0, 1, *rows, *rows+1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0);
 	gtk_table_attach (GTK_TABLE (table), nest_vbox, 1, 2, *rows, *rows+1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0);
@@ -1515,10 +1515,10 @@
 		gtk_table_set_col_spacings (GTK_TABLE (meter_win->table), 10);
 	
 		cancel_button = gtk_button_new_with_label (_("Cancel All"));
-		gtk_signal_connect_object (GTK_OBJECT (cancel_button), "clicked", GTK_SIGNAL_FUNC (loop_cancel), NULL);
+		g_signal_connect_swapped (GTK_OBJECT (cancel_button), "clicked", G_CALLBACK (loop_cancel), NULL);
 		gtk_box_pack_start (GTK_BOX (vbox), GTK_WIDGET (cancel_button), FALSE, FALSE, 0);
 	
-		gtk_signal_connect (GTK_OBJECT (meter_win->window), "delete_event", GTK_SIGNAL_FUNC (meter_destroy), NULL);
+		g_signal_connect (GTK_OBJECT (meter_win->window), "delete_event", G_CALLBACK (meter_destroy), NULL);
 		}
 	
 	if (!meter) {
@@ -1578,7 +1578,7 @@
 	k->user = gc->user;
 	k->dlg = do_error_dialog(title, buf, GAIM_ERROR);
 	kicks = g_slist_append(kicks, k);
-	gtk_signal_connect(GTK_OBJECT(k->dlg), "destroy", GTK_SIGNAL_FUNC(set_kick_null), k);
+	g_signal_connect(GTK_OBJECT(k->dlg), "destroy", G_CALLBACK(set_kick_null), k);
 	if (meter) {
 		kill_meter(meter);
 		meters = g_slist_remove(meters, meter);
--- a/src/prefs.c	Tue Dec 31 18:21:32 2002 +0000
+++ b/src/prefs.c	Tue Dec 31 19:32:38 2002 +0000
@@ -212,8 +212,8 @@
 
 	if (!(font_options & OPT_FONT_FACE))
 		gtk_widget_set_sensitive(GTK_WIDGET(select), FALSE);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), select);
-	gtk_signal_connect(GTK_OBJECT(select), "clicked", GTK_SIGNAL_FUNC(show_font_dialog), NULL);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(toggle_sensitive), select);
+	g_signal_connect(GTK_OBJECT(select), "clicked", G_CALLBACK(show_font_dialog), NULL);
 	gtk_box_pack_start(GTK_BOX(hbox), select, FALSE, FALSE, 0);
 
 	hbox = gtk_hbox_new(FALSE, 5);
@@ -223,7 +223,7 @@
 	select = gaim_labeled_spin_button(hbox, NULL, &fontsize, 1, 7, NULL);
 	if (!(font_options & OPT_FONT_SIZE))
 		gtk_widget_set_sensitive(GTK_WIDGET(select), FALSE);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), select);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(toggle_sensitive), select);
 
 	vbox = make_frame(ret, _("Color"));
 	hbox = gtk_hbox_new(FALSE, 5);
@@ -236,13 +236,13 @@
 	select = gtk_button_new_from_stock(GTK_STOCK_SELECT_COLOR);
 	gtk_box_pack_start(GTK_BOX(hbox), select, FALSE, FALSE, 0);
 	pref_fg_picture = show_color_pref(hbox, TRUE);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(update_color),
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(update_color),
 			   pref_fg_picture);
 
 	if (!(font_options & OPT_FONT_FGCOL))
 		gtk_widget_set_sensitive(GTK_WIDGET(select), FALSE);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), select);
-	gtk_signal_connect(GTK_OBJECT(select), "clicked", GTK_SIGNAL_FUNC(show_fgcolor_dialog), NULL);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(toggle_sensitive), select);
+	g_signal_connect(GTK_OBJECT(select), "clicked", G_CALLBACK(show_fgcolor_dialog), NULL);
 	hbox = gtk_hbox_new(FALSE, 5);
 	gtk_container_add(GTK_CONTAINER(vbox), hbox);
 
@@ -251,13 +251,13 @@
 	select = gtk_button_new_from_stock(GTK_STOCK_SELECT_COLOR);
 	gtk_box_pack_start(GTK_BOX(hbox), select, FALSE, FALSE, 0);
 	pref_bg_picture = show_color_pref(hbox, FALSE);
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(update_color),
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(update_color),
 			   pref_bg_picture);
 
 	if (!(font_options & OPT_FONT_BGCOL))
 		gtk_widget_set_sensitive(GTK_WIDGET(select), FALSE);
-	gtk_signal_connect(GTK_OBJECT(select), "clicked", GTK_SIGNAL_FUNC(show_bgcolor_dialog), NULL);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), select);
+	g_signal_connect(GTK_OBJECT(select), "clicked", G_CALLBACK(show_bgcolor_dialog), NULL);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(toggle_sensitive), select);
 
 	gtk_widget_show_all(ret);
 	return ret;
@@ -500,8 +500,8 @@
 	entry = gtk_entry_new();
 	gtk_label_set_mnemonic_widget(GTK_LABEL(label), entry);
 	gtk_table_attach(GTK_TABLE(table), entry, 1, 2, 0, 1, GTK_FILL, 0, 0, 0);
-	gtk_signal_connect(GTK_OBJECT(entry), "changed",
-			   GTK_SIGNAL_FUNC(proxy_print_option), (void *)PROXYHOST);
+	g_signal_connect(GTK_OBJECT(entry), "changed",
+			   G_CALLBACK(proxy_print_option), (void *)PROXYHOST);
 	gtk_entry_set_text(GTK_ENTRY(entry), proxyhost);
 
 	hbox = gtk_hbox_new(TRUE, 5);
@@ -514,8 +514,8 @@
 	entry = gtk_entry_new();
 	gtk_label_set_mnemonic_widget(GTK_LABEL(label), entry);
 	gtk_table_attach(GTK_TABLE(table), entry, 1, 2, 1, 2, GTK_FILL, 0, 0, 0);
-	gtk_signal_connect(GTK_OBJECT(entry), "changed",
-			   GTK_SIGNAL_FUNC(proxy_print_option), (void *)PROXYPORT);
+	g_signal_connect(GTK_OBJECT(entry), "changed",
+			   G_CALLBACK(proxy_print_option), (void *)PROXYPORT);
 
 	if (proxyport) {
 		char buf[128];
@@ -530,8 +530,8 @@
 	entry = gtk_entry_new();
 	gtk_label_set_mnemonic_widget(GTK_LABEL(label), entry);
 	gtk_table_attach(GTK_TABLE(table), entry, 1, 2, 2, 3, GTK_FILL, 0, 0, 0);
-	gtk_signal_connect(GTK_OBJECT(entry), "changed",
-			   GTK_SIGNAL_FUNC(proxy_print_option), (void *)PROXYUSER);
+	g_signal_connect(GTK_OBJECT(entry), "changed",
+			   G_CALLBACK(proxy_print_option), (void *)PROXYUSER);
 	gtk_entry_set_text(GTK_ENTRY(entry), proxyuser);
 
 	hbox = gtk_hbox_new(TRUE, 5);
@@ -545,8 +545,8 @@
 	gtk_label_set_mnemonic_widget(GTK_LABEL(label), entry);
 	gtk_table_attach(GTK_TABLE(table), entry, 1, 2, 3, 4, GTK_FILL , 0, 0, 0);
 	gtk_entry_set_visibility(GTK_ENTRY(entry), FALSE);
-	gtk_signal_connect(GTK_OBJECT(entry), "changed",
-			   GTK_SIGNAL_FUNC(proxy_print_option), (void *)PROXYPASS);
+	g_signal_connect(GTK_OBJECT(entry), "changed",
+			   G_CALLBACK(proxy_print_option), (void *)PROXYPASS);
 	gtk_entry_set_text(GTK_ENTRY(entry), proxypass);
 
 	gtk_widget_show_all(ret);
@@ -600,8 +600,8 @@
 	gtk_box_pack_start (GTK_BOX (hbox), browser_entry, FALSE, FALSE, 0);
 
 	gtk_entry_set_text(GTK_ENTRY(browser_entry), web_command);
-	gtk_signal_connect(GTK_OBJECT(browser_entry), "changed",
-			   GTK_SIGNAL_FUNC(browser_print_option), NULL);
+	g_signal_connect(GTK_OBJECT(browser_entry), "changed",
+			   G_CALLBACK(browser_print_option), NULL);
 #endif /* end !_WIN32 */
 	vbox = make_frame (ret, _("Browser Options"));
 	label = gaim_button(_("Open new _window by default"), &misc_options, OPT_MISC_BROWSER_POPUP, vbox);
@@ -707,7 +707,7 @@
 
 	gtk_widget_set_sensitive(sndcmd, (sound_options & OPT_SOUND_CMD));
 	gtk_box_pack_start(GTK_BOX(hbox), sndcmd, TRUE, TRUE, 5);
-	gtk_signal_connect(GTK_OBJECT(sndcmd), "changed", GTK_SIGNAL_FUNC(sound_cmd_yeah), NULL);
+	g_signal_connect(GTK_OBJECT(sndcmd), "changed", G_CALLBACK(sound_cmd_yeah), NULL);
 #endif /* _WIN32 */
 	gtk_widget_show_all(ret);
 	return ret;
@@ -765,7 +765,7 @@
 	select = gaim_labeled_spin_button(vbox, _("_Minutes before setting away:"), &auto_away, 1, 24 * 60, sg);
 	if (!(away_options & OPT_AWAY_AUTO))
 		gtk_widget_set_sensitive(GTK_WIDGET(select), FALSE);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), select);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(toggle_sensitive), select);
 
 	label = gtk_label_new_with_mnemonic(_("Away m_essage:"));
 	gtk_size_group_add_widget(sg, label);
@@ -777,7 +777,7 @@
 	gtk_label_set_mnemonic_widget(GTK_LABEL(label), prefs_away_menu);
 	if (!(away_options & OPT_AWAY_AUTO))
 		gtk_widget_set_sensitive(GTK_WIDGET(prefs_away_menu), FALSE);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), prefs_away_menu);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(toggle_sensitive), prefs_away_menu);
 	default_away_menu_init(prefs_away_menu);
 	gtk_widget_show(prefs_away_menu);
 	gtk_box_pack_start(GTK_BOX(hbox), prefs_away_menu, FALSE, FALSE, 0);
@@ -1113,14 +1113,14 @@
 
 		gtk_file_selection_set_filename(GTK_FILE_SELECTION(sounddialog), buf);
 
-		gtk_signal_connect(GTK_OBJECT(sounddialog), "destroy",
-				   GTK_SIGNAL_FUNC(close_sounddialog), sounddialog);
+		g_signal_connect(GTK_OBJECT(sounddialog), "destroy",
+				   G_CALLBACK(close_sounddialog), sounddialog);
 
-		gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(sounddialog)->ok_button),
-				   "clicked", GTK_SIGNAL_FUNC(do_select_sound), (int *)sound_row_sel);
+		g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(sounddialog)->ok_button),
+				   "clicked", G_CALLBACK(do_select_sound), (int *)sound_row_sel);
 
-		gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(sounddialog)->cancel_button),
-				   "clicked", GTK_SIGNAL_FUNC(close_sounddialog), sounddialog);
+		g_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(sounddialog)->cancel_button),
+				   "clicked", G_CALLBACK(close_sounddialog), sounddialog);
 	}
 
 	g_free(buf);
@@ -1215,15 +1215,15 @@
 	gtk_box_pack_start(GTK_BOX(hbox), sound_entry, FALSE, FALSE, 5);
 
 	button = gtk_button_new_with_label(_("Test"));
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(test_sound), NULL);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(test_sound), NULL);
 	gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 1);
 
 	button = gtk_button_new_with_label(_("Reset"));
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(reset_sound), NULL);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(reset_sound), NULL);
 	gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 1);
 
 	button = gtk_button_new_with_label(_("Choose..."));
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(sel_sound), NULL);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(sel_sound), NULL);
 	gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 1);
 
 	gtk_widget_show_all (ret);
@@ -1342,17 +1342,17 @@
 	button = gtk_button_new_from_stock (GTK_STOCK_ADD);
 	gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
 	gtk_size_group_add_widget(sg, button);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(create_away_mess), NULL);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(create_away_mess), NULL);
 
 	button = gtk_button_new_from_stock (GTK_STOCK_REMOVE);
 	gtk_size_group_add_widget(sg, button);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(remove_away_message), event_view);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(remove_away_message), event_view);
 
 	gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
 
 	button = gaim_pixbuf_button(_("_Edit"), "edit.png", GAIM_BUTTON_HORIZONTAL);
 	gtk_size_group_add_widget(sg, button);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(create_away_mess), event_view);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(create_away_mess), event_view);
 	gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 0);
 
 	gtk_widget_show_all(ret);
@@ -1446,7 +1446,7 @@
 	gtk_widget_realize(prefs);
 	gtk_window_set_title(GTK_WINDOW(prefs), _("Gaim - Preferences"));
 	gtk_window_set_policy (GTK_WINDOW(prefs), FALSE, FALSE, TRUE);
-	gtk_signal_connect(GTK_OBJECT(prefs), "destroy", GTK_SIGNAL_FUNC(delete_prefs), NULL);
+	g_signal_connect(GTK_OBJECT(prefs), "destroy", G_CALLBACK(delete_prefs), NULL);
 
 	vbox = gtk_vbox_new(FALSE, 5);
 	gtk_container_border_width(GTK_CONTAINER(vbox), 5);
@@ -1527,7 +1527,7 @@
 
 	button = gtk_button_new_from_stock (GTK_STOCK_CLOSE);
 	gtk_size_group_add_widget(sg, button);
-	gtk_signal_connect_object(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(gtk_widget_destroy), prefs);
+	g_signal_connect_swapped(GTK_OBJECT(button), "clicked", G_CALLBACK(gtk_widget_destroy), prefs);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
 	gtk_widget_show(button);
 
@@ -1741,31 +1741,31 @@
 	gtk_object_set_user_data(GTK_OBJECT(button), options);
 
 	if (options == &misc_options) {
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(set_misc_option),
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(set_misc_option),
 				   (int *)option);
 	} else if (options == &logging_options) {
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(set_logging_option),
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(set_logging_option),
 				   (int *)option);
 	} else if (options == &blist_options) {
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(set_blist_option),
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(set_blist_option),
 				   (int *)option);
 	} else if (options == &convo_options) {
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(set_convo_option),
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(set_convo_option),
 				   (int *)option);
 	} else if (options == &im_options) {
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(set_im_option),
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(set_im_option),
 				   (int *)option);
 	} else if (options == &chat_options) {
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(set_chat_option),
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(set_chat_option),
 				   (int *)option);
 	} else if (options == &font_options) {
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(set_font_option),
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(set_font_option),
 				   (int *)option);
 	} else if (options == &sound_options) {
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(set_sound_option),
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(set_sound_option),
 				   (int *)option);
 	} else if (options == &away_options) {
-		gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(set_away_option),
+		g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(set_away_option),
 				   (int *)option);
 	} else {
 		debug_printf("gaim_button: \"%s\" has no signal handler attached to it!\n", text);
@@ -1789,7 +1789,7 @@
 	while (awy) {
 		a = (struct away_message *)awy->data;
 		opt = gtk_menu_item_new_with_label(a->name);
-		gtk_signal_connect(GTK_OBJECT(opt), "activate", GTK_SIGNAL_FUNC(set_default_away),
+		g_signal_connect(GTK_OBJECT(opt), "activate", G_CALLBACK(set_default_away),
 				   (gpointer)index);
 		gtk_widget_show(opt);
 		gtk_menu_append(GTK_MENU(menu), opt);
@@ -1907,8 +1907,8 @@
 	gtk_object_set_user_data(GTK_OBJECT(spin), val);
 	gtk_widget_set_usize(spin, 50, -1);
 	gtk_box_pack_start(GTK_BOX(hbox), spin, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(adjust), "value-changed",
-			GTK_SIGNAL_FUNC(update_spin_value), GTK_WIDGET(spin));
+	g_signal_connect(GTK_OBJECT(adjust), "value-changed",
+			G_CALLBACK(update_spin_value), GTK_WIDGET(spin));
 	gtk_widget_show(spin);
 
 	gtk_label_set_mnemonic_widget(GTK_LABEL(label), spin);
@@ -1998,8 +1998,8 @@
 		opt = gtk_menu_item_new_with_label(text);
 		gtk_object_set_user_data(GTK_OBJECT(opt), (void *)value);
 		gtk_object_set_data(GTK_OBJECT(opt), "clear", (void *)clear);
-		gtk_signal_connect(GTK_OBJECT(opt), "activate",
-				   GTK_SIGNAL_FUNC(dropdown_set), (void *)option);
+		g_signal_connect(GTK_OBJECT(opt), "activate",
+				   G_CALLBACK(dropdown_set), (void *)option);
 		gtk_widget_show(opt);
 		gtk_menu_shell_append(GTK_MENU_SHELL(menu), opt);
 
--- a/src/prpl.c	Tue Dec 31 18:21:32 2002 +0000
+++ b/src/prpl.c	Tue Dec 31 19:32:38 2002 +0000
@@ -250,7 +250,7 @@
 	gtk_window_set_role(GTK_WINDOW(window), "prompt");
 	gtk_window_set_policy(GTK_WINDOW(window), FALSE, TRUE, TRUE);
 	gtk_window_set_title(GTK_WINDOW(window), _("Gaim - Prompt"));
-	gtk_signal_connect(GTK_OBJECT(window), "destroy", GTK_SIGNAL_FUNC(des_prompt), p);
+	g_signal_connect(GTK_OBJECT(window), "destroy", G_CALLBACK(des_prompt), p);
 	gtk_widget_realize(window);
 
 	vbox = gtk_vbox_new(FALSE, 5);
@@ -267,7 +267,7 @@
 	gtk_box_pack_start(GTK_BOX(vbox), entry, FALSE, FALSE, 0);
 	if (def)
 		gtk_entry_set_text(GTK_ENTRY(entry), def);
-	gtk_signal_connect(GTK_OBJECT(entry), "activate", GTK_SIGNAL_FUNC(act_prompt), p);
+	g_signal_connect(GTK_OBJECT(entry), "activate", G_CALLBACK(act_prompt), p);
 	p->entry = entry;
 
 	hbox = gtk_hbox_new(FALSE, 5);
@@ -275,11 +275,11 @@
 
 	button = picture_button(window, _("Accept"), ok_xpm);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(act_prompt), p);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(act_prompt), p);
 
 	button = picture_button(window, _("Cancel"), cancel_xpm);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(des_win), window);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(des_win), window);
 
 	gtk_widget_show_all(window);
 }
@@ -346,8 +346,8 @@
 			menuitem = gtk_menu_item_new_with_label(act->data);
 			gtk_object_set_user_data(GTK_OBJECT(menuitem), act->data);
 			gtk_menu_append(GTK_MENU(protomenu), menuitem);
-			gtk_signal_connect(GTK_OBJECT(menuitem), "activate",
-					   GTK_SIGNAL_FUNC(proto_act), gc);
+			g_signal_connect(GTK_OBJECT(menuitem), "activate",
+					   G_CALLBACK(proto_act), gc);
 			gtk_widget_show(menuitem);
 
 			act = g_list_next(act);
@@ -384,8 +384,8 @@
 				menuitem = gtk_menu_item_new_with_label(act->data);
 				gtk_object_set_user_data(GTK_OBJECT(menuitem), act->data);
 				gtk_menu_append(GTK_MENU(submenu), menuitem);
-				gtk_signal_connect(GTK_OBJECT(menuitem), "activate",
-						   GTK_SIGNAL_FUNC(proto_act), gc);
+				g_signal_connect(GTK_OBJECT(menuitem), "activate",
+						   G_CALLBACK(proto_act), gc);
 				gtk_widget_show(menuitem);
 
 				act = g_list_next(act);
@@ -472,7 +472,7 @@
 	gtk_window_set_role(GTK_WINDOW(mn->email_win), "mail");
 	gtk_window_set_policy(GTK_WINDOW(mn->email_win), FALSE, TRUE, TRUE);
 	gtk_window_set_title(GTK_WINDOW(mn->email_win), _("Gaim - New Mail"));
-	gtk_signal_connect(GTK_OBJECT(mn->email_win), "destroy", GTK_SIGNAL_FUNC(des_email_win), mn);
+	g_signal_connect(GTK_OBJECT(mn->email_win), "destroy", G_CALLBACK(des_email_win), mn);
 	gtk_widget_realize(mn->email_win);
 
 	vbox = gtk_vbox_new(FALSE, 5);
@@ -493,14 +493,14 @@
 	close = picture_button(mn->email_win, _("Close"), cancel_xpm);
 	gtk_window_set_focus(GTK_WINDOW(mn->email_win), close);
 	gtk_box_pack_end(GTK_BOX(hbox), close, 0, 0, 5);
-	gtk_signal_connect(GTK_OBJECT(close), "clicked", GTK_SIGNAL_FUNC(des_email_win), mn);
+	g_signal_connect(GTK_OBJECT(close), "clicked", G_CALLBACK(des_email_win), mn);
 
 	if (url) {
 		mn->url = g_strdup(url);
 		urlbut = picture_button(mn->email_win, _("Open Mail"), tb_forward_xpm);
 		gtk_box_pack_end(GTK_BOX(hbox), urlbut, 0, 0, 5);
-		gtk_signal_connect(GTK_OBJECT(urlbut), "clicked", GTK_SIGNAL_FUNC(open_url), mn->url);
-		gtk_signal_connect(GTK_OBJECT(urlbut), "clicked", GTK_SIGNAL_FUNC(des_email_win), mn);
+		g_signal_connect(GTK_OBJECT(urlbut), "clicked", G_CALLBACK(open_url), mn->url);
+		g_signal_connect(GTK_OBJECT(urlbut), "clicked", G_CALLBACK(des_email_win), mn);
 	}
 
 	gtk_widget_show(mn->email_win);
@@ -714,7 +714,7 @@
 	gtk_window_set_title(GTK_WINDOW(regdlg), _("Gaim - Registration"));
 	gtk_window_set_role(GTK_WINDOW(regdlg), "register");
 	gtk_widget_realize(regdlg);
-	gtk_signal_connect(GTK_OBJECT(regdlg), "destroy", GTK_SIGNAL_FUNC(delete_regdlg), NULL);
+	g_signal_connect(GTK_OBJECT(regdlg), "destroy", G_CALLBACK(delete_regdlg), NULL);
 
 	vbox = gtk_vbox_new(FALSE, 5);
 	gtk_container_set_border_width(GTK_CONTAINER(vbox), 5);
@@ -739,7 +739,7 @@
 
 	close = picture_button(regdlg, _("Close"), cancel_xpm);
 	gtk_box_pack_end(GTK_BOX(hbox), close, FALSE, FALSE, 5);
-	gtk_signal_connect(GTK_OBJECT(close), "clicked", GTK_SIGNAL_FUNC(delete_regdlg), NULL);
+	g_signal_connect(GTK_OBJECT(close), "clicked", G_CALLBACK(delete_regdlg), NULL);
 	gtk_widget_show(close);
 
 	reg_reg = picture_button(regdlg, _("Register"), ok_xpm);
--- a/src/server.c	Tue Dec 31 18:21:32 2002 +0000
+++ b/src/server.c	Tue Dec 31 19:32:38 2002 +0000
@@ -984,8 +984,8 @@
 
 
 	gtk_window_set_title(GTK_WINDOW(d), "Buddy chat invite");
-	gtk_signal_connect(GTK_OBJECT(nobtn), "clicked", GTK_SIGNAL_FUNC(close_invite), d);
-	gtk_signal_connect(GTK_OBJECT(yesbtn), "clicked", GTK_SIGNAL_FUNC(chat_invite_callback), d);
+	g_signal_connect(GTK_OBJECT(nobtn), "clicked", G_CALLBACK(close_invite), d);
+	g_signal_connect(GTK_OBJECT(yesbtn), "clicked", G_CALLBACK(chat_invite_callback), d);
 
 
 	gtk_widget_show(d);
@@ -1146,7 +1146,7 @@
 	gtk_window_set_policy(GTK_WINDOW(window), FALSE, FALSE, TRUE);
 	gtk_window_set_title(GTK_WINDOW(window), "Gaim - Popup");
 	gtk_container_set_border_width(GTK_CONTAINER(window), 5);
-	gtk_signal_connect(GTK_OBJECT(window), "destroy", GTK_SIGNAL_FUNC(des_popup), window);
+	g_signal_connect(GTK_OBJECT(window), "destroy", G_CALLBACK(des_popup), window);
 	gtk_object_set_user_data(GTK_OBJECT(window), url);
 	gtk_widget_realize(window);
 
@@ -1167,11 +1167,11 @@
 
 	button = picture_button(window, _("Close"), cancel_xpm);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 5);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(des_popup), window);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(des_popup), window);
 
 	button = picture_button(window, _("More Info"), tb_search_xpm);
 	gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 5);
-	gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(open_url), url);
+	g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(open_url), url);
 
 	gtk_widget_show_all(window);
 
--- a/src/util.c	Tue Dec 31 18:21:32 2002 +0000
+++ b/src/util.c	Tue Dec 31 19:32:38 2002 +0000
@@ -1427,7 +1427,7 @@
 		gtk_menu_append(GTK_MENU(menu), menuitem);
 
 	if (sf)
-		gtk_signal_connect(GTK_OBJECT(menuitem), "activate", sf, data);
+		g_signal_connect(GTK_OBJECT(menuitem), "activate", sf, data);
 
 	if (icon != NULL) {
 		image = gtk_image_new_from_stock(icon, GTK_ICON_SIZE_MENU);
@@ -1470,7 +1470,7 @@
 		gtk_menu_append(GTK_MENU(menu), menuitem);
 
 	if (sf)
-		gtk_signal_connect(GTK_OBJECT(menuitem), "activate", sf, data);
+		g_signal_connect(GTK_OBJECT(menuitem), "activate", sf, data);
 
 	if (iconname != NULL) {
 		char *filename;
@@ -1515,7 +1515,7 @@
 		gtk_menu_append(GTK_MENU(menu), menuitem);
 	if (sf)
 		/* passing 1 is necessary so if we sign off closing the account editor doesn't exit */
-		gtk_signal_connect(GTK_OBJECT(menuitem), "activate", sf, data);
+		g_signal_connect(GTK_OBJECT(menuitem), "activate", sf, data);
 	gtk_widget_show(menuitem);
 
 	/* Create our container */