Mercurial > pidgin
diff src/buddy.c @ 935:5e6ca3dd4d02
[gaim-migrate @ 945]
yay. thanks bmiller
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Fri, 22 Sep 2000 10:16:40 +0000 |
parents | d2e865d64dd8 |
children | 9fca1293f871 |
line wrap: on
line diff
--- a/src/buddy.c Thu Sep 21 19:21:35 2000 +0000 +++ b/src/buddy.c Fri Sep 22 10:16:40 2000 +0000 @@ -1045,6 +1045,30 @@ show_add_group(); } +static void im_callback(GtkWidget *widget, GtkTree *tree) +{ + GList *i; + struct buddy *b = NULL; + struct conversation *c; + i = GTK_TREE_SELECTION(tree); + if (i) { + b = gtk_object_get_user_data(GTK_OBJECT(i->data)); + } else { + show_im_dialog(); + return; + } + if (!b->name) + return; + + c = find_conversation(b->name); + if (c == NULL) { + c = new_conversation(b->name); + } else { + gdk_window_raise(c->window->window); + } +} + + static void info_callback(GtkWidget *widget, GtkTree *tree) { GList *i; @@ -1053,6 +1077,7 @@ if (i) { b = gtk_object_get_user_data(GTK_OBJECT(i->data)); } else { + show_info_dialog(); return; } if (!b->name) @@ -1771,7 +1796,7 @@ gtk_box_pack_start(GTK_BOX(imchatbox), chatbutton, TRUE, TRUE, 0); gtk_container_border_width(GTK_CONTAINER(imchatbox), 10); - gtk_signal_connect(GTK_OBJECT(imbutton), "clicked", GTK_SIGNAL_FUNC(show_im_dialog), buddies); + gtk_signal_connect(GTK_OBJECT(imbutton), "clicked", GTK_SIGNAL_FUNC(im_callback), buddies); gtk_signal_connect(GTK_OBJECT(infobutton), "clicked", GTK_SIGNAL_FUNC(info_callback), buddies); gtk_signal_connect(GTK_OBJECT(chatbutton), "clicked", GTK_SIGNAL_FUNC(chat_callback), buddies);