Mercurial > pidgin
comparison src/prefs.c @ 4635:42d53c416bb9
[gaim-migrate @ 4942]
remove deprecated gtk calls, gtk2-ify log viewer, gtk2-ify jabber vcard
dialog, and probably a cleanup or two I forgot about.
committer: Tailor Script <tailor@pidgin.im>
author | Nathan Walp <nwalp@pidgin.im> |
---|---|
date | Sun, 02 Mar 2003 19:21:36 +0000 |
parents | d19872836812 |
children | 24657a33e9e5 |
comparison
equal
deleted
inserted
replaced
4634:d19872836812 | 4635:42d53c416bb9 |
---|---|
43 #ifdef _WIN32 | 43 #ifdef _WIN32 |
44 #include "win32dep.h" | 44 #include "win32dep.h" |
45 #endif | 45 #endif |
46 | 46 |
47 GtkWidget *tree_v = NULL; | 47 GtkWidget *tree_v = NULL; |
48 GtkWidget *prefs_away_list = NULL; | |
49 GtkWidget *prefs_away_menu = NULL; | 48 GtkWidget *prefs_away_menu = NULL; |
50 GtkWidget *preftree = NULL; | |
51 GtkWidget *fontseld = NULL; | 49 GtkWidget *fontseld = NULL; |
52 | 50 |
53 GtkListStore *prefs_away_store = NULL; | 51 GtkListStore *prefs_away_store = NULL; |
54 | 52 |
55 static int sound_row_sel = 0; | 53 static int sound_row_sel = 0; |
58 static GtkWidget *sounddialog = NULL; | 56 static GtkWidget *sounddialog = NULL; |
59 static GtkWidget *browser_entry = NULL; | 57 static GtkWidget *browser_entry = NULL; |
60 static GtkWidget *sound_entry = NULL; | 58 static GtkWidget *sound_entry = NULL; |
61 static GtkWidget *away_text = NULL; | 59 static GtkWidget *away_text = NULL; |
62 static GtkListStore *smiley_theme_store = NULL; | 60 static GtkListStore *smiley_theme_store = NULL; |
63 GtkCTreeNode *general_node = NULL; | |
64 GtkCTreeNode *deny_node = NULL; | |
65 GtkWidget *prefs_proxy_frame = NULL; | 61 GtkWidget *prefs_proxy_frame = NULL; |
66 GtkWidget *gaim_button(const char *, guint *, int, GtkWidget *); | 62 GtkWidget *gaim_button(const char *, guint *, int, GtkWidget *); |
67 GtkWidget *gaim_labeled_spin_button(GtkWidget *, const gchar *, int*, int, int, GtkSizeGroup *); | 63 GtkWidget *gaim_labeled_spin_button(GtkWidget *, const gchar *, int*, int, int, GtkSizeGroup *); |
68 static GtkWidget *gaim_dropdown(GtkWidget *, const gchar *, int *, int, ...); | 64 static GtkWidget *gaim_dropdown(GtkWidget *, const gchar *, int *, int, ...); |
69 static GtkWidget *gaim_dropdown_from_list(GtkWidget *, const gchar *, int *, int, GList *); | 65 static GtkWidget *gaim_dropdown_from_list(GtkWidget *, const gchar *, int *, int, GList *); |
97 notebook_page = 0; | 93 notebook_page = 0; |
98 smiley_theme_store = NULL; | 94 smiley_theme_store = NULL; |
99 if(sounddialog) | 95 if(sounddialog) |
100 gtk_widget_destroy(sounddialog); | 96 gtk_widget_destroy(sounddialog); |
101 g_object_unref(G_OBJECT(prefs_away_store)); | 97 g_object_unref(G_OBJECT(prefs_away_store)); |
98 prefs_away_store = NULL; | |
102 while(l) { | 99 while(l) { |
103 plug = l->data; | 100 plug = l->data; |
104 if(plug->iter) { | 101 if(plug->iter) { |
105 g_free(plug->iter); | 102 g_free(plug->iter); |
106 plug->iter = NULL; | 103 plug->iter = NULL; |
1011 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 5); | 1008 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 5); |
1012 | 1009 |
1013 sndcmd = gtk_entry_new(); | 1010 sndcmd = gtk_entry_new(); |
1014 gtk_label_set_mnemonic_widget(GTK_LABEL(label), sndcmd); | 1011 gtk_label_set_mnemonic_widget(GTK_LABEL(label), sndcmd); |
1015 | 1012 |
1016 gtk_entry_set_editable(GTK_ENTRY(sndcmd), TRUE); | 1013 gtk_editable_set_editable(GTK_EDITABLE(sndcmd), TRUE); |
1017 cmd = gaim_sound_get_command(); | 1014 cmd = gaim_sound_get_command(); |
1018 if(cmd) | 1015 if(cmd) |
1019 gtk_entry_set_text(GTK_ENTRY(sndcmd), cmd); | 1016 gtk_entry_set_text(GTK_ENTRY(sndcmd), cmd); |
1020 gtk_widget_set_size_request(sndcmd, 75, -1); | 1017 gtk_widget_set_size_request(sndcmd, 75, -1); |
1021 | 1018 |
1523 hbox = gtk_hbox_new(FALSE, 6); | 1520 hbox = gtk_hbox_new(FALSE, 6); |
1524 gtk_box_pack_start(GTK_BOX(ret), hbox, FALSE, FALSE, 0); | 1521 gtk_box_pack_start(GTK_BOX(ret), hbox, FALSE, FALSE, 0); |
1525 sound_entry = gtk_entry_new(); | 1522 sound_entry = gtk_entry_new(); |
1526 file = gaim_sound_get_event_file(0); | 1523 file = gaim_sound_get_event_file(0); |
1527 gtk_entry_set_text(GTK_ENTRY(sound_entry), file ? file : "(default)"); | 1524 gtk_entry_set_text(GTK_ENTRY(sound_entry), file ? file : "(default)"); |
1528 gtk_entry_set_editable(GTK_ENTRY(sound_entry), FALSE); | 1525 gtk_editable_set_editable(GTK_EDITABLE(sound_entry), FALSE); |
1529 gtk_box_pack_start(GTK_BOX(hbox), sound_entry, FALSE, FALSE, 5); | 1526 gtk_box_pack_start(GTK_BOX(hbox), sound_entry, FALSE, FALSE, 5); |
1530 | 1527 |
1531 button = gtk_button_new_with_label(_("Test")); | 1528 button = gtk_button_new_with_label(_("Test")); |
1532 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(test_sound), NULL); | 1529 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(test_sound), NULL); |
1533 gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 1); | 1530 gtk_box_pack_start(GTK_BOX(hbox), button, FALSE, FALSE, 1); |
1761 /* Create the window */ | 1758 /* Create the window */ |
1762 prefs = gtk_window_new(GTK_WINDOW_TOPLEVEL); | 1759 prefs = gtk_window_new(GTK_WINDOW_TOPLEVEL); |
1763 gtk_window_set_role(GTK_WINDOW(prefs), "preferences"); | 1760 gtk_window_set_role(GTK_WINDOW(prefs), "preferences"); |
1764 gtk_widget_realize(prefs); | 1761 gtk_widget_realize(prefs); |
1765 gtk_window_set_title(GTK_WINDOW(prefs), _("Gaim - Preferences")); | 1762 gtk_window_set_title(GTK_WINDOW(prefs), _("Gaim - Preferences")); |
1766 gtk_window_set_policy (GTK_WINDOW(prefs), FALSE, FALSE, TRUE); | 1763 gtk_window_set_resizable (GTK_WINDOW(prefs), FALSE); |
1767 g_signal_connect(GTK_OBJECT(prefs), "destroy", G_CALLBACK(delete_prefs), NULL); | 1764 g_signal_connect(GTK_OBJECT(prefs), "destroy", G_CALLBACK(delete_prefs), NULL); |
1768 | 1765 |
1769 vbox = gtk_vbox_new(FALSE, 5); | 1766 vbox = gtk_vbox_new(FALSE, 5); |
1770 gtk_container_border_width(GTK_CONTAINER(vbox), 5); | 1767 gtk_container_set_border_width(GTK_CONTAINER(vbox), 5); |
1771 gtk_container_add(GTK_CONTAINER(prefs), vbox); | 1768 gtk_container_add(GTK_CONTAINER(prefs), vbox); |
1772 gtk_widget_show(vbox); | 1769 gtk_widget_show(vbox); |
1773 | 1770 |
1774 hbox = gtk_hbox_new (FALSE, 6); | 1771 hbox = gtk_hbox_new (FALSE, 6); |
1775 gtk_container_set_border_width (GTK_CONTAINER (hbox), 6); | 1772 gtk_container_set_border_width (GTK_CONTAINER (hbox), 6); |
2062 | 2059 |
2063 GtkWidget *gaim_button(const char *text, guint *options, int option, GtkWidget *page) | 2060 GtkWidget *gaim_button(const char *text, guint *options, int option, GtkWidget *page) |
2064 { | 2061 { |
2065 GtkWidget *button; | 2062 GtkWidget *button; |
2066 button = gtk_check_button_new_with_mnemonic(text); | 2063 button = gtk_check_button_new_with_mnemonic(text); |
2067 gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(button), (*options & option)); | 2064 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), (*options & option)); |
2068 gtk_box_pack_start(GTK_BOX(page), button, FALSE, FALSE, 0); | 2065 gtk_box_pack_start(GTK_BOX(page), button, FALSE, FALSE, 0); |
2069 gtk_object_set_user_data(GTK_OBJECT(button), options); | 2066 g_object_set_data(G_OBJECT(button), "options", options); |
2070 | 2067 |
2071 if (options == &misc_options) { | 2068 if (options == &misc_options) { |
2072 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(set_misc_option), | 2069 g_signal_connect(GTK_OBJECT(button), "clicked", G_CALLBACK(set_misc_option), |
2073 (int *)option); | 2070 (int *)option); |
2074 } else if (options == &logging_options) { | 2071 } else if (options == &logging_options) { |
2101 gtk_widget_show(button); | 2098 gtk_widget_show(button); |
2102 | 2099 |
2103 return button; | 2100 return button; |
2104 } | 2101 } |
2105 | 2102 |
2106 void away_list_clicked(GtkWidget *widget, struct away_message *a) | |
2107 {} | |
2108 void default_away_menu_init(GtkWidget *omenu) | 2103 void default_away_menu_init(GtkWidget *omenu) |
2109 { | 2104 { |
2110 GtkWidget *menu, *opt; | 2105 GtkWidget *menu, *opt; |
2111 int index = 0; | 2106 int index = 0; |
2112 GSList *awy = away_messages; | 2107 GSList *awy = away_messages; |
2118 a = (struct away_message *)awy->data; | 2113 a = (struct away_message *)awy->data; |
2119 opt = gtk_menu_item_new_with_label(a->name); | 2114 opt = gtk_menu_item_new_with_label(a->name); |
2120 g_signal_connect(GTK_OBJECT(opt), "activate", G_CALLBACK(set_default_away), | 2115 g_signal_connect(GTK_OBJECT(opt), "activate", G_CALLBACK(set_default_away), |
2121 (gpointer)index); | 2116 (gpointer)index); |
2122 gtk_widget_show(opt); | 2117 gtk_widget_show(opt); |
2123 gtk_menu_append(GTK_MENU(menu), opt); | 2118 gtk_menu_shell_append(GTK_MENU_SHELL(menu), opt); |
2124 | 2119 |
2125 awy = awy->next; | 2120 awy = awy->next; |
2126 index++; | 2121 index++; |
2127 } | 2122 } |
2128 | 2123 |
2236 return is_valid; | 2231 return is_valid; |
2237 } | 2232 } |
2238 | 2233 |
2239 static void update_spin_value(GtkWidget *w, GtkWidget *spin) | 2234 static void update_spin_value(GtkWidget *w, GtkWidget *spin) |
2240 { | 2235 { |
2241 int *value = gtk_object_get_user_data(GTK_OBJECT(spin)); | 2236 int *value = g_object_get_data(G_OBJECT(spin), "val"); |
2242 *value = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spin)); | 2237 *value = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(spin)); |
2243 } | 2238 } |
2244 | 2239 |
2245 GtkWidget *gaim_labeled_spin_button(GtkWidget *box, const gchar *title, int *val, int min, int max, GtkSizeGroup *sg) | 2240 GtkWidget *gaim_labeled_spin_button(GtkWidget *box, const gchar *title, int *val, int min, int max, GtkSizeGroup *sg) |
2246 { | 2241 { |
2257 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); | 2252 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); |
2258 gtk_widget_show(label); | 2253 gtk_widget_show(label); |
2259 | 2254 |
2260 adjust = gtk_adjustment_new(*val, min, max, 1, 1, 1); | 2255 adjust = gtk_adjustment_new(*val, min, max, 1, 1, 1); |
2261 spin = gtk_spin_button_new(GTK_ADJUSTMENT(adjust), 1, 0); | 2256 spin = gtk_spin_button_new(GTK_ADJUSTMENT(adjust), 1, 0); |
2262 gtk_object_set_user_data(GTK_OBJECT(spin), val); | 2257 g_object_set_data(G_OBJECT(spin), "val", val); |
2263 gtk_widget_set_usize(spin, 50, -1); | 2258 gtk_widget_set_size_request(spin, 50, -1); |
2264 gtk_box_pack_start(GTK_BOX(hbox), spin, FALSE, FALSE, 0); | 2259 gtk_box_pack_start(GTK_BOX(hbox), spin, FALSE, FALSE, 0); |
2265 g_signal_connect(GTK_OBJECT(adjust), "value-changed", | 2260 g_signal_connect(GTK_OBJECT(adjust), "value-changed", |
2266 G_CALLBACK(update_spin_value), GTK_WIDGET(spin)); | 2261 G_CALLBACK(update_spin_value), GTK_WIDGET(spin)); |
2267 gtk_widget_show(spin); | 2262 gtk_widget_show(spin); |
2268 | 2263 |
2274 | 2269 |
2275 } | 2270 } |
2276 return label; | 2271 return label; |
2277 } | 2272 } |
2278 | 2273 |
2279 void dropdown_set(GtkObject *w, int *option) | 2274 void dropdown_set(GObject *w, int *option) |
2280 { | 2275 { |
2281 int opt = (int)gtk_object_get_user_data(w); | 2276 int opt = GPOINTER_TO_INT(g_object_get_data(w, "value")); |
2282 int clear = (int)gtk_object_get_data(w, "clear"); | 2277 int clear = GPOINTER_TO_INT(g_object_get_data(w, "clear")); |
2283 | 2278 |
2284 if (clear != -1) { | 2279 if (clear != -1) { |
2285 *option = *option & ~clear; | 2280 *option = *option & ~clear; |
2286 *option = *option | opt; | 2281 *option = *option | opt; |
2287 } else { | 2282 } else { |
2379 g_return_val_if_fail(menuitems != NULL, NULL); | 2374 g_return_val_if_fail(menuitems != NULL, NULL); |
2380 value = GPOINTER_TO_INT(menuitems->data); | 2375 value = GPOINTER_TO_INT(menuitems->data); |
2381 menuitems = g_list_next(menuitems); | 2376 menuitems = g_list_next(menuitems); |
2382 | 2377 |
2383 opt = gtk_menu_item_new_with_label(text); | 2378 opt = gtk_menu_item_new_with_label(text); |
2384 gtk_object_set_user_data(GTK_OBJECT(opt), (void *)value); | 2379 g_object_set_data(G_OBJECT(opt), "value", GINT_TO_POINTER(value)); |
2385 gtk_object_set_data(GTK_OBJECT(opt), "clear", (void *)clear); | 2380 g_object_set_data(G_OBJECT(opt), "clear", GINT_TO_POINTER(clear)); |
2386 g_signal_connect(GTK_OBJECT(opt), "activate", | 2381 g_signal_connect(GTK_OBJECT(opt), "activate", |
2387 G_CALLBACK(dropdown_set), (void *)option); | 2382 G_CALLBACK(dropdown_set), (void *)option); |
2388 gtk_widget_show(opt); | 2383 gtk_widget_show(opt); |
2389 gtk_menu_shell_append(GTK_MENU_SHELL(menu), opt); | 2384 gtk_menu_shell_append(GTK_MENU_SHELL(menu), opt); |
2390 | 2385 |
2434 style->bg[0] = c; | 2429 style->bg[0] = c; |
2435 | 2430 |
2436 swid = gtk_event_box_new(); | 2431 swid = gtk_event_box_new(); |
2437 gtk_widget_set_style(GTK_WIDGET(swid), style); | 2432 gtk_widget_set_style(GTK_WIDGET(swid), style); |
2438 g_object_unref(style); | 2433 g_object_unref(style); |
2439 gtk_widget_set_usize(GTK_WIDGET(swid), 40, -1); | 2434 gtk_widget_set_size_request(GTK_WIDGET(swid), 40, -1); |
2440 gtk_box_pack_start(GTK_BOX(box), swid, FALSE, FALSE, 5); | 2435 gtk_box_pack_start(GTK_BOX(box), swid, FALSE, FALSE, 5); |
2441 gtk_widget_show(swid); | 2436 gtk_widget_show(swid); |
2442 return swid; | 2437 return swid; |
2443 } | 2438 } |
2444 | 2439 |
2455 i++; | 2450 i++; |
2456 } | 2451 } |
2457 | 2452 |
2458 fontface[i] = 0; | 2453 fontface[i] = 0; |
2459 g_free(fontname); | 2454 g_free(fontname); |
2460 | 2455 |
2461 gaim_conversation_foreach(gaim_gtkconv_update_font_face); | 2456 gaim_conversation_foreach(gaim_gtkconv_update_font_face); |
2462 } | 2457 } |
2463 | 2458 |