comparison src/gtkblist.c @ 10643:868aafbe859b

[gaim-migrate @ 12153] GtkGaimStatusBox, a new status selection widget. It currently sucks. Pretty much just the UI code with enough copy/paste code hacked in from gtkstatusselector to minimally work. Minimally work provided you're only using protocol which have already been updated to handle offline/online as statuses. Which I think is limited to AIM and Yahoo! right now. Anyway, it's cool. committer: Tailor Script <tailor@pidgin.im>
author Sean Egan <seanegan@gmail.com>
date Sun, 27 Feb 2005 08:35:11 +0000
parents 14c32196fcfd
children 54ac161a876e
comparison
equal deleted inserted replaced
10642:0376d4c84b9f 10643:868aafbe859b
51 #include "gtkprefs.h" 51 #include "gtkprefs.h"
52 #include "gtkprivacy.h" 52 #include "gtkprivacy.h"
53 #include "gtkroomlist.h" 53 #include "gtkroomlist.h"
54 #include "gtksavedstatuses.h" 54 #include "gtksavedstatuses.h"
55 #include "gtksound.h" 55 #include "gtksound.h"
56 #include "gtkstatusselector.h" 56 #include "gtkstatusbox.h"
57 #include "gtkutils.h" 57 #include "gtkutils.h"
58 58
59 #include <gdk/gdkkeysyms.h> 59 #include <gdk/gdkkeysyms.h>
60 #include <gtk/gtk.h> 60 #include <gtk/gtk.h>
61 #include <gdk/gdk.h> 61 #include <gdk/gdk.h>
3351 void *handle; 3351 void *handle;
3352 GtkCellRenderer *rend; 3352 GtkCellRenderer *rend;
3353 GtkTreeViewColumn *column; 3353 GtkTreeViewColumn *column;
3354 GtkWidget *menu; 3354 GtkWidget *menu;
3355 GtkWidget *sw; 3355 GtkWidget *sw;
3356 GtkWidget *selector;
3357 GtkAccelGroup *accel_group; 3356 GtkAccelGroup *accel_group;
3358 GtkTreeSelection *selection; 3357 GtkTreeSelection *selection;
3359 GtkTargetEntry dte[] = {{"GAIM_BLIST_NODE", GTK_TARGET_SAME_APP, DRAG_ROW}, 3358 GtkTargetEntry dte[] = {{"GAIM_BLIST_NODE", GTK_TARGET_SAME_APP, DRAG_ROW},
3360 {"application/x-im-contact", 0, DRAG_BUDDY}, 3359 {"application/x-im-contact", 0, DRAG_BUDDY},
3361 {"text/x-vcard", 0, DRAG_VCARD }, 3360 {"text/x-vcard", 0, DRAG_VCARD },
3493 3492
3494 gtk_box_pack_start(GTK_BOX(gtkblist->vbox), sw, TRUE, TRUE, 0); 3493 gtk_box_pack_start(GTK_BOX(gtkblist->vbox), sw, TRUE, TRUE, 0);
3495 gtk_container_add(GTK_CONTAINER(sw), gtkblist->treeview); 3494 gtk_container_add(GTK_CONTAINER(sw), gtkblist->treeview);
3496 gaim_gtk_blist_update_columns(); 3495 gaim_gtk_blist_update_columns();
3497 3496
3498 selector = gaim_gtk_status_selector_new(); 3497 gtkblist->statusbox = gtk_gaim_status_box_new();
3499 gtk_widget_show(selector); 3498
3500 gtk_box_pack_start(GTK_BOX(gtkblist->vbox), selector, FALSE, TRUE, 0); 3499 gtk_widget_show(gtkblist->statusbox);
3500 gtk_box_pack_start(GTK_BOX(gtkblist->vbox), gtkblist->statusbox, FALSE, TRUE, 0);
3501 3501
3502 /* set the Show Offline Buddies option. must be done 3502 /* set the Show Offline Buddies option. must be done
3503 * after the treeview or faceprint gets mad. -Robot101 3503 * after the treeview or faceprint gets mad. -Robot101
3504 */ 3504 */
3505 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(gtk_item_factory_get_item (gtkblist->ift, N_("/Buddies/Show Offline Buddies"))), 3505 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(gtk_item_factory_get_item (gtkblist->ift, N_("/Buddies/Show Offline Buddies"))),
4745 4745
4746 GaimBlistUiOps * 4746 GaimBlistUiOps *
4747 gaim_gtk_blist_get_ui_ops(void) 4747 gaim_gtk_blist_get_ui_ops(void)
4748 { 4748 {
4749 return &blist_ui_ops; 4749 return &blist_ui_ops;
4750 }
4751
4752 GaimGtkBuddyList *gaim_gtk_blist_get_default_gtk_blist()
4753 {
4754 return gtkblist;
4750 } 4755 }
4751 4756
4752 static void account_signon_cb(GaimConnection *gc, gpointer z) 4757 static void account_signon_cb(GaimConnection *gc, gpointer z)
4753 { 4758 {
4754 GaimAccount *account = gaim_connection_get_account(gc); 4759 GaimAccount *account = gaim_connection_get_account(gc);