comparison src/prefs.c @ 4461:75ff69e592cc

[gaim-migrate @ 4736] Removing browser page from Win Gaim committer: Tailor Script <tailor@pidgin.im>
author Herman Bloggs <hermanator12002@yahoo.com>
date Wed, 29 Jan 2003 17:20:57 +0000
parents ce5b64fac95d
children d76095396a0e
comparison
equal deleted inserted replaced
4460:23af9ba33ca4 4461:75ff69e592cc
791 static void manual_browser_set(GtkButton *button, GtkEntry *entry) { 791 static void manual_browser_set(GtkButton *button, GtkEntry *entry) {
792 792
793 const char *program = gtk_entry_get_text(entry); 793 const char *program = gtk_entry_get_text(entry);
794 if (!program_is_valid(program)) { 794 if (!program_is_valid(program)) {
795 char *error = g_strdup_printf(_("The entered manual browser " 795 char *error = g_strdup_printf(_("The entered manual browser "
796 "'%s' is not valid. Hyperlinks will " 796 "'%s' is not valid. Hyperlinks will "
797 "not work."), program); 797 "not work."), program);
798 do_error_dialog(error, NULL, GAIM_WARNING); 798 do_error_dialog(error, NULL, GAIM_WARNING);
799 } 799 }
800 800
801 g_strlcpy(web_command, program, sizeof(web_command)); 801 g_strlcpy(web_command, program, sizeof(web_command));
802 } 802 }
803 803
804 static void manual_browser_reset(GtkButton *button, GtkEntry *entry) { 804 static void manual_browser_reset(GtkButton *button, GtkEntry *entry) {
805 gtk_entry_set_text(entry, web_command); 805 gtk_entry_set_text(entry, web_command);
806 } 806 }
807 #endif
808 807
809 static GList *get_available_browsers() 808 static GList *get_available_browsers()
810 { 809 {
811 struct browser { 810 struct browser {
812 char *name; 811 char *name;
813 char *command; 812 char *command;
814 int id; 813 int id;
815 }; 814 };
816 815
817 static struct browser possible_browsers[] = { 816 static struct browser possible_browsers[] = {
818 {N_("Konqueror"), "kfmclient", BROWSER_KONQ}, 817 {N_("Konqueror"), "kfmclient", BROWSER_KONQ},
826 GList *browsers = NULL; 825 GList *browsers = NULL;
827 int i = 0; 826 int i = 0;
828 827
829 browsers = g_list_prepend(browsers, GINT_TO_POINTER(BROWSER_MANUAL)); 828 browsers = g_list_prepend(browsers, GINT_TO_POINTER(BROWSER_MANUAL));
830 browsers = g_list_prepend(browsers, _("Manual")); 829 browsers = g_list_prepend(browsers, _("Manual"));
831 for (i = 0; i < num_possible_browsers; i++) { 830 for (i = 0; i < num_possible_browsers; i++) {
832 if (program_is_valid(possible_browsers[i].command)) { 831 if (program_is_valid(possible_browsers[i].command)) {
833 browsers = g_list_prepend(browsers, 832 browsers = g_list_prepend(browsers,
834 GINT_TO_POINTER(possible_browsers[i].id)); 833 GINT_TO_POINTER(possible_browsers[i].id));
835 browsers = g_list_prepend(browsers, possible_browsers[i].name); 834 browsers = g_list_prepend(browsers, possible_browsers[i].name);
836 } 835 }
837 } 836 }
838 837
839 return browsers; 838 return browsers;
840 } 839 }
841 840
842 GtkWidget *browser_page() { 841 GtkWidget *browser_page() {
843 GtkWidget *ret; 842 GtkWidget *ret;
844 GtkWidget *vbox; 843 GtkWidget *vbox;
845 #ifndef _WIN32
846 GtkWidget *hbox; 844 GtkWidget *hbox;
847 #endif
848 GtkWidget *label; 845 GtkWidget *label;
849 GtkSizeGroup *sg; 846 GtkSizeGroup *sg;
850 GList *browsers = NULL; 847 GList *browsers = NULL;
851 848
852 ret = gtk_vbox_new(FALSE, 18); 849 ret = gtk_vbox_new(FALSE, 18);
853 gtk_container_set_border_width (GTK_CONTAINER (ret), 12); 850 gtk_container_set_border_width (GTK_CONTAINER (ret), 12);
854 851
855 sg = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL); 852 sg = gtk_size_group_new(GTK_SIZE_GROUP_HORIZONTAL);
856 #ifndef _WIN32
857 /* Registered default browser is used by Windows */
858 vbox = make_frame (ret, _("Browser Selection")); 853 vbox = make_frame (ret, _("Browser Selection"));
859 854
860 browsers = get_available_browsers(); 855 browsers = get_available_browsers();
861 if (browsers != NULL) { 856 if (browsers != NULL) {
862 label = gaim_dropdown_from_list(vbox,_("_Browser"), &web_browser, -1, 857 label = gaim_dropdown_from_list(vbox,_("_Browser"), &web_browser, -1,
863 browsers); 858 browsers);
864 gtk_misc_set_alignment(GTK_MISC(label), 0, 0); 859 gtk_misc_set_alignment(GTK_MISC(label), 0, 0);
865 gtk_size_group_add_widget(sg, label); 860 gtk_size_group_add_widget(sg, label);
866 } 861 }
867 862
868 hbox = gtk_hbox_new(FALSE, 5); 863 hbox = gtk_hbox_new(FALSE, 5);
869 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); 864 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0);
870 label = gtk_label_new_with_mnemonic(_("_Manual: ")); 865 label = gtk_label_new_with_mnemonic(_("_Manual: "));
877 gtk_widget_set_sensitive(hbox, FALSE); 872 gtk_widget_set_sensitive(hbox, FALSE);
878 gtk_box_pack_start (GTK_BOX (hbox), browser_entry, FALSE, FALSE, 0); 873 gtk_box_pack_start (GTK_BOX (hbox), browser_entry, FALSE, FALSE, 0);
879 874
880 gtk_entry_set_text(GTK_ENTRY(browser_entry), web_command); 875 gtk_entry_set_text(GTK_ENTRY(browser_entry), web_command);
881 g_signal_connect_swapped(GTK_OBJECT(browser_entry), "activate", 876 g_signal_connect_swapped(GTK_OBJECT(browser_entry), "activate",
882 G_CALLBACK(manual_browser_set), NULL); 877 G_CALLBACK(manual_browser_set), NULL);
883 label = gtk_button_new_with_label(_("Set")); 878 label = gtk_button_new_with_label(_("Set"));
884 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); 879 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
885 g_signal_connect(GTK_OBJECT(label), "clicked", 880 g_signal_connect(GTK_OBJECT(label), "clicked",
886 G_CALLBACK(manual_browser_set), browser_entry); 881 G_CALLBACK(manual_browser_set), browser_entry);
887 label = gtk_button_new_with_label(_("Reset")); 882 label = gtk_button_new_with_label(_("Reset"));
888 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); 883 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0);
889 g_signal_connect(GTK_OBJECT(label), "clicked", 884 g_signal_connect(GTK_OBJECT(label), "clicked",
890 G_CALLBACK(manual_browser_reset), browser_entry); 885 G_CALLBACK(manual_browser_reset), browser_entry);
891 886
892 if (browsers != NULL) { 887 if (browsers != NULL) {
893 vbox = make_frame (ret, _("Browser Options")); 888 vbox = make_frame (ret, _("Browser Options"));
894 889 label = gaim_button(_("Open new _window by default"), &misc_options, OPT_MISC_BROWSER_POPUP, vbox);
895 label = gaim_button(_("Open new _window by default"), &misc_options, OPT_MISC_BROWSER_POPUP, vbox); 890 }
896 }
897 #else
898 /* For windows, we need to implement the ability for URLs to be opened
899 * in new windows. Currently, existing open windows are being used.
900 */
901 #endif /*_WIN32*/
902 891
903 gtk_widget_show_all(ret); 892 gtk_widget_show_all(ret);
904 return ret; 893 return ret;
905 } 894 }
895 #endif /*_WIN32*/
906 896
907 GtkWidget *logging_page() { 897 GtkWidget *logging_page() {
908 GtkWidget *ret; 898 GtkWidget *ret;
909 GtkWidget *vbox; 899 GtkWidget *vbox;
910 ret = gtk_vbox_new(FALSE, 18); 900 ret = gtk_vbox_new(FALSE, 18);
1689 prefs_notebook_add_page(_("Buddy List"), NULL, list_page(), &c, &p, notebook_page++); 1679 prefs_notebook_add_page(_("Buddy List"), NULL, list_page(), &c, &p, notebook_page++);
1690 prefs_notebook_add_page(_("IM Window"), NULL, im_page(), &c, &p, notebook_page++); 1680 prefs_notebook_add_page(_("IM Window"), NULL, im_page(), &c, &p, notebook_page++);
1691 prefs_notebook_add_page(_("Chat Window"), NULL, chat_page(), &c, &p, notebook_page++); 1681 prefs_notebook_add_page(_("Chat Window"), NULL, chat_page(), &c, &p, notebook_page++);
1692 prefs_notebook_add_page(_("Tabs"), NULL, tab_page(), &c, &p, notebook_page++); 1682 prefs_notebook_add_page(_("Tabs"), NULL, tab_page(), &c, &p, notebook_page++);
1693 prefs_notebook_add_page(_("Proxy"), NULL, proxy_page(), &p, NULL, notebook_page++); 1683 prefs_notebook_add_page(_("Proxy"), NULL, proxy_page(), &p, NULL, notebook_page++);
1684 #ifndef _WIN32
1685 /* We use the registered default browser in windows */
1694 prefs_notebook_add_page(_("Browser"), NULL, browser_page(), &p, NULL, notebook_page++); 1686 prefs_notebook_add_page(_("Browser"), NULL, browser_page(), &p, NULL, notebook_page++);
1695 1687 #endif
1696 prefs_notebook_add_page(_("Logging"), NULL, logging_page(), &p, NULL, notebook_page++); 1688 prefs_notebook_add_page(_("Logging"), NULL, logging_page(), &p, NULL, notebook_page++);
1697 prefs_notebook_add_page(_("Sounds"), NULL, sound_page(), &p, NULL, notebook_page++); 1689 prefs_notebook_add_page(_("Sounds"), NULL, sound_page(), &p, NULL, notebook_page++);
1698 prefs_notebook_add_page(_("Sound Events"), NULL, sound_events_page(), &c, &p, notebook_page++); 1690 prefs_notebook_add_page(_("Sound Events"), NULL, sound_events_page(), &c, &p, notebook_page++);
1699 prefs_notebook_add_page(_("Away / Idle"), NULL, away_page(), &p, NULL, notebook_page++); 1691 prefs_notebook_add_page(_("Away / Idle"), NULL, away_page(), &p, NULL, notebook_page++);
1700 prefs_notebook_add_page(_("Away Messages"), NULL, away_message_page(), &c, &p, notebook_page++); 1692 prefs_notebook_add_page(_("Away Messages"), NULL, away_message_page(), &c, &p, notebook_page++);