comparison src/buddy.c @ 4692:a81443d3516b

[gaim-migrate @ 5003] Thanks, Ha-King committer: Tailor Script <tailor@pidgin.im>
author Sean Egan <seanegan@gmail.com>
date Mon, 10 Mar 2003 07:21:18 +0000
parents d78f7cb8ae4f
children 8f523dbb970e
comparison
equal deleted inserted replaced
4691:d78f7cb8ae4f 4692:a81443d3516b
58 58
59 /*************************************************** 59 /***************************************************
60 * Callbacks * 60 * Callbacks *
61 ***************************************************/ 61 ***************************************************/
62 62
63 static void gtk_blist_button_im_cb(GtkWidget *w, GtkTreeView *tv)
64 {
65 GtkTreeIter iter;
66 GtkTreeModel *model = gtk_tree_view_get_model(tv);
67 GtkTreeSelection *sel = gtk_tree_view_get_selection(tv);
68
69 if(gtk_tree_selection_get_selected(sel, &model, &iter)){
70 GaimBlistNode *node;
71
72 gtk_tree_model_get(GTK_TREE_MODEL(gtkblist->treemodel), &iter, NODE_COLUMN, &node, -1);
73 if (GAIM_BLIST_NODE_IS_BUDDY(node))
74 gaim_conversation_new(GAIM_CONV_IM, ((struct buddy*)node)->account, ((struct buddy*)node)->name);
75 }
76
77
78 }
79
63 static void gtk_blist_row_activated_cb(GtkTreeView *tv, GtkTreePath *path, GtkTreeViewColumn *col, gpointer data) { 80 static void gtk_blist_row_activated_cb(GtkTreeView *tv, GtkTreePath *path, GtkTreeViewColumn *col, gpointer data) {
64 GaimBlistNode *node; 81 GaimBlistNode *node;
65 GtkTreeIter iter; 82 GtkTreeIter iter;
66 GValue val = { 0, }; 83 GValue val = { 0, };
67 84
166 static void gaim_gtk_blist_add_buddy_cb() 183 static void gaim_gtk_blist_add_buddy_cb()
167 { 184 {
168 GtkTreeSelection *sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(gtkblist->treeview)); 185 GtkTreeSelection *sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(gtkblist->treeview));
169 GtkTreeIter iter; 186 GtkTreeIter iter;
170 GaimBlistNode *node; 187 GaimBlistNode *node;
171 GValue val; 188
172 189 if(gtk_tree_selection_get_selected(sel, NULL, &iter)){
173 if (gtk_tree_selection_get_selected(sel, NULL, &iter)) { 190 gtk_tree_model_get(GTK_TREE_MODEL(gtkblist->treemodel), &iter, NODE_COLUMN, &node, -1);
174 gtk_tree_model_get_value (GTK_TREE_MODEL(gtkblist->treemodel), &iter, NODE_COLUMN, &val);
175 node = g_value_get_pointer(&val);
176
177 if (GAIM_BLIST_NODE_IS_BUDDY(node)) 191 if (GAIM_BLIST_NODE_IS_BUDDY(node))
178 show_add_buddy(NULL, NULL, ((struct group*)node->parent)->name, NULL); 192 show_add_buddy(NULL, NULL, ((struct group*)node->parent)->name, NULL);
179 else if (GAIM_BLIST_NODE_IS_GROUP(node)) 193 else if (GAIM_BLIST_NODE_IS_GROUP(node))
180 show_add_buddy(NULL, NULL, ((struct group*)node)->name, NULL); 194 show_add_buddy(NULL, NULL, ((struct group*)node)->name, NULL);
181 } else { 195 }
182 show_add_buddy(NULL,NULL,NULL,NULL); 196 else{
183 } 197 show_add_buddy(NULL, NULL, NULL, NULL);
184 198 }
185 } 199 }
186 200
187 201
188 /*************************************************** 202 /***************************************************
189 * Crap * 203 * Crap *
513 gtkblist->bbox = gtk_hbox_new(TRUE, 0); 527 gtkblist->bbox = gtk_hbox_new(TRUE, 0);
514 gtk_box_pack_start(GTK_BOX(gtkblist->vbox), gtkblist->bbox, FALSE, FALSE, 0); 528 gtk_box_pack_start(GTK_BOX(gtkblist->vbox), gtkblist->bbox, FALSE, FALSE, 0);
515 button = gaim_pixbuf_button_from_stock(_("IM"), GAIM_STOCK_IM, GAIM_BUTTON_VERTICAL); 529 button = gaim_pixbuf_button_from_stock(_("IM"), GAIM_STOCK_IM, GAIM_BUTTON_VERTICAL);
516 gtk_box_pack_start(GTK_BOX(gtkblist->bbox), button, FALSE, FALSE, 0); 530 gtk_box_pack_start(GTK_BOX(gtkblist->bbox), button, FALSE, FALSE, 0);
517 gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE); 531 gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);
532 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(gtk_blist_button_im_cb),
533 gtkblist->treeview);
534
518 button = gaim_pixbuf_button_from_stock(_("Get Info"), GAIM_STOCK_INFO, GAIM_BUTTON_VERTICAL); 535 button = gaim_pixbuf_button_from_stock(_("Get Info"), GAIM_STOCK_INFO, GAIM_BUTTON_VERTICAL);
519 gtk_box_pack_start(GTK_BOX(gtkblist->bbox), button, FALSE, FALSE, 0); 536 gtk_box_pack_start(GTK_BOX(gtkblist->bbox), button, FALSE, FALSE, 0);
520 gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE); 537 gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE);
521 button = gaim_pixbuf_button_from_stock(_("Chat"), GAIM_STOCK_CHAT, GAIM_BUTTON_VERTICAL); 538 button = gaim_pixbuf_button_from_stock(_("Chat"), GAIM_STOCK_CHAT, GAIM_BUTTON_VERTICAL);
522 gtk_box_pack_start(GTK_BOX(gtkblist->bbox), button, FALSE, FALSE, 0); 539 gtk_box_pack_start(GTK_BOX(gtkblist->bbox), button, FALSE, FALSE, 0);