pidgin/gtkprefs.c

branch
cpw.rekkanoryo.prefs_window
changeset 28891
6502040769d4
parent 28890
9b5cd2396414
child 28892
7c524ef202b2
equal deleted inserted replaced
28890:9b5cd2396414 28891:6502040769d4
1821 static GtkWidget * 1821 static GtkWidget *
1822 network_page(void) 1822 network_page(void)
1823 { 1823 {
1824 GtkWidget *ret; 1824 GtkWidget *ret;
1825 GtkWidget *vbox, *hbox, *entry; 1825 GtkWidget *vbox, *hbox, *entry;
1826 GtkWidget *table = NULL;
1827 GtkWidget *label, *auto_ip_checkbox, *ports_checkbox, *spin_button; 1826 GtkWidget *label, *auto_ip_checkbox, *ports_checkbox, *spin_button;
1828 GtkWidget *proxy_warning = NULL, *browser_warning = NULL;
1829 GtkWidget *proxy_button = NULL, *browser_button = NULL;
1830 GtkSizeGroup *sg; 1827 GtkSizeGroup *sg;
1831 PurpleProxyInfo *proxy_info = NULL;
1832 1828
1833 ret = gtk_vbox_new(FALSE, PIDGIN_HIG_CAT_SPACE); 1829 ret = gtk_vbox_new(FALSE, PIDGIN_HIG_CAT_SPACE);
1834 gtk_container_set_border_width (GTK_CONTAINER (ret), PIDGIN_HIG_BORDER); 1830 gtk_container_set_border_width (GTK_CONTAINER (ret), PIDGIN_HIG_BORDER);
1835 1831
1836 vbox = pidgin_make_frame (ret, _("IP Address")); 1832 vbox = pidgin_make_frame (ret, _("IP Address"));
1932 pidgin_prefs_labeled_password(hbox, _("Pass_word:"), 1928 pidgin_prefs_labeled_password(hbox, _("Pass_word:"),
1933 "/purple/network/turn_password", NULL); 1929 "/purple/network/turn_password", NULL);
1934 1930
1935 gtk_widget_show_all(ret); 1931 gtk_widget_show_all(ret);
1936 g_object_unref(sg); 1932 g_object_unref(sg);
1937 /* Only hide table if not running gnome otherwise we hide the IP address table! */
1938 if (!purple_running_gnome() && (proxy_info == NULL ||
1939 purple_proxy_info_get_type(proxy_info) == PURPLE_PROXY_NONE ||
1940 purple_proxy_info_get_type(proxy_info) == PURPLE_PROXY_USE_ENVVAR)) {
1941 gtk_widget_hide(table);
1942 } else if (purple_running_gnome()) {
1943 gchar *path;
1944 path = g_find_program_in_path("gnome-network-preferences");
1945 if (path != NULL) {
1946 gtk_widget_set_sensitive(proxy_button, TRUE);
1947 gtk_widget_hide(proxy_warning);
1948 g_free(path);
1949 } else {
1950 gtk_widget_set_sensitive(proxy_button, FALSE);
1951 gtk_widget_show(proxy_warning);
1952 }
1953 path = g_find_program_in_path("gnome-default-applications-properties");
1954 if (path != NULL) {
1955 gtk_widget_set_sensitive(browser_button, TRUE);
1956 gtk_widget_hide(browser_warning);
1957 g_free(path);
1958 } else {
1959 gtk_widget_set_sensitive(browser_button, FALSE);
1960 gtk_widget_show(browser_warning);
1961 }
1962 }
1963 1933
1964 return ret; 1934 return ret;
1965 } 1935 }
1966 1936
1967 #ifndef _WIN32 1937 #ifndef _WIN32
2173 gtk_box_pack_start(GTK_BOX(hbox), proxy_button, FALSE, FALSE, 0); 2143 gtk_box_pack_start(GTK_BOX(hbox), proxy_button, FALSE, FALSE, 0);
2174 gtk_widget_show(proxy_button); 2144 gtk_widget_show(proxy_button);
2175 } else { 2145 } else {
2176 prefs_proxy_subframe = gtk_vbox_new(FALSE, 0); 2146 prefs_proxy_subframe = gtk_vbox_new(FALSE, 0);
2177 2147
2178 /* This is a global option that affects SOCKS4 usage even with account-specific proxy settings */ 2148 /* This is a global option that affects SOCKS4 usage even with
2149 * account-specific proxy settings */
2179 pidgin_prefs_checkbox(_("Use remote _DNS with SOCKS4 proxies"), 2150 pidgin_prefs_checkbox(_("Use remote _DNS with SOCKS4 proxies"),
2180 "/purple/proxy/socks4_remotedns", prefs_proxy_frame); 2151 "/purple/proxy/socks4_remotedns", prefs_proxy_frame);
2181 gtk_box_pack_start(GTK_BOX(vbox), prefs_proxy_frame, 0, 0, 0); 2152 gtk_box_pack_start(GTK_BOX(vbox), prefs_proxy_frame, 0, 0, 0);
2182 2153
2183 pidgin_prefs_dropdown(prefs_proxy_frame, _("Proxy t_ype:"), PURPLE_PREF_STRING, 2154 pidgin_prefs_dropdown(prefs_proxy_frame, _("Proxy t_ype:"), PURPLE_PREF_STRING,
2795 gtk_size_group_add_widget(sg, button); 2766 gtk_size_group_add_widget(sg, button);
2796 2767
2797 /* TODO: Show something useful if we don't have any saved statuses. */ 2768 /* TODO: Show something useful if we don't have any saved statuses. */
2798 menu = pidgin_status_menu(purple_savedstatus_get_idleaway(), G_CALLBACK(set_idle_away)); 2769 menu = pidgin_status_menu(purple_savedstatus_get_idleaway(), G_CALLBACK(set_idle_away));
2799 gtk_size_group_add_widget(sg, menu); 2770 gtk_size_group_add_widget(sg, menu);
2800 gtk_misc_set_alignment(GTK_MISC(menu), 0, 0.5);
2801 gtk_box_pack_start(GTK_BOX(hbox), menu, FALSE, FALSE, 0); 2771 gtk_box_pack_start(GTK_BOX(hbox), menu, FALSE, FALSE, 0);
2802 2772
2803 g_signal_connect(G_OBJECT(button), "clicked", 2773 g_signal_connect(G_OBJECT(button), "clicked",
2804 G_CALLBACK(pidgin_toggle_sensitive), menu); 2774 G_CALLBACK(pidgin_toggle_sensitive), menu);
2805 2775
2828 gtk_size_group_add_widget(sg, button); 2798 gtk_size_group_add_widget(sg, button);
2829 2799
2830 /* TODO: Show something useful if we don't have any saved statuses. */ 2800 /* TODO: Show something useful if we don't have any saved statuses. */
2831 menu = pidgin_status_menu(purple_savedstatus_get_startup(), G_CALLBACK(set_startupstatus)); 2801 menu = pidgin_status_menu(purple_savedstatus_get_startup(), G_CALLBACK(set_startupstatus));
2832 gtk_size_group_add_widget(sg, menu); 2802 gtk_size_group_add_widget(sg, menu);
2833 gtk_misc_set_alignment(GTK_MISC(menu), 0, 0.5);
2834 g_signal_connect(G_OBJECT(button), "clicked", 2803 g_signal_connect(G_OBJECT(button), "clicked",
2835 G_CALLBACK(pidgin_toggle_sensitive), menu); 2804 G_CALLBACK(pidgin_toggle_sensitive), menu);
2836 pidgin_add_widget_to_vbox(GTK_BOX(vbox), _("Status to a_pply at startup:"), sg, menu, TRUE, &label); 2805 pidgin_add_widget_to_vbox(GTK_BOX(vbox), _("Status to a_pply at startup:"), sg, menu, TRUE, &label);
2837 g_signal_connect(G_OBJECT(button), "clicked", 2806 g_signal_connect(G_OBJECT(button), "clicked",
2838 G_CALLBACK(pidgin_toggle_sensitive), label); 2807 G_CALLBACK(pidgin_toggle_sensitive), label);

mercurial