comparison src/prefs.c @ 1813:998a6a032874

[gaim-migrate @ 1823] decklin's default conversation size patch. we should have a thing to optionally set this based on the conversation window size, but that doesn't seem that important right now. committer: Tailor Script <tailor@pidgin.im>
author Eric Warmenhoven <eric@warmenhoven.org>
date Sun, 06 May 2001 00:18:17 +0000
parents caa605e70917
children f15d449b3167
comparison
equal deleted inserted replaced
1812:b012f6b9095b 1813:998a6a032874
607 } 607 }
608 608
609 return opt; 609 return opt;
610 } 610 }
611 611
612 static void update_spin_value(GtkWidget *w, GtkWidget *spin)
613 {
614 int *value = gtk_object_get_user_data(GTK_OBJECT(spin));
615 *value = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spin));
616 }
617
618 static void gaim_labeled_spin_button(GtkWidget *box, const gchar *title, int *val)
619 {
620 GtkWidget *hbox;
621 GtkWidget *label;
622 GtkWidget *spin;
623 GtkObject *adjust;
624
625 hbox = gtk_hbox_new(FALSE, 5);
626 gtk_box_pack_start(GTK_BOX(box), hbox, FALSE, FALSE, 5);
627 gtk_widget_show(hbox);
628
629 label = gtk_label_new(title);
630 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 5);
631 gtk_widget_show(label);
632
633 adjust = gtk_adjustment_new(*val, 1, 9999, 1, 1, 1);
634 spin = gtk_spin_button_new(GTK_ADJUSTMENT(adjust), 1, 0);
635 gtk_object_set_user_data(GTK_OBJECT(spin), val);
636 gtk_widget_set_usize(spin, 50, -1);
637 gtk_box_pack_start(GTK_BOX(hbox), spin, FALSE, FALSE, 0);
638 gtk_signal_connect(GTK_OBJECT(adjust), "value-changed",
639 GTK_SIGNAL_FUNC(update_spin_value), GTK_WIDGET(spin));
640 gtk_widget_show(spin);
641 }
642
612 static void im_page() 643 static void im_page()
613 { 644 {
614 GtkWidget *parent; 645 GtkWidget *parent;
615 GtkWidget *box; 646 GtkWidget *box;
616 GtkWidget *label; 647 GtkWidget *label;
617 GtkWidget *frame; 648 GtkWidget *frame;
649 GtkWidget *vbox;
618 GtkWidget *hbox; 650 GtkWidget *hbox;
619 GtkWidget *vbox; 651 GtkWidget *vbox2;
620 GtkWidget *opt; 652 GtkWidget *opt;
621 GtkWidget *sep; 653 GtkWidget *sep;
622 GtkWidget *button; 654 GtkWidget *button;
623 GtkWidget *button2; 655 GtkWidget *button2;
624 GtkWidget *hbox2; 656 GtkWidget *hbox2;
625 GtkWidget *vbox2; 657 GtkWidget *vbox3;
626 658
627 parent = prefdialog->parent; 659 parent = prefdialog->parent;
628 gtk_widget_destroy(prefdialog); 660 gtk_widget_destroy(prefdialog);
629 661
630 prefdialog = gtk_frame_new(_("IM Options")); 662 prefdialog = gtk_frame_new(_("IM Options"));
641 673
642 frame = gtk_frame_new(_("IM Window")); 674 frame = gtk_frame_new(_("IM Window"));
643 gtk_box_pack_start(GTK_BOX(box), frame, FALSE, FALSE, 5); 675 gtk_box_pack_start(GTK_BOX(box), frame, FALSE, FALSE, 5);
644 gtk_widget_show(frame); 676 gtk_widget_show(frame);
645 677
678 vbox = gtk_vbox_new(FALSE, 5);
679 gtk_container_add(GTK_CONTAINER(frame), vbox);
680 gtk_widget_show(vbox);
681
682 hbox = gtk_hbox_new(FALSE, 5);
683 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 5);
684 gtk_widget_show(hbox);
685
686 vbox2 = gtk_vbox_new(TRUE, 5);
687 gtk_box_pack_start(GTK_BOX(hbox), vbox2, FALSE, FALSE, 5);
688 gtk_widget_show(vbox2);
689
690 label = gtk_label_new(_("Show buttons as: "));
691 gtk_box_pack_start(GTK_BOX(vbox2), label, FALSE, FALSE, 5);
692 gtk_widget_show(label);
693
694 opt = am_radio(_("Pictures And Text"), OPT_DISP_CONV_BUTTON_TEXT | OPT_DISP_CONV_BUTTON_XPM, vbox2, NULL);
695 opt = am_radio(_("Pictures"), OPT_DISP_CONV_BUTTON_XPM, vbox2, opt);
696 opt = am_radio(_("Text"), OPT_DISP_CONV_BUTTON_TEXT, vbox2, opt);
697
698 sep = gtk_vseparator_new();
699 gtk_box_pack_start(GTK_BOX(hbox), sep, FALSE, FALSE, 5);
700 gtk_widget_show(sep);
701
702 vbox2 = gtk_vbox_new(TRUE, 5);
703 gtk_box_pack_start(GTK_BOX(hbox), vbox2, TRUE, TRUE, 5);
704 gtk_widget_show(vbox2);
705
706 button = gaim_button(_("Show all conversations in one tabbed window"), &display_options, OPT_DISP_ONE_WINDOW, vbox2);
707 gaim_button(_("Raise windows on events"), &general_options, OPT_GEN_POPUP_WINDOWS, vbox2);
708 gaim_button(_("Show logins in window"), &display_options, OPT_DISP_SHOW_LOGON, vbox2);
709
710 hbox = gtk_hbox_new(FALSE, 5);
711 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 5);
712 gtk_widget_show(hbox);
713
714 gaim_labeled_spin_button(hbox, _("New window width:"), &conv_size.width);
715 gaim_labeled_spin_button(hbox, _("New window height:"), &conv_size.height);
716 gaim_labeled_spin_button(hbox, _("Entry widget height:"), &conv_size.entry_height);
717
718 frame = gtk_frame_new(_("Group Chat Window"));
719 gtk_box_pack_start(GTK_BOX(box), frame, FALSE, FALSE, 5);
720 gtk_widget_show(frame);
721
722 vbox = gtk_vbox_new(FALSE, 5);
723 gtk_container_add(GTK_CONTAINER(frame), vbox);
724 gtk_widget_show(vbox);
725
726 hbox = gtk_hbox_new(FALSE, 5);
727 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 5);
728 gtk_widget_show(hbox);
729
730 vbox2 = gtk_vbox_new(TRUE, 5);
731 gtk_box_pack_start(GTK_BOX(hbox), vbox2, FALSE, FALSE, 5);
732 gtk_widget_show(vbox2);
733
734 label = gtk_label_new(_("Show buttons as: "));
735 gtk_box_pack_start(GTK_BOX(vbox2), label, FALSE, FALSE, 5);
736 gtk_widget_show(label);
737
738 opt = am_radio(_("Pictures And Text"), OPT_DISP_CHAT_BUTTON_TEXT | OPT_DISP_CHAT_BUTTON_XPM | 1, vbox2, NULL);
739 opt = am_radio(_("Pictures"), OPT_DISP_CHAT_BUTTON_XPM | 1, vbox2, opt);
740 opt = am_radio(_("Text"), OPT_DISP_CHAT_BUTTON_TEXT | 1, vbox2, opt);
741
742 sep = gtk_vseparator_new();
743 gtk_box_pack_start(GTK_BOX(hbox), sep, FALSE, FALSE, 5);
744 gtk_widget_show(sep);
745
746 vbox2 = gtk_vbox_new(TRUE, 5);
747 gtk_box_pack_start(GTK_BOX(hbox), vbox2, TRUE, TRUE, 5);
748 gtk_widget_show(vbox2);
749
750 button2 = gaim_button(_("Show all chats in one tabbed window"), &display_options, OPT_DISP_ONE_CHAT_WINDOW, vbox2);
751 gaim_button(_("Raise windows on events"), &general_options, OPT_GEN_POPUP_CHAT, vbox2);
752 gaim_button(_("Show people joining/leaving in window"), &display_options, OPT_DISP_CHAT_LOGON, vbox2);
753
754 hbox = gtk_hbox_new(FALSE, 5);
755 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 5);
756 gtk_widget_show(hbox);
757
758 gaim_labeled_spin_button(hbox, _("New window width:"), &buddy_chat_size.width);
759 gaim_labeled_spin_button(hbox, _("New window height:"), &buddy_chat_size.height);
760 gaim_labeled_spin_button(hbox, _("Entry widget height:"), &buddy_chat_size.entry_height);
761
762 frame = gtk_frame_new(_("Tabbed Window Options"));
763 gtk_box_pack_start(GTK_BOX(box), frame, FALSE, FALSE, 5);
764 gtk_widget_show(frame);
765
646 hbox = gtk_hbox_new(FALSE, 5); 766 hbox = gtk_hbox_new(FALSE, 5);
647 gtk_container_add(GTK_CONTAINER(frame), hbox); 767 gtk_container_add(GTK_CONTAINER(frame), hbox);
648 gtk_widget_show(hbox); 768 gtk_widget_show(hbox);
649 769
650 vbox = gtk_vbox_new(TRUE, 5); 770 vbox = gtk_vbox_new(FALSE, 5);
651 gtk_box_pack_start(GTK_BOX(hbox), vbox, FALSE, FALSE, 5); 771 gtk_box_pack_start(GTK_BOX(hbox), vbox, TRUE, TRUE, 5);
652 gtk_widget_show(vbox); 772 gtk_widget_show(vbox);
653 773
654 label = gtk_label_new(_("Show buttons as ")); 774 label = gtk_label_new(_("IM Tab Placement:"));
655 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 5); 775 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 5);
656 gtk_widget_show(label); 776 gtk_widget_show(label);
657 777
658 opt = am_radio(_("Pictures And Text"), OPT_DISP_CONV_BUTTON_TEXT | OPT_DISP_CONV_BUTTON_XPM, vbox, NULL); 778 hbox2 = gtk_hbox_new(TRUE, 5);
659 opt = am_radio(_("Pictures"), OPT_DISP_CONV_BUTTON_XPM, vbox, opt); 779 gtk_box_pack_start(GTK_BOX(vbox), hbox2, TRUE, TRUE, 5);
660 opt = am_radio(_("Text"), OPT_DISP_CONV_BUTTON_TEXT, vbox, opt); 780 gtk_widget_show(hbox2);
781
782 vbox3 = gtk_vbox_new(TRUE, 5);
783 gtk_box_pack_start(GTK_BOX(hbox2), vbox3, TRUE, TRUE, 5);
784 gtk_widget_show(vbox3);
785
786 opt = tab_radio(_("Top"), 0, vbox3, NULL);
787 gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), opt);
788 opt = tab_radio(_("Bottom"), OPT_DISP_CONV_BR_TAB, vbox3, opt);
789 gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), opt);
790
791 vbox3 = gtk_vbox_new(TRUE, 5);
792 gtk_box_pack_start(GTK_BOX(hbox2), vbox3, TRUE, TRUE, 5);
793 gtk_widget_show(vbox3);
794
795 opt = tab_radio(_("Left"), OPT_DISP_CONV_SIDE_TAB, vbox3, opt);
796 gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), opt);
797 opt = tab_radio(_("Right"), OPT_DISP_CONV_SIDE_TAB | OPT_DISP_CONV_BR_TAB, vbox3, opt);
798 gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), opt);
661 799
662 sep = gtk_vseparator_new(); 800 sep = gtk_vseparator_new();
663 gtk_box_pack_start(GTK_BOX(hbox), sep, FALSE, FALSE, 5); 801 gtk_box_pack_start(GTK_BOX(hbox), sep, FALSE, FALSE, 5);
664 gtk_widget_show(sep); 802 gtk_widget_show(sep);
665 803
666 vbox = gtk_vbox_new(TRUE, 5);
667 gtk_box_pack_start(GTK_BOX(hbox), vbox, TRUE, TRUE, 5);
668 gtk_widget_show(vbox);
669
670 button = gaim_button(_("Show all conversations in one tabbed window"), &display_options, OPT_DISP_ONE_WINDOW, vbox);
671 gaim_button(_("Raise windows on events"), &general_options, OPT_GEN_POPUP_WINDOWS, vbox);
672 gaim_button(_("Show logins in window"), &display_options, OPT_DISP_SHOW_LOGON, vbox);
673 gaim_button(_("Show larger entry box on new windows"), &display_options, OPT_DISP_CONV_BIG_ENTRY, vbox);
674
675 frame = gtk_frame_new(_("Group Chat Window"));
676 gtk_box_pack_start(GTK_BOX(box), frame, FALSE, FALSE, 5);
677 gtk_widget_show(frame);
678
679 hbox = gtk_hbox_new(FALSE, 5);
680 gtk_container_add(GTK_CONTAINER(frame), hbox);
681 gtk_widget_show(hbox);
682
683 vbox = gtk_vbox_new(TRUE, 5);
684 gtk_box_pack_start(GTK_BOX(hbox), vbox, FALSE, FALSE, 5);
685 gtk_widget_show(vbox);
686
687 label = gtk_label_new(_("Show buttons as "));
688 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 5);
689 gtk_widget_show(label);
690
691 opt = am_radio(_("Pictures And Text"), OPT_DISP_CHAT_BUTTON_TEXT | OPT_DISP_CHAT_BUTTON_XPM | 1, vbox, NULL);
692 opt = am_radio(_("Pictures"), OPT_DISP_CHAT_BUTTON_XPM | 1, vbox, opt);
693 opt = am_radio(_("Text"), OPT_DISP_CHAT_BUTTON_TEXT | 1, vbox, opt);
694
695 sep = gtk_vseparator_new();
696 gtk_box_pack_start(GTK_BOX(hbox), sep, FALSE, FALSE, 5);
697 gtk_widget_show(sep);
698
699 vbox = gtk_vbox_new(TRUE, 5);
700 gtk_box_pack_start(GTK_BOX(hbox), vbox, TRUE, TRUE, 5);
701 gtk_widget_show(vbox);
702
703 button2 = gaim_button(_("Show all chats in one tabbed window"), &display_options, OPT_DISP_ONE_CHAT_WINDOW, vbox);
704 gaim_button(_("Raise windows on events"), &general_options, OPT_GEN_POPUP_CHAT, vbox);
705 gaim_button(_("Show people joining/leaving in window"), &display_options, OPT_DISP_CHAT_LOGON, vbox);
706 gaim_button(_("Show larger entry box on new windows"), &display_options, OPT_DISP_CHAT_BIG_ENTRY, vbox);
707
708 frame = gtk_frame_new(_("Tabbed Window Options"));
709 gtk_box_pack_start(GTK_BOX(box), frame, FALSE, FALSE, 5);
710 gtk_widget_show(frame);
711
712 hbox = gtk_hbox_new(FALSE, 5);
713 gtk_container_add(GTK_CONTAINER(frame), hbox);
714 gtk_widget_show(hbox);
715
716 vbox = gtk_vbox_new(FALSE, 5); 804 vbox = gtk_vbox_new(FALSE, 5);
717 gtk_box_pack_start(GTK_BOX(hbox), vbox, TRUE, TRUE, 5); 805 gtk_box_pack_start(GTK_BOX(hbox), vbox, TRUE, TRUE, 5);
718 gtk_widget_show(vbox); 806 gtk_widget_show(vbox);
719 807
720 label = gtk_label_new(_("IM Tab Placement:")); 808 label = gtk_label_new(_("Chat Tab Placement:"));
721 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 5); 809 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 5);
722 gtk_widget_show(label); 810 gtk_widget_show(label);
723 811
724 hbox2 = gtk_hbox_new(TRUE, 5); 812 hbox2 = gtk_hbox_new(TRUE, 5);
725 gtk_box_pack_start(GTK_BOX(vbox), hbox2, TRUE, TRUE, 5); 813 gtk_box_pack_start(GTK_BOX(vbox), hbox2, TRUE, TRUE, 5);
726 gtk_widget_show(hbox2); 814 gtk_widget_show(hbox2);
727 815
728 vbox2 = gtk_vbox_new(TRUE, 5); 816 vbox3 = gtk_vbox_new(TRUE, 5);
729 gtk_box_pack_start(GTK_BOX(hbox2), vbox2, TRUE, TRUE, 5); 817 gtk_box_pack_start(GTK_BOX(hbox2), vbox3, TRUE, TRUE, 5);
730 gtk_widget_show(vbox2); 818 gtk_widget_show(vbox3);
731 819
732 opt = tab_radio(_("Top"), 0, vbox2, NULL); 820 opt = tab_radio(_("Top"), 1, vbox3, NULL);
733 gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), opt);
734 opt = tab_radio(_("Bottom"), OPT_DISP_CONV_BR_TAB, vbox2, opt);
735 gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), opt);
736
737 vbox2 = gtk_vbox_new(TRUE, 5);
738 gtk_box_pack_start(GTK_BOX(hbox2), vbox2, TRUE, TRUE, 5);
739 gtk_widget_show(vbox2);
740
741 opt = tab_radio(_("Left"), OPT_DISP_CONV_SIDE_TAB, vbox2, opt);
742 gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), opt);
743 opt = tab_radio(_("Right"), OPT_DISP_CONV_SIDE_TAB | OPT_DISP_CONV_BR_TAB, vbox2, opt);
744 gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), opt);
745
746 sep = gtk_vseparator_new();
747 gtk_box_pack_start(GTK_BOX(hbox), sep, FALSE, FALSE, 5);
748 gtk_widget_show(sep);
749
750 vbox = gtk_vbox_new(FALSE, 5);
751 gtk_box_pack_start(GTK_BOX(hbox), vbox, TRUE, TRUE, 5);
752 gtk_widget_show(vbox);
753
754 label = gtk_label_new(_("Chat Tab Placement:"));
755 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 5);
756 gtk_widget_show(label);
757
758 hbox2 = gtk_hbox_new(TRUE, 5);
759 gtk_box_pack_start(GTK_BOX(vbox), hbox2, TRUE, TRUE, 5);
760 gtk_widget_show(hbox2);
761
762 vbox2 = gtk_vbox_new(TRUE, 5);
763 gtk_box_pack_start(GTK_BOX(hbox2), vbox2, TRUE, TRUE, 5);
764 gtk_widget_show(vbox2);
765
766 opt = tab_radio(_("Top"), 1, vbox2, NULL);
767 gtk_signal_connect(GTK_OBJECT(button2), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), opt); 821 gtk_signal_connect(GTK_OBJECT(button2), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), opt);
768 opt = tab_radio(_("Bottom"), OPT_DISP_CHAT_BR_TAB | 1, vbox2, opt); 822 opt = tab_radio(_("Bottom"), OPT_DISP_CHAT_BR_TAB | 1, vbox3, opt);
769 gtk_signal_connect(GTK_OBJECT(button2), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), opt); 823 gtk_signal_connect(GTK_OBJECT(button2), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), opt);
770 824
771 vbox2 = gtk_vbox_new(TRUE, 5); 825 vbox3 = gtk_vbox_new(TRUE, 5);
772 gtk_box_pack_start(GTK_BOX(hbox2), vbox2, TRUE, TRUE, 5); 826 gtk_box_pack_start(GTK_BOX(hbox2), vbox3, TRUE, TRUE, 5);
773 gtk_widget_show(vbox2); 827 gtk_widget_show(vbox3);
774 828
775 opt = tab_radio(_("Left"), OPT_DISP_CHAT_SIDE_TAB | 1, vbox2, opt); 829 opt = tab_radio(_("Left"), OPT_DISP_CHAT_SIDE_TAB | 1, vbox3, opt);
776 gtk_signal_connect(GTK_OBJECT(button2), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), opt); 830 gtk_signal_connect(GTK_OBJECT(button2), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), opt);
777 opt = tab_radio(_("Right"), OPT_DISP_CHAT_SIDE_TAB | OPT_DISP_CHAT_BR_TAB | 1, vbox2, opt); 831 opt = tab_radio(_("Right"), OPT_DISP_CHAT_SIDE_TAB | OPT_DISP_CHAT_BR_TAB | 1, vbox3, opt);
778 gtk_signal_connect(GTK_OBJECT(button2), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), opt); 832 gtk_signal_connect(GTK_OBJECT(button2), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), opt);
779 833
780 gtk_widget_show(prefdialog); 834 gtk_widget_show(prefdialog);
781 } 835 }
782 836
1110 style->bg[0] = c; 1164 style->bg[0] = c;
1111 gtk_widget_set_style(pic, style); 1165 gtk_widget_set_style(pic, style);
1112 gtk_style_unref(style); 1166 gtk_style_unref(style);
1113 } 1167 }
1114 1168
1115 static void set_font_size(GtkWidget *w, GtkWidget *spin)
1116 {
1117 fontsize = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spin));
1118 }
1119
1120 static void font_page() 1169 static void font_page()
1121 { 1170 {
1122 GtkWidget *parent; 1171 GtkWidget *parent;
1123 GtkWidget *box; 1172 GtkWidget *box;
1124 GtkWidget *label; 1173 GtkWidget *label;
1238 button = gaim_button(_("Font Size for Text"), &font_options, OPT_FONT_SIZE, hbox); 1287 button = gaim_button(_("Font Size for Text"), &font_options, OPT_FONT_SIZE, hbox);
1239 1288
1240 adjust = gtk_adjustment_new(fontsize, 1, 7, 1, 1, 1); 1289 adjust = gtk_adjustment_new(fontsize, 1, 7, 1, 1, 1);
1241 spin = gtk_spin_button_new(GTK_ADJUSTMENT(adjust), 1, 0); 1290 spin = gtk_spin_button_new(GTK_ADJUSTMENT(adjust), 1, 0);
1242 gtk_widget_set_usize(spin, 50, -1); 1291 gtk_widget_set_usize(spin, 50, -1);
1292 gtk_object_set_user_data(GTK_OBJECT(spin), &fontsize);
1243 if (!(font_options & OPT_FONT_SIZE)) 1293 if (!(font_options & OPT_FONT_SIZE))
1244 gtk_widget_set_sensitive(GTK_WIDGET(spin), FALSE); 1294 gtk_widget_set_sensitive(GTK_WIDGET(spin), FALSE);
1245 gtk_box_pack_start(GTK_BOX(hbox), spin, FALSE, FALSE, 0); 1295 gtk_box_pack_start(GTK_BOX(hbox), spin, FALSE, FALSE, 0);
1246 gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), spin); 1296 gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), spin);
1247 gtk_signal_connect(GTK_OBJECT(adjust), "value-changed", GTK_SIGNAL_FUNC(set_font_size), 1297 + gtk_signal_connect(GTK_OBJECT(adjust), "value-changed", GTK_SIGNAL_FUNC(update_spin_value),
1248 GTK_WIDGET(spin)); 1298 GTK_WIDGET(spin));
1249 gtk_widget_show(spin); 1299 gtk_widget_show(spin);
1250 1300
1251 gtk_container_add(GTK_CONTAINER(frame), fbox); 1301 gtk_container_add(GTK_CONTAINER(frame), fbox);
1252 gtk_container_set_border_width(GTK_CONTAINER(fbox), 5); 1302 gtk_container_set_border_width(GTK_CONTAINER(fbox), 5);
1534 static void do_away_mess(GtkWidget *m, gpointer n) 1584 static void do_away_mess(GtkWidget *m, gpointer n)
1535 { 1585 {
1536 GList *i = GTK_LIST(prefs_away_list)->selection; 1586 GList *i = GTK_LIST(prefs_away_list)->selection;
1537 if (i) 1587 if (i)
1538 do_away_message(NULL, gtk_object_get_user_data(GTK_OBJECT(i->data))); 1588 do_away_message(NULL, gtk_object_get_user_data(GTK_OBJECT(i->data)));
1539 }
1540
1541 static void set_auto_away(GtkWidget *w, GtkWidget *spin)
1542 {
1543 auto_away = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spin));
1544 } 1589 }
1545 1590
1546 void set_default_away(GtkWidget *w, gpointer i) 1591 void set_default_away(GtkWidget *w, gpointer i)
1547 { 1592 {
1548 int length = g_slist_length(away_messages); 1593 int length = g_slist_length(away_messages);
1657 button = gaim_button(_("Auto Away after"), &general_options, OPT_GEN_AUTO_AWAY, hbox); 1702 button = gaim_button(_("Auto Away after"), &general_options, OPT_GEN_AUTO_AWAY, hbox);
1658 1703
1659 adjust = gtk_adjustment_new(auto_away, 1, 1440, 1, 10, 10); 1704 adjust = gtk_adjustment_new(auto_away, 1, 1440, 1, 10, 10);
1660 spin = gtk_spin_button_new(GTK_ADJUSTMENT(adjust), 1, 0); 1705 spin = gtk_spin_button_new(GTK_ADJUSTMENT(adjust), 1, 0);
1661 gtk_widget_set_usize(spin, 50, -1); 1706 gtk_widget_set_usize(spin, 50, -1);
1707 gtk_object_set_user_data(GTK_OBJECT(spin), &auto_away);
1662 if (!(general_options & OPT_GEN_AUTO_AWAY)) 1708 if (!(general_options & OPT_GEN_AUTO_AWAY))
1663 gtk_widget_set_sensitive(GTK_WIDGET(spin), FALSE); 1709 gtk_widget_set_sensitive(GTK_WIDGET(spin), FALSE);
1664 gtk_box_pack_start(GTK_BOX(hbox), spin, FALSE, FALSE, 0); 1710 gtk_box_pack_start(GTK_BOX(hbox), spin, FALSE, FALSE, 0);
1665 gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), spin); 1711 gtk_signal_connect(GTK_OBJECT(button), "clicked", GTK_SIGNAL_FUNC(toggle_sensitive), spin);
1666 gtk_signal_connect(GTK_OBJECT(adjust), "value-changed", GTK_SIGNAL_FUNC(set_auto_away), 1712 gtk_signal_connect(GTK_OBJECT(adjust), "value-changed", GTK_SIGNAL_FUNC(update_spin_value),
1667 GTK_WIDGET(spin)); 1713 GTK_WIDGET(spin));
1668 gtk_widget_show(spin); 1714 gtk_widget_show(spin);
1669 1715
1670 label = gtk_label_new(_("minutes using")); 1716 label = gtk_label_new(_("minutes using"));
1671 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); 1717 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);