Mercurial > pidgin
comparison plugins/docklet/docklet.c @ 5554:7b36d02031a2
[gaim-migrate @ 5955]
More work done... Got some painful stuff to do now.
committer: Tailor Script <tailor@pidgin.im>
author | Christian Hammond <chipx86@chipx86.com> |
---|---|
date | Fri, 30 May 2003 00:00:48 +0000 |
parents | 2c4c975620f0 |
children | cade2082f760 |
comparison
equal
deleted
inserted
replaced
5553:c0593bcdd5d6 | 5554:7b36d02031a2 |
---|---|
29 /* includes */ | 29 /* includes */ |
30 #include <gtk/gtk.h> | 30 #include <gtk/gtk.h> |
31 #include "gtkplugin.h" | 31 #include "gtkplugin.h" |
32 #include "gaim.h" | 32 #include "gaim.h" |
33 #include "sound.h" | 33 #include "sound.h" |
34 #include "prefs.h" | |
35 #include "gtkblist.h" | |
34 #include "eggtrayicon.h" | 36 #include "eggtrayicon.h" |
35 #include "gtkblist.h" | |
36 | 37 |
37 #define DOCKLET_PLUGIN_ID "gtk-docklet" | 38 #define DOCKLET_PLUGIN_ID "gtk-docklet" |
38 | 39 |
39 /* types */ | 40 /* types */ |
40 enum docklet_status { | 41 enum docklet_status { |
60 | 61 |
61 static void docklet_toggle_mute(GtkWidget *toggle, void *data) { | 62 static void docklet_toggle_mute(GtkWidget *toggle, void *data) { |
62 gaim_sound_set_mute(GTK_CHECK_MENU_ITEM(toggle)->active); | 63 gaim_sound_set_mute(GTK_CHECK_MENU_ITEM(toggle)->active); |
63 } | 64 } |
64 | 65 |
65 static void docklet_toggle_queue(GtkWidget *widget, void *data) { | 66 static void docklet_set_bool(GtkWidget *widget, const char *key) { |
66 away_options ^= OPT_AWAY_QUEUE_UNREAD; | 67 gaim_prefs_set_bool(key, gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(widget))); |
67 save_prefs(); | 68 } |
68 } | |
69 | |
70 /* static void docklet_toggle_blist_show(GtkWidget *widget, void *data) { | |
71 blist_options ^= OPT_BLIST_APP_BUDDY_SHOW; | |
72 save_prefs(); | |
73 } */ | |
74 | 69 |
75 static void docklet_flush_queue() { | 70 static void docklet_flush_queue() { |
76 if (unread_message_queue) { | 71 if (unread_message_queue) { |
77 purge_away_queue(&unread_message_queue); | 72 purge_away_queue(&unread_message_queue); |
78 } | 73 } |
395 } */ | 390 } */ |
396 | 391 |
397 static gboolean | 392 static gboolean |
398 plugin_load(GaimPlugin *plugin) | 393 plugin_load(GaimPlugin *plugin) |
399 { | 394 { |
395 gaim_prefs_add_none("/plugins/gtk/docklet"); | |
396 gaim_prefs_add_bool("/plugins/gtk/docklet/queue_messages", FALSE); | |
397 | |
400 docklet_create(NULL); | 398 docklet_create(NULL); |
401 | 399 |
402 gaim_signal_connect(plugin, event_signon, gaim_signon, NULL); | 400 gaim_signal_connect(plugin, event_signon, gaim_signon, NULL); |
403 gaim_signal_connect(plugin, event_signoff, gaim_signoff, NULL); | 401 gaim_signal_connect(plugin, event_signoff, gaim_signoff, NULL); |
404 gaim_signal_connect(plugin, event_connecting, gaim_connecting, NULL); | 402 gaim_signal_connect(plugin, event_connecting, gaim_connecting, NULL); |
442 get_config_frame(GaimPlugin *plugin) | 440 get_config_frame(GaimPlugin *plugin) |
443 { | 441 { |
444 GtkWidget *frame; | 442 GtkWidget *frame; |
445 GtkWidget *vbox, *hbox; | 443 GtkWidget *vbox, *hbox; |
446 GtkWidget *toggle; | 444 GtkWidget *toggle; |
445 static const char *qmpref = "/plugins/gtk/docklet/queue_messages"; | |
447 | 446 |
448 frame = gtk_vbox_new(FALSE, 18); | 447 frame = gtk_vbox_new(FALSE, 18); |
449 gtk_container_set_border_width(GTK_CONTAINER(frame), 12); | 448 gtk_container_set_border_width(GTK_CONTAINER(frame), 12); |
450 | 449 |
451 vbox = gaim_gtk_make_frame(frame, _("Tray Icon Configuration")); | 450 vbox = gaim_gtk_make_frame(frame, _("Tray Icon Configuration")); |
452 hbox = gtk_hbox_new(FALSE, 18); | 451 hbox = gtk_hbox_new(FALSE, 18); |
453 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); | 452 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); |
454 | 453 |
455 /* toggle = gtk_check_button_new_with_mnemonic(_("_Automatically show buddy list on sign on")); | |
456 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(toggle), blist_options & OPT_BLIST_APP_BUDDY_SHOW); | |
457 g_signal_connect(G_OBJECT(toggle), "clicked", G_CALLBACK(docklet_toggle_blist_show), NULL); | |
458 gtk_box_pack_start(GTK_BOX(vbox), toggle, FALSE, FALSE, 0); */ | |
459 | |
460 toggle = gtk_check_button_new_with_mnemonic(_("_Hide new messages until tray icon is clicked")); | 454 toggle = gtk_check_button_new_with_mnemonic(_("_Hide new messages until tray icon is clicked")); |
461 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(toggle), away_options & OPT_AWAY_QUEUE_UNREAD); | 455 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(toggle), gaim_prefs_get_bool(qmpref)); |
462 g_signal_connect(G_OBJECT(toggle), "clicked", G_CALLBACK(docklet_toggle_queue), NULL); | 456 g_signal_connect(G_OBJECT(toggle), "clicked", G_CALLBACK(docklet_set_bool), (void *)qmpref); |
463 gtk_box_pack_start(GTK_BOX(vbox), toggle, FALSE, FALSE, 0); | 457 gtk_box_pack_start(GTK_BOX(vbox), toggle, FALSE, FALSE, 0); |
464 | 458 |
465 gtk_widget_show_all(frame); | 459 gtk_widget_show_all(frame); |
466 return frame; | 460 return frame; |
467 } | 461 } |