Mercurial > audlegacy
annotate src/audacious/ui_preferences.c @ 4002:d203c51d94bb
you might like it or not, beginning of making preferences more friendly
author | Tomasz Mon <desowin@gmail.com> |
---|---|
date | Sat, 24 Nov 2007 22:00:24 +0100 |
parents | 733820bc7744 |
children | 400b5e4cfc19 |
rev | line source |
---|---|
2313 | 1 /* Audacious - Cross-platform multimedia player |
2 * Copyright (C) 2005-2006 Audacious development team. | |
3 * | |
4 * BMP - Cross-platform multimedia player | |
5 * Copyright (C) 2003-2004 BMP development team. | |
6 * | |
7 * This program is free software; you can redistribute it and/or modify | |
8 * it under the terms of the GNU General Public License as published by | |
3121
3b6d316f8b09
GPL3 relicensing.
William Pitcock <nenolod@atheme-project.org>
parents:
3113
diff
changeset
|
9 * the Free Software Foundation; under version 3 of the License. |
2313 | 10 * |
11 * This program is distributed in the hope that it will be useful, | |
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
14 * GNU General Public License for more details. | |
15 * | |
16 * You should have received a copy of the GNU General Public License | |
3121
3b6d316f8b09
GPL3 relicensing.
William Pitcock <nenolod@atheme-project.org>
parents:
3113
diff
changeset
|
17 * along with this program. If not, see <http://www.gnu.org/licenses>. |
3123
f1c756f39e6c
Invoke "Plugins are not derived work" clause provided by GPL3.
William Pitcock <nenolod@atheme-project.org>
parents:
3121
diff
changeset
|
18 * |
f1c756f39e6c
Invoke "Plugins are not derived work" clause provided by GPL3.
William Pitcock <nenolod@atheme-project.org>
parents:
3121
diff
changeset
|
19 * The Audacious team does not consider modular code linking to |
f1c756f39e6c
Invoke "Plugins are not derived work" clause provided by GPL3.
William Pitcock <nenolod@atheme-project.org>
parents:
3121
diff
changeset
|
20 * Audacious or using our public API to be a derived work. |
2313 | 21 */ |
22 | |
23 #ifdef HAVE_CONFIG_H | |
24 # include "config.h" | |
25 #endif | |
26 | |
27 #include <glib.h> | |
28 #include <glib/gi18n.h> | |
29 #include <gtk/gtk.h> | |
30 #include <string.h> | |
31 #include <stddef.h> | |
32 #include <stdio.h> | |
33 #include <sys/types.h> | |
34 #include <dirent.h> | |
35 #include <unistd.h> | |
36 #include <errno.h> | |
37 #include <sys/types.h> | |
38 #include <sys/stat.h> | |
3993 | 39 #include <gdk/gdkkeysyms.h> |
2313 | 40 |
41 #include "plugin.h" | |
42 #include "pluginenum.h" | |
43 #include "input.h" | |
44 #include "effect.h" | |
45 #include "general.h" | |
46 #include "output.h" | |
47 #include "visualization.h" | |
48 | |
49 #include "main.h" | |
2911 | 50 #include "ui_skinned_textbox.h" |
2373
ad1d7687814c
[svn] made strings.h for existing strings.c, cleanups
mf0102
parents:
2328
diff
changeset
|
51 #include "strings.h" |
2313 | 52 #include "util.h" |
53 #include "dnd.h" | |
2717 | 54 #include "configdb.h" |
2313 | 55 |
56 #include "ui_main.h" | |
57 #include "ui_playlist.h" | |
58 #include "ui_skinselector.h" | |
59 #include "ui_preferences.h" | |
2328 | 60 #include "ui_equalizer.h" |
3217 | 61 #include "ui_skinned_playlist.h" |
3221
9583cd62231f
implement ui_skinned_window_expose
Tomasz Mon <desowin@gmail.com>
parents:
3217
diff
changeset
|
62 #include "ui_skinned_window.h" |
2313 | 63 |
64 #include "build_stamp.h" | |
65 | |
66 enum CategoryViewCols { | |
67 CATEGORY_VIEW_COL_ICON, | |
68 CATEGORY_VIEW_COL_NAME, | |
69 CATEGORY_VIEW_COL_ID, | |
70 CATEGORY_VIEW_N_COLS | |
71 }; | |
72 | |
73 enum PluginViewCols { | |
74 PLUGIN_VIEW_COL_ACTIVE, | |
75 PLUGIN_VIEW_COL_DESC, | |
76 PLUGIN_VIEW_COL_FILENAME, | |
77 PLUGIN_VIEW_COL_ID, | |
3439
93584d1b3e7e
Add plugin pointer to the plugin treestore.
William Pitcock <nenolod@atheme.org>
parents:
3437
diff
changeset
|
78 PLUGIN_VIEW_COL_PLUGIN_PTR, |
2313 | 79 PLUGIN_VIEW_N_COLS |
80 }; | |
81 | |
3353
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
82 enum PluginViewType { |
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
83 PLUGIN_VIEW_TYPE_INPUT, |
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
84 PLUGIN_VIEW_TYPE_GENERAL, |
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
85 PLUGIN_VIEW_TYPE_VIS, |
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
86 PLUGIN_VIEW_TYPE_EFFECT |
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
87 }; |
2313 | 88 |
89 typedef struct { | |
90 const gchar *icon_path; | |
91 const gchar *name; | |
92 gint id; | |
93 } Category; | |
94 | |
95 typedef struct { | |
96 const gchar *name; | |
97 const gchar *tag; | |
98 } | |
99 TitleFieldTag; | |
100 | |
101 static GtkWidget *prefswin = NULL; | |
102 static GtkWidget *filepopup_settings = NULL; | |
103 static GtkWidget *colorize_settings = NULL; | |
104 static GtkWidget *category_treeview = NULL; | |
105 static GtkWidget *category_notebook = NULL; | |
106 GtkWidget *filepopupbutton = NULL; | |
107 | |
3989
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
108 /* colorize settings scales */ |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
109 GtkWidget *green_scale; |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
110 GtkWidget *red_scale; |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
111 GtkWidget *blue_scale; |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
112 |
3990
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
113 /* filepopup settings widgets */ |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
114 GtkWidget *filepopup_settings_cover_name_include; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
115 GtkWidget *filepopup_settings_cover_name_exclude; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
116 GtkWidget *filepopup_settings_recurse_for_cover; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
117 GtkWidget *filepopup_settings_recurse_for_cover_depth; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
118 GtkWidget *filepopup_settings_recurse_for_cover_depth_box; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
119 GtkWidget *filepopup_settings_use_file_cover; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
120 GtkWidget *filepopup_settings_showprogressbar; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
121 GtkWidget *filepopup_settings_delay; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
122 |
3993 | 123 /* prefswin widgets */ |
124 GtkWidget *titlestring_entry; | |
125 GtkWidget *skin_view; | |
126 GtkWidget *skin_refresh_button; | |
127 GtkWidget *filepopup_for_tuple_settings_button; | |
4002
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
128 GtkTooltips *tooltips; |
3993 | 129 |
2313 | 130 static Category categories[] = { |
131 {DATA_DIR "/images/appearance.png", N_("Appearance"), 1}, | |
132 {DATA_DIR "/images/audio.png", N_("Audio"), 6}, | |
133 {DATA_DIR "/images/connectivity.png", N_("Connectivity"), 5}, | |
134 {DATA_DIR "/images/eq.png", N_("Equalizer"), 4}, | |
135 {DATA_DIR "/images/mouse.png", N_("Mouse"), 2}, | |
136 {DATA_DIR "/images/playlist.png", N_("Playlist"), 3}, | |
137 {DATA_DIR "/images/plugins.png", N_("Plugins"), 0}, | |
138 }; | |
139 | |
140 static gint n_categories = G_N_ELEMENTS(categories); | |
141 | |
142 static TitleFieldTag title_field_tags[] = { | |
3441
bd1a68dc9ebb
Change xmms titlestring format values to Tuplez.
William Pitcock <nenolod@atheme.org>
parents:
3439
diff
changeset
|
143 { N_("Artist") , "${artist}" }, |
bd1a68dc9ebb
Change xmms titlestring format values to Tuplez.
William Pitcock <nenolod@atheme.org>
parents:
3439
diff
changeset
|
144 { N_("Album") , "${album}" }, |
bd1a68dc9ebb
Change xmms titlestring format values to Tuplez.
William Pitcock <nenolod@atheme.org>
parents:
3439
diff
changeset
|
145 { N_("Title") , "${title}" }, |
bd1a68dc9ebb
Change xmms titlestring format values to Tuplez.
William Pitcock <nenolod@atheme.org>
parents:
3439
diff
changeset
|
146 { N_("Tracknumber"), "${track-number}" }, |
bd1a68dc9ebb
Change xmms titlestring format values to Tuplez.
William Pitcock <nenolod@atheme.org>
parents:
3439
diff
changeset
|
147 { N_("Genre") , "${genre}" }, |
bd1a68dc9ebb
Change xmms titlestring format values to Tuplez.
William Pitcock <nenolod@atheme.org>
parents:
3439
diff
changeset
|
148 { N_("Filename") , "${file-name}" }, |
bd1a68dc9ebb
Change xmms titlestring format values to Tuplez.
William Pitcock <nenolod@atheme.org>
parents:
3439
diff
changeset
|
149 { N_("Filepath") , "${file-path}" }, |
bd1a68dc9ebb
Change xmms titlestring format values to Tuplez.
William Pitcock <nenolod@atheme.org>
parents:
3439
diff
changeset
|
150 { N_("Date") , "${date}" }, |
bd1a68dc9ebb
Change xmms titlestring format values to Tuplez.
William Pitcock <nenolod@atheme.org>
parents:
3439
diff
changeset
|
151 { N_("Year") , "${year}" }, |
bd1a68dc9ebb
Change xmms titlestring format values to Tuplez.
William Pitcock <nenolod@atheme.org>
parents:
3439
diff
changeset
|
152 { N_("Comment") , "${comment}" }, |
bd1a68dc9ebb
Change xmms titlestring format values to Tuplez.
William Pitcock <nenolod@atheme.org>
parents:
3439
diff
changeset
|
153 { N_("Codec") , "${codec}" }, |
bd1a68dc9ebb
Change xmms titlestring format values to Tuplez.
William Pitcock <nenolod@atheme.org>
parents:
3439
diff
changeset
|
154 { N_("Quality") , "${quality}" }, |
2313 | 155 }; |
156 | |
157 typedef struct { | |
158 void *next; | |
159 GtkWidget *container; | |
160 char *pg_name; | |
161 char *img_url; | |
162 } CategoryQueueEntry; | |
163 | |
164 CategoryQueueEntry *category_queue = NULL; | |
165 | |
166 static const guint n_title_field_tags = G_N_ELEMENTS(title_field_tags); | |
167 | |
4002
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
168 #define gettext_noop(String) String |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
169 |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
170 enum WidgetTypes { |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
171 WIDGET_NONE, |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
172 WIDGET_CHK_BTN |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
173 }; |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
174 |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
175 typedef struct preferences_widgets_t { |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
176 gint type; /* widget type */ |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
177 char *label; /* widget title */ |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
178 gboolean *cfg; /* connected config value */ |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
179 void (*callback) (void); /* this func will be called after value change, can be NULL */ |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
180 char *tooltip; /* widget tooltip, can be NULL */ |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
181 } preferences_widgets; |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
182 |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
183 static void playlist_show_pl_separator_numbers_cb(); |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
184 static void show_wm_decorations_cb(); |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
185 |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
186 static preferences_widgets checkboxes[] = { |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
187 {WIDGET_CHK_BTN, gettext_noop("Show track numbers in playlist"), &cfg.show_numbers_in_pl, |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
188 G_CALLBACK(playlist_show_pl_separator_numbers_cb), NULL}, |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
189 {WIDGET_CHK_BTN, gettext_noop("Show separators in playlist"), &cfg.show_separator_in_pl, |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
190 G_CALLBACK(playlist_show_pl_separator_numbers_cb), NULL}, |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
191 {WIDGET_CHK_BTN, gettext_noop("Use custom cursors"), &cfg.custom_cursors, G_CALLBACK(skin_reload_forced), NULL}, |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
192 {WIDGET_CHK_BTN, gettext_noop("Show window manager decoration"), &cfg.show_wm_decorations, G_CALLBACK(show_wm_decorations_cb), |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
193 gettext_noop("This enables the window manager to show decorations for windows.")}, |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
194 {WIDGET_CHK_BTN, gettext_noop("Use XMMS-style file selector instead of the default selector"), &cfg.use_xmms_style_fileselector, NULL, |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
195 gettext_noop("This enables the XMMS/GTK1-style file selection dialogs. This selector is provided by Audacious itself and is faster than the default GTK2 selector (but sadly not as user-friendly).")}, |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
196 {WIDGET_CHK_BTN, gettext_noop("Use two-way text scroller"), &cfg.twoway_scroll, NULL, |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
197 gettext_noop("If selected, the file information text in the main window will scroll back and forth. If not selected, the text will only scroll in one direction.")}, |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
198 }; |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
199 |
2313 | 200 /* GLib 2.6 compatibility */ |
201 #if (! ((GLIB_MAJOR_VERSION > 2) || ((GLIB_MAJOR_VERSION == 2) && (GLIB_MINOR_VERSION >= 8)))) | |
202 static const char * | |
203 g_get_host_name (void) | |
204 { | |
205 static char hostname [HOST_NAME_MAX + 1]; | |
206 if (gethostname (hostname, HOST_NAME_MAX) == -1) { | |
207 return _("localhost"); | |
208 } | |
209 return hostname; | |
210 } | |
211 #endif | |
212 | |
3991
d6ac99c2be1d
destroy colorize settings upon closing
mf0102 <0102@gmx.at>
parents:
3990
diff
changeset
|
213 static void create_colorize_settings(void); |
2313 | 214 static void prefswin_page_queue_destroy(CategoryQueueEntry *ent); |
215 | |
216 static void | |
217 change_category(GtkNotebook * notebook, | |
218 GtkTreeSelection * selection) | |
219 { | |
220 GtkTreeModel *model; | |
221 GtkTreeIter iter; | |
222 gint index; | |
223 | |
224 if (!gtk_tree_selection_get_selected(selection, &model, &iter)) | |
225 return; | |
226 | |
227 gtk_tree_model_get(model, &iter, CATEGORY_VIEW_COL_ID, &index, -1); | |
228 gtk_notebook_set_current_page(notebook, index); | |
229 } | |
230 | |
231 void | |
232 prefswin_set_category(gint index) | |
233 { | |
234 g_return_if_fail(index >= 0 && index < n_categories); | |
235 | |
3993 | 236 gtk_notebook_set_current_page(GTK_NOTEBOOK(category_treeview), index); |
2313 | 237 } |
238 | |
239 static void | |
240 output_plugin_open_prefs(GtkComboBox * cbox, | |
241 gpointer data) | |
242 { | |
243 output_configure(gtk_combo_box_get_active(cbox)); | |
244 } | |
245 | |
246 static void | |
247 output_plugin_open_info(GtkComboBox * cbox, | |
248 gpointer data) | |
249 { | |
250 output_about(gtk_combo_box_get_active(cbox)); | |
251 } | |
252 | |
253 static void | |
3985
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
254 plugin_toggle(GtkCellRendererToggle * cell, |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
255 const gchar * path_str, |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
256 gpointer data) |
2313 | 257 { |
258 GtkTreeModel *model = GTK_TREE_MODEL(data); | |
259 GtkTreeIter iter; | |
260 GtkTreePath *path = gtk_tree_path_new_from_string(path_str); | |
261 gint pluginnr; | |
3985
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
262 gint plugin_type = GPOINTER_TO_INT(g_object_get_data(G_OBJECT(data), "plugin_type")); |
2313 | 263 |
264 /* get toggled iter */ | |
265 gtk_tree_model_get_iter(model, &iter, path); | |
266 | |
3985
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
267 if (plugin_type == PLUGIN_VIEW_TYPE_INPUT) { |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
268 Plugin *plugin; |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
269 /*GList *diplist, *tmplist; */ |
2313 | 270 |
3985
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
271 gtk_tree_model_get(model, &iter, |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
272 PLUGIN_VIEW_COL_ID, &pluginnr, |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
273 PLUGIN_VIEW_COL_PLUGIN_PTR, &plugin, -1); |
2313 | 274 |
3985
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
275 /* do something with the value */ |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
276 plugin->enabled ^= 1; |
2313 | 277 |
3985
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
278 /* set new value */ |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
279 gtk_list_store_set(GTK_LIST_STORE(model), &iter, |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
280 PLUGIN_VIEW_COL_ACTIVE, plugin->enabled, -1); |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
281 } else { |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
282 gboolean fixed; |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
283 gtk_tree_model_get(model, &iter, |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
284 PLUGIN_VIEW_COL_ACTIVE, &fixed, |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
285 PLUGIN_VIEW_COL_ID, &pluginnr, -1); |
2313 | 286 |
3985
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
287 /* do something with the value */ |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
288 fixed ^= 1; |
2313 | 289 |
3985
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
290 switch (plugin_type) { |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
291 case PLUGIN_VIEW_TYPE_GENERAL: |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
292 enable_general_plugin(pluginnr, fixed); |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
293 break; |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
294 case PLUGIN_VIEW_TYPE_VIS: |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
295 enable_vis_plugin(pluginnr, fixed); |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
296 break; |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
297 case PLUGIN_VIEW_TYPE_EFFECT: |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
298 enable_effect_plugin(pluginnr, fixed); |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
299 break; |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
300 } |
2313 | 301 |
3985
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
302 /* set new value */ |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
303 gtk_list_store_set(GTK_LIST_STORE(model), &iter, |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
304 PLUGIN_VIEW_COL_ACTIVE, fixed, -1); |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
305 } |
2313 | 306 |
307 /* clean up */ | |
308 gtk_tree_path_free(path); | |
309 } | |
310 | |
311 static void | |
312 on_output_plugin_cbox_changed(GtkComboBox * combobox, | |
313 gpointer data) | |
314 { | |
315 gint selected; | |
316 selected = gtk_combo_box_get_active(combobox); | |
317 | |
318 set_current_output_plugin(selected); | |
319 } | |
320 | |
321 static void | |
322 on_output_plugin_cbox_realize(GtkComboBox * cbox, | |
323 gpointer data) | |
324 { | |
325 GList *olist = get_output_list(); | |
326 OutputPlugin *op, *cp = get_current_output_plugin(); | |
327 gint i = 0, selected = 0; | |
328 | |
329 if (!olist) { | |
330 gtk_widget_set_sensitive(GTK_WIDGET(cbox), FALSE); | |
331 return; | |
332 } | |
333 | |
334 for (i = 0; olist; i++, olist = g_list_next(olist)) { | |
335 op = OUTPUT_PLUGIN(olist->data); | |
336 | |
337 if (olist->data == cp) | |
338 selected = i; | |
339 | |
340 gtk_combo_box_append_text(cbox, op->description); | |
341 } | |
342 | |
343 gtk_combo_box_set_active(cbox, selected); | |
344 g_signal_connect(cbox, "changed", | |
345 G_CALLBACK(on_output_plugin_cbox_changed), NULL); | |
346 } | |
347 | |
348 static void | |
3437
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
349 on_plugin_view_realize(GtkTreeView * treeview, |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
350 GCallback callback, |
3985
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
351 gpointer data, |
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
352 gint plugin_type) |
2313 | 353 { |
354 GtkListStore *store; | |
355 GtkTreeIter iter; | |
356 | |
357 GtkCellRenderer *renderer; | |
358 GtkTreeViewColumn *column; | |
359 | |
360 GList *ilist; | |
361 gchar *description[2]; | |
362 gint id = 0; | |
363 | |
3437
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
364 GList *list = (GList *) data; |
2313 | 365 |
366 store = gtk_list_store_new(PLUGIN_VIEW_N_COLS, | |
367 G_TYPE_BOOLEAN, G_TYPE_STRING, | |
3439
93584d1b3e7e
Add plugin pointer to the plugin treestore.
William Pitcock <nenolod@atheme.org>
parents:
3437
diff
changeset
|
368 G_TYPE_STRING, G_TYPE_INT, G_TYPE_POINTER); |
3985
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
369 g_object_set_data(G_OBJECT(store), "plugin_type" , GINT_TO_POINTER(plugin_type)); |
2313 | 370 |
371 column = gtk_tree_view_column_new(); | |
372 gtk_tree_view_column_set_title(column, _("Enabled")); | |
373 gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_FIXED); | |
374 gtk_tree_view_column_set_spacing(column, 4); | |
375 gtk_tree_view_column_set_resizable(column, FALSE); | |
376 gtk_tree_view_column_set_fixed_width(column, 50); | |
377 | |
378 renderer = gtk_cell_renderer_toggle_new(); | |
379 g_signal_connect(renderer, "toggled", | |
3437
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
380 G_CALLBACK(callback), store); |
2313 | 381 gtk_tree_view_column_pack_start(column, renderer, TRUE); |
382 gtk_tree_view_column_set_attributes(column, renderer, "active", | |
383 PLUGIN_VIEW_COL_ACTIVE, NULL); | |
384 | |
385 gtk_tree_view_append_column(treeview, column); | |
386 | |
387 column = gtk_tree_view_column_new(); | |
388 gtk_tree_view_column_set_title(column, _("Description")); | |
389 gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_AUTOSIZE); | |
390 gtk_tree_view_column_set_spacing(column, 4); | |
391 gtk_tree_view_column_set_resizable(column, TRUE); | |
392 | |
393 | |
394 renderer = gtk_cell_renderer_text_new(); | |
395 gtk_tree_view_column_pack_start(column, renderer, FALSE); | |
396 gtk_tree_view_column_set_attributes(column, renderer, | |
397 "text", PLUGIN_VIEW_COL_DESC, NULL); | |
398 gtk_tree_view_append_column(treeview, column); | |
399 | |
400 column = gtk_tree_view_column_new(); | |
401 | |
402 gtk_tree_view_column_set_title(column, _("Filename")); | |
403 gtk_tree_view_column_set_sizing(column, GTK_TREE_VIEW_COLUMN_AUTOSIZE); | |
404 gtk_tree_view_column_set_spacing(column, 4); | |
405 gtk_tree_view_column_set_resizable(column, TRUE); | |
406 | |
407 renderer = gtk_cell_renderer_text_new(); | |
408 gtk_tree_view_column_pack_start(column, renderer, TRUE); | |
409 gtk_tree_view_column_set_attributes(column, renderer, "text", | |
410 PLUGIN_VIEW_COL_FILENAME, NULL); | |
411 | |
412 gtk_tree_view_append_column(treeview, column); | |
413 | |
3437
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
414 MOWGLI_ITER_FOREACH(ilist, list) |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
415 { |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
416 Plugin *plugin = PLUGIN(ilist->data); |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
417 |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
418 description[0] = g_strdup(plugin->description); |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
419 description[1] = g_strdup(plugin->filename); |
2313 | 420 |
421 gtk_list_store_append(store, &iter); | |
422 gtk_list_store_set(store, &iter, | |
3437
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
423 PLUGIN_VIEW_COL_ACTIVE, plugin->enabled, |
2313 | 424 PLUGIN_VIEW_COL_DESC, description[0], |
425 PLUGIN_VIEW_COL_FILENAME, description[1], | |
3439
93584d1b3e7e
Add plugin pointer to the plugin treestore.
William Pitcock <nenolod@atheme.org>
parents:
3437
diff
changeset
|
426 PLUGIN_VIEW_COL_ID, id++, |
93584d1b3e7e
Add plugin pointer to the plugin treestore.
William Pitcock <nenolod@atheme.org>
parents:
3437
diff
changeset
|
427 PLUGIN_VIEW_COL_PLUGIN_PTR, plugin, -1); |
2313 | 428 |
429 g_free(description[1]); | |
430 g_free(description[0]); | |
431 } | |
432 | |
433 gtk_tree_view_set_model(treeview, GTK_TREE_MODEL(store)); | |
434 } | |
435 | |
436 static void | |
3437
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
437 on_input_plugin_view_realize(GtkTreeView * treeview, |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
438 gpointer data) |
2313 | 439 { |
3985
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
440 on_plugin_view_realize(treeview, G_CALLBACK(plugin_toggle), ip_data.input_list, PLUGIN_VIEW_TYPE_INPUT); |
2313 | 441 } |
442 | |
443 static void | |
444 on_effect_plugin_view_realize(GtkTreeView * treeview, | |
445 gpointer data) | |
446 { | |
3985
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
447 on_plugin_view_realize(treeview, G_CALLBACK(plugin_toggle), ep_data.effect_list, PLUGIN_VIEW_TYPE_EFFECT); |
3437
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
448 } |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
449 |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
450 static void |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
451 on_general_plugin_view_realize(GtkTreeView * treeview, |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
452 gpointer data) |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
453 { |
3985
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
454 on_plugin_view_realize(treeview, G_CALLBACK(plugin_toggle), gp_data.general_list, PLUGIN_VIEW_TYPE_GENERAL); |
3437
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
455 } |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
456 |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
457 static void |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
458 on_vis_plugin_view_realize(GtkTreeView * treeview, |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
459 gpointer data) |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
460 { |
3985
ba5af8e85857
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3917
diff
changeset
|
461 on_plugin_view_realize(treeview, G_CALLBACK(plugin_toggle), vp_data.vis_list, PLUGIN_VIEW_TYPE_VIS); |
3437
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
462 } |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
463 |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
464 static void |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
465 editable_insert_text(GtkEditable * editable, |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
466 const gchar * text, |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
467 gint * pos) |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
468 { |
3092a8b3fe34
Big plugin system changes (part 1 of who knows, it's still a big mess):
William Pitcock <nenolod@atheme.org>
parents:
3357
diff
changeset
|
469 gtk_editable_insert_text(editable, text, strlen(text), pos); |
2313 | 470 } |
471 | |
472 static void | |
473 titlestring_tag_menu_callback(GtkMenuItem * menuitem, | |
474 gpointer data) | |
475 { | |
476 const gchar *separator = " - "; | |
477 gint item = GPOINTER_TO_INT(data); | |
478 gint pos; | |
3993 | 479 |
480 pos = gtk_editable_get_position(GTK_EDITABLE(titlestring_entry)); | |
2313 | 481 |
482 /* insert separator as needed */ | |
3993 | 483 if (g_utf8_strlen(gtk_entry_get_text(GTK_ENTRY(titlestring_entry)), -1) > 0) |
484 editable_insert_text(GTK_EDITABLE(titlestring_entry), separator, &pos); | |
485 | |
486 editable_insert_text(GTK_EDITABLE(titlestring_entry), _(title_field_tags[item].tag), | |
2313 | 487 &pos); |
488 | |
3993 | 489 gtk_editable_set_position(GTK_EDITABLE(titlestring_entry), pos); |
2313 | 490 } |
491 | |
492 static void | |
493 on_titlestring_help_button_clicked(GtkButton * button, | |
494 gpointer data) | |
495 { | |
496 | |
497 GtkMenu *menu; | |
498 MenuPos *pos = g_new0(MenuPos, 1); | |
499 GdkWindow *parent; | |
500 | |
501 gint x_ro, y_ro; | |
502 gint x_widget, y_widget; | |
503 gint x_size, y_size; | |
504 | |
505 g_return_if_fail (button != NULL); | |
506 g_return_if_fail (GTK_IS_MENU (data)); | |
507 | |
508 parent = gtk_widget_get_parent_window(GTK_WIDGET(button)); | |
509 | |
510 gdk_drawable_get_size(parent, &x_size, &y_size); | |
511 gdk_window_get_root_origin(GTK_WIDGET(button)->window, &x_ro, &y_ro); | |
512 gdk_window_get_position(GTK_WIDGET(button)->window, &x_widget, &y_widget); | |
513 | |
514 pos->x = x_size + x_ro; | |
515 pos->y = y_size + y_ro - 100; | |
516 | |
517 menu = GTK_MENU(data); | |
518 gtk_menu_popup (menu, NULL, NULL, util_menu_position, pos, | |
519 0, GDK_CURRENT_TIME); | |
520 } | |
521 | |
522 | |
523 static void | |
524 on_titlestring_entry_realize(GtkWidget * entry, | |
525 gpointer data) | |
526 { | |
527 gtk_entry_set_text(GTK_ENTRY(entry), cfg.gentitle_format); | |
528 } | |
529 | |
530 static void | |
531 on_titlestring_entry_changed(GtkWidget * entry, | |
532 gpointer data) | |
533 { | |
534 g_free(cfg.gentitle_format); | |
535 cfg.gentitle_format = g_strdup(gtk_entry_get_text(GTK_ENTRY(entry))); | |
536 } | |
537 | |
538 static void | |
539 on_titlestring_cbox_realize(GtkWidget * cbox, | |
540 gpointer data) | |
541 { | |
542 gtk_combo_box_set_active(GTK_COMBO_BOX(cbox), cfg.titlestring_preset); | |
543 gtk_widget_set_sensitive(GTK_WIDGET(data), | |
544 (cfg.titlestring_preset == (gint)n_titlestring_presets)); | |
545 } | |
546 | |
547 static void | |
548 on_titlestring_cbox_changed(GtkWidget * cbox, | |
549 gpointer data) | |
550 { | |
551 gint position = gtk_combo_box_get_active(GTK_COMBO_BOX(cbox)); | |
552 | |
553 cfg.titlestring_preset = position; | |
554 gtk_widget_set_sensitive(GTK_WIDGET(data), (position == 6)); | |
555 } | |
556 | |
557 static void | |
558 on_mainwin_font_button_font_set(GtkFontButton * button, | |
559 gpointer data) | |
560 { | |
561 g_free(cfg.mainwin_font); | |
562 cfg.mainwin_font = g_strdup(gtk_font_button_get_font_name(button)); | |
563 | |
2911 | 564 ui_skinned_textbox_set_xfont(mainwin_info, cfg.mainwin_use_xfont, cfg.mainwin_font); |
2313 | 565 } |
566 | |
567 static void | |
568 on_use_bitmap_fonts_realize(GtkToggleButton * button, | |
569 gpointer data) | |
570 { | |
571 gtk_toggle_button_set_active(button, | |
572 cfg.mainwin_use_xfont != FALSE ? FALSE : TRUE); | |
573 } | |
574 | |
575 static void | |
576 on_use_bitmap_fonts_toggled(GtkToggleButton * button, | |
577 gpointer data) | |
578 { | |
579 gboolean useit = gtk_toggle_button_get_active(button); | |
580 cfg.mainwin_use_xfont = useit != FALSE ? FALSE : TRUE; | |
2911 | 581 ui_skinned_textbox_set_xfont(mainwin_info, cfg.mainwin_use_xfont, cfg.mainwin_font); |
2313 | 582 playlistwin_set_sinfo_font(cfg.playlist_font); |
583 | |
584 if (cfg.playlist_shaded) { | |
585 playlistwin_update_list(playlist_get_active()); | |
3221
9583cd62231f
implement ui_skinned_window_expose
Tomasz Mon <desowin@gmail.com>
parents:
3217
diff
changeset
|
586 ui_skinned_window_draw_all(playlistwin); |
2313 | 587 } |
588 } | |
589 | |
590 static void | |
591 on_mainwin_font_button_realize(GtkFontButton * button, | |
592 gpointer data) | |
593 { | |
594 gtk_font_button_set_font_name(button, cfg.mainwin_font); | |
595 } | |
596 | |
597 static void | |
598 on_playlist_font_button_font_set(GtkFontButton * button, | |
599 gpointer data) | |
600 { | |
601 g_free(cfg.playlist_font); | |
602 cfg.playlist_font = g_strdup(gtk_font_button_get_font_name(button)); | |
603 | |
3217 | 604 ui_skinned_playlist_set_font(cfg.playlist_font); |
2313 | 605 playlistwin_set_sinfo_font(cfg.playlist_font); /* propagate font setting to playlistwin_sinfo */ |
606 playlistwin_update_list(playlist_get_active()); | |
3221
9583cd62231f
implement ui_skinned_window_expose
Tomasz Mon <desowin@gmail.com>
parents:
3217
diff
changeset
|
607 gtk_widget_queue_draw(playlistwin_list); |
2313 | 608 } |
609 | |
610 static void | |
611 on_playlist_font_button_realize(GtkFontButton * button, | |
612 gpointer data) | |
613 { | |
614 gtk_font_button_set_font_name(button, cfg.playlist_font); | |
615 } | |
616 | |
617 static void | |
4002
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
618 playlist_show_pl_separator_numbers_cb() |
2313 | 619 { |
620 playlistwin_update_list(playlist_get_active()); | |
3221
9583cd62231f
implement ui_skinned_window_expose
Tomasz Mon <desowin@gmail.com>
parents:
3217
diff
changeset
|
621 gtk_widget_queue_draw(playlistwin_list); |
2313 | 622 } |
623 | |
624 /* format detection */ | |
625 static void | |
626 on_audio_format_det_cb_toggled(GtkToggleButton * button, | |
627 gpointer data) | |
628 { | |
629 cfg.playlist_detect = gtk_toggle_button_get_active(button); | |
630 } | |
631 | |
632 static void | |
633 on_audio_format_det_cb_realize(GtkToggleButton * button, | |
634 gpointer data) | |
635 { | |
636 gtk_toggle_button_set_active(button, cfg.playlist_detect); | |
637 } | |
638 | |
639 static void | |
640 on_detect_by_extension_cb_toggled(GtkToggleButton * button, | |
641 gpointer data) | |
642 { | |
643 cfg.use_extension_probing = gtk_toggle_button_get_active(button); | |
644 } | |
645 | |
646 static void | |
647 on_detect_by_extension_cb_realize(GtkToggleButton * button, | |
648 gpointer data) | |
649 { | |
650 gtk_toggle_button_set_active(button, cfg.use_extension_probing); | |
651 } | |
652 | |
653 /* proxy */ | |
654 static void | |
4000
a0bb67450552
more code duplication removal
Tomasz Mon <desowin@gmail.com>
parents:
3999
diff
changeset
|
655 on_proxy_button_realize(GtkToggleButton *button, gchar *cfg) |
2313 | 656 { |
4000
a0bb67450552
more code duplication removal
Tomasz Mon <desowin@gmail.com>
parents:
3999
diff
changeset
|
657 g_return_if_fail(cfg != NULL); |
a0bb67450552
more code duplication removal
Tomasz Mon <desowin@gmail.com>
parents:
3999
diff
changeset
|
658 |
2313 | 659 ConfigDb *db; |
660 gboolean ret; | |
661 | |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
662 db = cfg_db_open(); |
2313 | 663 |
4000
a0bb67450552
more code duplication removal
Tomasz Mon <desowin@gmail.com>
parents:
3999
diff
changeset
|
664 if (cfg_db_get_bool(db, NULL, cfg, &ret) != FALSE) |
2313 | 665 gtk_toggle_button_set_active(button, ret); |
666 | |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
667 cfg_db_close(db); |
2313 | 668 } |
669 | |
670 static void | |
4000
a0bb67450552
more code duplication removal
Tomasz Mon <desowin@gmail.com>
parents:
3999
diff
changeset
|
671 on_proxy_button_toggled(GtkToggleButton *button, gchar *cfg) |
2313 | 672 { |
4000
a0bb67450552
more code duplication removal
Tomasz Mon <desowin@gmail.com>
parents:
3999
diff
changeset
|
673 g_return_if_fail(cfg != NULL); |
a0bb67450552
more code duplication removal
Tomasz Mon <desowin@gmail.com>
parents:
3999
diff
changeset
|
674 |
2313 | 675 ConfigDb *db; |
676 gboolean ret = gtk_toggle_button_get_active(button); | |
677 | |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
678 db = cfg_db_open(); |
4000
a0bb67450552
more code duplication removal
Tomasz Mon <desowin@gmail.com>
parents:
3999
diff
changeset
|
679 cfg_db_set_bool(db, NULL, cfg, ret); |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
680 cfg_db_close(db); |
2313 | 681 } |
682 | |
683 static void | |
3999
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
684 on_proxy_entry_changed(GtkEntry *entry, gchar *cfg) |
2313 | 685 { |
3999
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
686 g_return_if_fail(cfg != NULL); |
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
687 |
2313 | 688 ConfigDb *db; |
689 gchar *ret = g_strdup(gtk_entry_get_text(entry)); | |
690 | |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
691 db = cfg_db_open(); |
3999
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
692 cfg_db_set_string(db, NULL, cfg, ret); |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
693 cfg_db_close(db); |
2313 | 694 |
695 g_free(ret); | |
696 } | |
697 | |
698 static void | |
3999
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
699 on_proxy_entry_realize(GtkEntry *entry, gchar *cfg) |
2313 | 700 { |
3999
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
701 g_return_if_fail(cfg != NULL); |
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
702 |
2313 | 703 ConfigDb *db; |
704 gchar *ret; | |
705 | |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
706 db = cfg_db_open(); |
2313 | 707 |
3999
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
708 if (cfg_db_get_string(db, NULL, cfg, &ret) != FALSE) |
2313 | 709 gtk_entry_set_text(entry, ret); |
710 | |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
711 cfg_db_close(db); |
2313 | 712 } |
713 | |
714 static void | |
3356 | 715 plugin_treeview_open_prefs(GtkTreeView *treeview) |
3353
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
716 { |
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
717 GtkTreeSelection *selection; |
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
718 GtkTreeModel *model; |
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
719 GtkTreeIter iter; |
3442
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
720 Plugin *plugin = NULL; |
3353
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
721 |
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
722 selection = gtk_tree_view_get_selection(treeview); |
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
723 if (!gtk_tree_selection_get_selected(selection, &model, &iter)) |
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
724 return; |
3442
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
725 gtk_tree_model_get(model, &iter, PLUGIN_VIEW_COL_PLUGIN_PTR, &plugin, -1); |
3353
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
726 |
3442
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
727 g_return_if_fail(plugin != NULL); |
3542
f8880f2e0501
Fix crash on calling plugin->configure() in preferences when plugin->configure==NULL
Sascha Hlusiak <contact@saschahlusiak.de>
parents:
3442
diff
changeset
|
728 g_return_if_fail(plugin->configure != NULL); |
3442
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
729 |
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
730 plugin->configure(); |
3353
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
731 } |
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
732 |
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
733 static void |
3357 | 734 plugin_treeview_open_info(GtkTreeView *treeview) |
735 { | |
736 GtkTreeSelection *selection; | |
737 GtkTreeModel *model; | |
738 GtkTreeIter iter; | |
3442
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
739 Plugin *plugin = NULL; |
3357 | 740 |
741 selection = gtk_tree_view_get_selection(treeview); | |
742 if (!gtk_tree_selection_get_selected(selection, &model, &iter)) | |
743 return; | |
3442
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
744 gtk_tree_model_get(model, &iter, PLUGIN_VIEW_COL_PLUGIN_PTR, &plugin, -1); |
3357 | 745 |
3442
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
746 g_return_if_fail(plugin != NULL); |
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
747 |
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
748 plugin->about(); |
3357 | 749 } |
750 | |
751 static void | |
3355
31ecb89e871c
introduce plugin_treeview_enable_prefs and plugin_treeview_enable_info
Tomasz Mon <desowin@gmail.com>
parents:
3353
diff
changeset
|
752 plugin_treeview_enable_prefs(GtkTreeView * treeview, GtkButton * button) |
2313 | 753 { |
754 GtkTreeSelection *selection; | |
755 GtkTreeModel *model; | |
756 GtkTreeIter iter; | |
3442
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
757 Plugin *plugin = NULL; |
2313 | 758 |
759 selection = gtk_tree_view_get_selection(treeview); | |
760 if (!gtk_tree_selection_get_selected(selection, &model, &iter)) | |
761 return; | |
762 | |
3442
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
763 gtk_tree_model_get(model, &iter, PLUGIN_VIEW_COL_PLUGIN_PTR, &plugin, -1); |
2313 | 764 |
3442
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
765 g_return_if_fail(plugin != NULL); |
2313 | 766 |
3442
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
767 gtk_widget_set_sensitive(GTK_WIDGET(button), plugin->configure != NULL); |
2313 | 768 } |
769 | |
770 static void | |
3355
31ecb89e871c
introduce plugin_treeview_enable_prefs and plugin_treeview_enable_info
Tomasz Mon <desowin@gmail.com>
parents:
3353
diff
changeset
|
771 plugin_treeview_enable_info(GtkTreeView * treeview, GtkButton * button) |
2313 | 772 { |
773 GtkTreeSelection *selection; | |
774 GtkTreeModel *model; | |
775 GtkTreeIter iter; | |
3442
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
776 Plugin *plugin = NULL; |
2313 | 777 |
778 selection = gtk_tree_view_get_selection(treeview); | |
779 if (!gtk_tree_selection_get_selected(selection, &model, &iter)) | |
780 return; | |
781 | |
3442
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
782 gtk_tree_model_get(model, &iter, PLUGIN_VIEW_COL_PLUGIN_PTR, &plugin, -1); |
2313 | 783 |
3442
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
784 g_return_if_fail(plugin != NULL); |
2313 | 785 |
3442
b0f4ab42dd3b
Rework configuration and about calls.
William Pitcock <nenolod@atheme.org>
parents:
3441
diff
changeset
|
786 gtk_widget_set_sensitive(GTK_WIDGET(button), plugin->about != NULL); |
2313 | 787 } |
788 | |
789 | |
790 static void | |
791 output_plugin_enable_info(GtkComboBox * cbox, GtkButton * button) | |
792 { | |
793 GList *plist; | |
794 | |
795 gint id = gtk_combo_box_get_active(cbox); | |
796 | |
797 plist = get_output_list(); | |
798 plist = g_list_nth(plist, id); | |
799 | |
800 gtk_widget_set_sensitive(GTK_WIDGET(button), | |
801 OUTPUT_PLUGIN(plist->data)->about != NULL); | |
802 } | |
803 | |
804 static void | |
805 output_plugin_enable_prefs(GtkComboBox * cbox, GtkButton * button) | |
806 { | |
807 GList *plist; | |
808 gint id = gtk_combo_box_get_active(cbox); | |
809 | |
810 plist = get_output_list(); | |
811 plist = g_list_nth(plist, id); | |
812 | |
813 gtk_widget_set_sensitive(GTK_WIDGET(button), | |
814 OUTPUT_PLUGIN(plist->data)->configure != NULL); | |
815 } | |
816 | |
817 static void | |
818 on_output_plugin_bufsize_realize(GtkSpinButton *button, | |
819 gpointer data) | |
820 { | |
821 gtk_spin_button_set_value(button, cfg.output_buffer_size); | |
822 } | |
823 | |
824 static void | |
825 on_output_plugin_bufsize_value_changed(GtkSpinButton *button, | |
826 gpointer data) | |
827 { | |
828 cfg.output_buffer_size = gtk_spin_button_get_value_as_int(button); | |
829 } | |
830 | |
831 static void | |
832 on_mouse_wheel_volume_realize(GtkSpinButton * button, | |
833 gpointer data) | |
834 { | |
835 gtk_spin_button_set_value(button, cfg.mouse_change); | |
836 } | |
837 | |
838 static void | |
839 on_mouse_wheel_volume_changed(GtkSpinButton * button, | |
840 gpointer data) | |
841 { | |
842 cfg.mouse_change = gtk_spin_button_get_value_as_int(button); | |
843 } | |
844 | |
845 static void | |
846 on_pause_between_songs_time_realize(GtkSpinButton * button, | |
847 gpointer data) | |
848 { | |
849 gtk_spin_button_set_value(button, cfg.pause_between_songs_time); | |
850 } | |
851 | |
852 static void | |
853 on_pause_between_songs_time_changed(GtkSpinButton * button, | |
854 gpointer data) | |
855 { | |
856 cfg.pause_between_songs_time = gtk_spin_button_get_value_as_int(button); | |
857 } | |
858 | |
859 static void | |
2538
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
860 on_enable_src_realize(GtkToggleButton * button, |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
861 gpointer data) |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
862 { |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
863 #ifdef USE_SRC |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
864 ConfigDb *db; |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
865 gboolean ret; |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
866 |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
867 db = cfg_db_open(); |
2538
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
868 |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
869 if (cfg_db_get_bool(db, NULL, "enable_src", &ret) != FALSE) |
2538
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
870 gtk_toggle_button_set_active(button, ret); |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
871 |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
872 cfg_db_close(db); |
2538
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
873 #else |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
874 gtk_toggle_button_set_active(button, FALSE); |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
875 gtk_widget_set_sensitive(GTK_WIDGET(button), FALSE); |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
876 #endif |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
877 } |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
878 |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
879 static void |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
880 on_enable_src_toggled(GtkToggleButton * button, |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
881 gpointer data) |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
882 { |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
883 ConfigDb *db; |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
884 gboolean ret = gtk_toggle_button_get_active(button); |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
885 |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
886 db = cfg_db_open(); |
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
887 cfg_db_set_bool(db, NULL, "enable_src", ret); |
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
888 cfg_db_close(db); |
2538
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
889 } |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
890 |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
891 static void |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
892 on_src_rate_realize(GtkSpinButton * button, |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
893 gpointer data) |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
894 { |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
895 #ifdef USE_SRC |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
896 ConfigDb *db; |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
897 gint value; |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
898 |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
899 db = cfg_db_open(); |
2538
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
900 |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
901 if (cfg_db_get_int(db, NULL, "src_rate", &value) != FALSE) |
2538
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
902 gtk_spin_button_set_value(button, (gdouble)value); |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
903 |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
904 cfg_db_close(db); |
2538
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
905 #else |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
906 gtk_widget_set_sensitive(GTK_WIDGET(button), FALSE); |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
907 #endif |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
908 } |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
909 |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
910 static void |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
911 on_src_rate_value_changed(GtkSpinButton * button, |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
912 gpointer data) |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
913 { |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
914 ConfigDb *db; |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
915 gint value = gtk_spin_button_get_value_as_int(button); |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
916 |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
917 db = cfg_db_open(); |
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
918 cfg_db_set_int(db, NULL, "src_rate", value); |
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
919 cfg_db_close(db); |
2538
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
920 } |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
921 |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
922 static void |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
923 on_src_converter_type_realize(GtkComboBox * box, |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
924 gpointer data) |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
925 { |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
926 #ifdef USE_SRC |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
927 ConfigDb *db; |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
928 gint value; |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
929 |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
930 db = cfg_db_open(); |
2538
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
931 |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
932 if (cfg_db_get_int(db, NULL, "src_type", &value) != FALSE) |
2538
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
933 gtk_combo_box_set_active(box, value); |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
934 else |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
935 gtk_combo_box_set_active(box, 0); |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
936 |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
937 cfg_db_close(db); |
2538
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
938 #else |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
939 gtk_widget_set_sensitive(GTK_WIDGET(box), FALSE); |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
940 #endif |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
941 } |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
942 |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
943 static void |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
944 on_src_converter_type_changed(GtkComboBox * box, |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
945 gpointer data) |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
946 { |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
947 ConfigDb *db; |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
948 gint value = gtk_combo_box_get_active(box); |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
949 |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
950 db = cfg_db_open(); |
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
951 cfg_db_set_int(db, NULL, "src_type", value); |
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
952 cfg_db_close(db); |
2538
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
953 } |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
954 |
719e0898ff3c
[svn] - Patch to use libsamplerate for high-quality interpolated upsampling,
nenolod
parents:
2468
diff
changeset
|
955 static void |
2313 | 956 on_mouse_wheel_scroll_pl_realize(GtkSpinButton * button, |
957 gpointer data) | |
958 { | |
959 gtk_spin_button_set_value(button, cfg.scroll_pl_by); | |
960 } | |
961 | |
962 static void | |
963 on_mouse_wheel_scroll_pl_changed(GtkSpinButton * button, | |
964 gpointer data) | |
965 { | |
966 cfg.scroll_pl_by = gtk_spin_button_get_value_as_int(button); | |
967 } | |
968 | |
969 static void | |
970 on_playlist_convert_underscore_realize(GtkToggleButton * button, | |
971 gpointer data) | |
972 { | |
973 gtk_toggle_button_set_active(button, cfg.convert_underscore); | |
974 } | |
975 | |
976 static void | |
977 on_playlist_convert_underscore_toggled(GtkToggleButton * button, | |
978 gpointer data) | |
979 { | |
980 cfg.convert_underscore = gtk_toggle_button_get_active(button); | |
981 } | |
982 | |
983 static void | |
984 on_playlist_no_advance_realize(GtkToggleButton * button, gpointer data) | |
985 { | |
986 gtk_toggle_button_set_active(button, cfg.no_playlist_advance); | |
987 } | |
988 | |
989 static void | |
990 on_playlist_no_advance_toggled(GtkToggleButton * button, gpointer data) | |
991 { | |
992 cfg.no_playlist_advance = gtk_toggle_button_get_active(button); | |
993 } | |
994 | |
995 static void | |
996 on_continue_playback_on_startup_realize(GtkToggleButton * button, gpointer data) | |
997 { | |
998 gtk_toggle_button_set_active(button, cfg.resume_playback_on_startup); | |
999 } | |
1000 | |
1001 static void | |
3544
e235357029ba
Add preferences option.
William Pitcock <nenolod@atheme.org>
parents:
3442
diff
changeset
|
1002 on_software_volume_control_toggled(GtkToggleButton * button, gpointer data) |
e235357029ba
Add preferences option.
William Pitcock <nenolod@atheme.org>
parents:
3442
diff
changeset
|
1003 { |
e235357029ba
Add preferences option.
William Pitcock <nenolod@atheme.org>
parents:
3442
diff
changeset
|
1004 cfg.software_volume_control = gtk_toggle_button_get_active(button); |
e235357029ba
Add preferences option.
William Pitcock <nenolod@atheme.org>
parents:
3442
diff
changeset
|
1005 } |
e235357029ba
Add preferences option.
William Pitcock <nenolod@atheme.org>
parents:
3442
diff
changeset
|
1006 |
e235357029ba
Add preferences option.
William Pitcock <nenolod@atheme.org>
parents:
3442
diff
changeset
|
1007 static void |
e235357029ba
Add preferences option.
William Pitcock <nenolod@atheme.org>
parents:
3442
diff
changeset
|
1008 on_software_volume_control_realize(GtkToggleButton * button, gpointer data) |
e235357029ba
Add preferences option.
William Pitcock <nenolod@atheme.org>
parents:
3442
diff
changeset
|
1009 { |
e235357029ba
Add preferences option.
William Pitcock <nenolod@atheme.org>
parents:
3442
diff
changeset
|
1010 gtk_toggle_button_set_active(button, cfg.software_volume_control); |
e235357029ba
Add preferences option.
William Pitcock <nenolod@atheme.org>
parents:
3442
diff
changeset
|
1011 } |
e235357029ba
Add preferences option.
William Pitcock <nenolod@atheme.org>
parents:
3442
diff
changeset
|
1012 |
e235357029ba
Add preferences option.
William Pitcock <nenolod@atheme.org>
parents:
3442
diff
changeset
|
1013 static void |
2313 | 1014 on_continue_playback_on_startup_toggled(GtkToggleButton * button, gpointer data) |
1015 { | |
1016 cfg.resume_playback_on_startup = gtk_toggle_button_get_active(button); | |
1017 } | |
1018 | |
1019 static void | |
1020 on_refresh_file_list_realize(GtkToggleButton * button, gpointer data) | |
1021 { | |
1022 gtk_toggle_button_set_active(button, cfg.refresh_file_list); | |
1023 } | |
1024 | |
1025 static void | |
1026 on_refresh_file_list_toggled(GtkToggleButton * button, gpointer data) | |
1027 { | |
1028 cfg.refresh_file_list = gtk_toggle_button_get_active(button); | |
1029 } | |
1030 | |
1031 static void | |
1032 on_playlist_convert_twenty_realize(GtkToggleButton * button, gpointer data) | |
1033 { | |
1034 gtk_toggle_button_set_active(button, cfg.convert_twenty); | |
1035 } | |
1036 | |
1037 static void | |
1038 on_playlist_convert_twenty_toggled(GtkToggleButton * button, gpointer data) | |
1039 { | |
1040 cfg.convert_twenty = gtk_toggle_button_get_active(button); | |
1041 } | |
1042 | |
1043 static void | |
1044 on_playlist_convert_slash_realize(GtkToggleButton * button, gpointer data) | |
1045 { | |
1046 gtk_toggle_button_set_active(button, cfg.convert_slash); | |
1047 } | |
1048 | |
1049 static void | |
1050 on_playlist_convert_slash_toggled(GtkToggleButton * button, gpointer data) | |
1051 { | |
1052 cfg.convert_slash = gtk_toggle_button_get_active(button); | |
1053 } | |
1054 | |
1055 static void | |
1056 on_use_pl_metadata_realize(GtkToggleButton * button, | |
1057 gpointer data) | |
1058 { | |
1059 gboolean state = cfg.use_pl_metadata; | |
1060 gtk_toggle_button_set_active(button, state); | |
1061 gtk_widget_set_sensitive(GTK_WIDGET(data), state); | |
1062 } | |
1063 | |
1064 static void | |
1065 on_use_pl_metadata_toggled(GtkToggleButton * button, | |
1066 gpointer data) | |
1067 { | |
1068 gboolean state = gtk_toggle_button_get_active(button); | |
1069 cfg.use_pl_metadata = state; | |
1070 gtk_widget_set_sensitive(GTK_WIDGET(data), state); | |
1071 } | |
1072 | |
1073 static void | |
1074 on_pause_between_songs_realize(GtkToggleButton * button, | |
1075 gpointer data) | |
1076 { | |
1077 gboolean state = cfg.pause_between_songs; | |
1078 gtk_toggle_button_set_active(button, state); | |
1079 gtk_widget_set_sensitive(GTK_WIDGET(data), state); | |
1080 } | |
1081 | |
1082 static void | |
1083 on_pause_between_songs_toggled(GtkToggleButton * button, | |
1084 gpointer data) | |
1085 { | |
1086 gboolean state = gtk_toggle_button_get_active(button); | |
1087 cfg.pause_between_songs = state; | |
1088 gtk_widget_set_sensitive(GTK_WIDGET(data), state); | |
1089 } | |
1090 | |
1091 static void | |
1092 on_pl_metadata_on_load_realize(GtkRadioButton * button, | |
1093 gpointer data) | |
1094 { | |
1095 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), | |
1096 cfg.get_info_on_load); | |
1097 } | |
1098 | |
1099 static void | |
1100 on_pl_metadata_on_display_realize(GtkRadioButton * button, | |
1101 gpointer data) | |
1102 { | |
1103 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button), | |
1104 cfg.get_info_on_demand); | |
1105 } | |
1106 | |
1107 static void | |
1108 on_pl_metadata_on_load_toggled(GtkRadioButton * button, | |
1109 gpointer data) | |
1110 { | |
1111 cfg.get_info_on_load = | |
1112 gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(button)); | |
1113 } | |
1114 | |
1115 static void | |
1116 on_pl_metadata_on_display_toggled(GtkRadioButton * button, | |
1117 gpointer data) | |
1118 { | |
1119 cfg.get_info_on_demand = | |
1120 gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(button)); | |
1121 } | |
1122 | |
1123 static void | |
1124 on_eq_dir_preset_entry_realize(GtkEntry * entry, | |
1125 gpointer data) | |
1126 { | |
1127 gtk_entry_set_text(entry, cfg.eqpreset_default_file); | |
1128 } | |
1129 | |
1130 static void | |
1131 on_eq_dir_preset_entry_changed(GtkEntry * entry, | |
1132 gpointer data) | |
1133 { | |
1134 g_free(cfg.eqpreset_default_file); | |
1135 cfg.eqpreset_default_file = g_strdup(gtk_entry_get_text(entry)); | |
1136 } | |
1137 | |
1138 static void | |
1139 on_eq_file_preset_entry_realize(GtkEntry * entry, | |
1140 gpointer data) | |
1141 { | |
1142 gtk_entry_set_text(entry, cfg.eqpreset_extension); | |
1143 } | |
1144 | |
1145 static void | |
1146 on_eq_file_preset_entry_changed(GtkEntry * entry, gpointer data) | |
1147 { | |
1148 const gchar *text = gtk_entry_get_text(entry); | |
1149 | |
1150 while (*text == '.') | |
1151 text++; | |
1152 | |
1153 g_free(cfg.eqpreset_extension); | |
1154 cfg.eqpreset_extension = g_strdup(text); | |
1155 } | |
1156 | |
1157 | |
1158 static void | |
1159 on_skin_refresh_button_clicked(GtkButton * button, | |
1160 gpointer data) | |
1161 { | |
1162 const mode_t mode755 = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH; | |
1163 | |
1164 del_directory(bmp_paths[BMP_PATH_SKIN_THUMB_DIR]); | |
1165 make_directory(bmp_paths[BMP_PATH_SKIN_THUMB_DIR], mode755); | |
1166 | |
3993 | 1167 skin_view_update(GTK_TREE_VIEW(skin_view), GTK_WIDGET(skin_refresh_button)); |
2313 | 1168 } |
1169 | |
1170 static gboolean | |
1171 on_skin_view_realize(GtkTreeView * treeview, | |
1172 gpointer data) | |
1173 { | |
1174 skin_view_realize(treeview); | |
1175 | |
1176 return TRUE; | |
1177 } | |
1178 | |
1179 static void | |
3993 | 1180 on_category_treeview_realize(GtkTreeView * treeview, |
2313 | 1181 GtkNotebook * notebook) |
1182 { | |
1183 GtkListStore *store; | |
1184 GtkCellRenderer *renderer; | |
1185 GtkTreeViewColumn *column; | |
1186 GtkTreeSelection *selection; | |
1187 GtkTreeIter iter; | |
1188 GdkPixbuf *img; | |
1189 CategoryQueueEntry *qlist; | |
1190 gint i; | |
1191 | |
1192 column = gtk_tree_view_column_new(); | |
1193 gtk_tree_view_column_set_title(column, _("Category")); | |
1194 gtk_tree_view_append_column(treeview, column); | |
1195 gtk_tree_view_column_set_spacing(column, 2); | |
1196 | |
1197 renderer = gtk_cell_renderer_pixbuf_new(); | |
1198 gtk_tree_view_column_pack_start(column, renderer, FALSE); | |
1199 gtk_tree_view_column_set_attributes(column, renderer, "pixbuf", 0, NULL); | |
1200 | |
1201 renderer = gtk_cell_renderer_text_new(); | |
1202 gtk_tree_view_column_pack_start(column, renderer, FALSE); | |
1203 gtk_tree_view_column_set_attributes(column, renderer, "text", 1, NULL); | |
1204 | |
1205 store = gtk_list_store_new(CATEGORY_VIEW_N_COLS, | |
1206 GDK_TYPE_PIXBUF, G_TYPE_STRING, G_TYPE_INT); | |
1207 gtk_tree_view_set_model(treeview, GTK_TREE_MODEL(store)); | |
1208 | |
1209 for (i = 0; i < n_categories; i++) { | |
1210 img = gdk_pixbuf_new_from_file(categories[i].icon_path, NULL); | |
1211 gtk_list_store_append(store, &iter); | |
1212 gtk_list_store_set(store, &iter, | |
1213 CATEGORY_VIEW_COL_ICON, img, | |
1214 CATEGORY_VIEW_COL_NAME, | |
1215 gettext(categories[i].name), CATEGORY_VIEW_COL_ID, | |
1216 categories[i].id, -1); | |
1217 g_object_unref(img); | |
1218 } | |
1219 | |
1220 selection = gtk_tree_view_get_selection(treeview); | |
1221 | |
1222 g_signal_connect_swapped(selection, "changed", | |
1223 G_CALLBACK(change_category), notebook); | |
1224 | |
1225 /* mark the treeview widget as available to third party plugins */ | |
1226 category_treeview = GTK_WIDGET(treeview); | |
1227 | |
1228 /* prefswin_page_queue_destroy already pops the queue forward for us. */ | |
1229 for (qlist = category_queue; qlist != NULL; qlist = category_queue) | |
1230 { | |
1231 CategoryQueueEntry *ent = (CategoryQueueEntry *) qlist; | |
1232 | |
1233 prefswin_page_new(ent->container, ent->pg_name, ent->img_url); | |
1234 prefswin_page_queue_destroy(ent); | |
1235 } | |
1236 } | |
1237 | |
1238 static void | |
1239 on_skin_view_drag_data_received(GtkWidget * widget, | |
1240 GdkDragContext * context, | |
1241 gint x, gint y, | |
1242 GtkSelectionData * selection_data, | |
1243 guint info, guint time, | |
1244 gpointer user_data) | |
1245 { | |
1246 ConfigDb *db; | |
1247 gchar *path; | |
1248 | |
1249 if (!selection_data->data) { | |
1250 g_warning("DND data string is NULL"); | |
1251 return; | |
1252 } | |
1253 | |
1254 path = (gchar *) selection_data->data; | |
1255 | |
1256 /* FIXME: use a real URL validator/parser */ | |
1257 | |
1258 if (str_has_prefix_nocase(path, "file:///")) { | |
1259 path[strlen(path) - 2] = 0; /* Why the hell a CR&LF? */ | |
1260 path += 7; | |
1261 } | |
1262 else if (str_has_prefix_nocase(path, "file:")) { | |
1263 path += 5; | |
1264 } | |
1265 | |
1266 if (file_is_archive(path)) { | |
1267 bmp_active_skin_load(path); | |
1268 skin_install_skin(path); | |
3993 | 1269 skin_view_update(GTK_TREE_VIEW(widget), GTK_WIDGET(skin_refresh_button)); |
2313 | 1270 /* Change skin name in the config file */ |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
1271 db = cfg_db_open(); |
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
1272 cfg_db_set_string(db, NULL, "skin", path); |
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
1273 cfg_db_close(db); |
2313 | 1274 } |
1275 | |
1276 } | |
1277 | |
1278 static void | |
1279 on_chardet_detector_cbox_changed(GtkComboBox * combobox, gpointer data) | |
1280 { | |
1281 ConfigDb *db; | |
1282 gint position = 0; | |
1283 | |
1284 position = gtk_combo_box_get_active(GTK_COMBO_BOX(combobox)); | |
1285 cfg.chardet_detector = (char *)chardet_detector_presets[position]; | |
1286 | |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
1287 db = cfg_db_open(); |
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
1288 cfg_db_set_string(db, NULL, "chardet_detector", cfg.chardet_detector); |
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
1289 cfg_db_close(db); |
2313 | 1290 if (data != NULL) |
1291 gtk_widget_set_sensitive(GTK_WIDGET(data), 1); | |
1292 } | |
1293 | |
1294 static void | |
1295 on_chardet_detector_cbox_realize(GtkComboBox *combobox, gpointer data) | |
1296 { | |
1297 ConfigDb *db; | |
1298 gchar *ret=NULL; | |
1299 guint i=0,index=0; | |
1300 | |
1301 for(i=0; i<n_chardet_detector_presets; i++) { | |
1302 gtk_combo_box_append_text(combobox, chardet_detector_presets[i]); | |
1303 } | |
1304 | |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
1305 db = cfg_db_open(); |
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
1306 if(cfg_db_get_string(db, NULL, "chardet_detector", &ret) != FALSE) { |
2313 | 1307 for(i=0; i<n_chardet_detector_presets; i++) { |
1308 if(!strcmp(chardet_detector_presets[i], ret)) { | |
1309 cfg.chardet_detector = (char *)chardet_detector_presets[i]; | |
1310 index = i; | |
1311 } | |
1312 } | |
1313 } | |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
1314 cfg_db_close(db); |
2313 | 1315 |
1316 #ifdef USE_CHARDET | |
1317 gtk_combo_box_set_active(GTK_COMBO_BOX(combobox), index); | |
1318 | |
1319 if (data != NULL) | |
1320 gtk_widget_set_sensitive(GTK_WIDGET(data), TRUE); | |
1321 | |
1322 g_signal_connect(combobox, "changed", | |
1323 G_CALLBACK(on_chardet_detector_cbox_changed), NULL); | |
1324 #else | |
1325 gtk_combo_box_set_active(GTK_COMBO_BOX(combobox), -1); | |
1326 gtk_widget_set_sensitive(GTK_WIDGET(combobox), 0); | |
1327 #endif | |
1328 if(ret) | |
1329 g_free(ret); | |
1330 } | |
1331 | |
1332 static void | |
1333 on_chardet_fallback_realize(GtkEntry *entry, gpointer data) | |
1334 { | |
1335 ConfigDb *db; | |
1336 gchar *ret = NULL; | |
1337 | |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
1338 db = cfg_db_open(); |
2313 | 1339 |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
1340 if (cfg_db_get_string(db, NULL, "chardet_fallback", &ret) != FALSE) { |
2313 | 1341 if(cfg.chardet_fallback) |
1342 g_free(cfg.chardet_fallback); | |
1343 | |
1344 if(ret && strncasecmp(ret, "None", sizeof("None"))) { | |
1345 cfg.chardet_fallback = ret; | |
1346 } else { | |
1347 cfg.chardet_fallback = g_strdup(""); | |
1348 } | |
1349 gtk_entry_set_text(entry, cfg.chardet_fallback); | |
1350 } | |
1351 | |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
1352 cfg_db_close(db); |
2313 | 1353 } |
1354 | |
1355 static void | |
1356 on_chardet_fallback_changed(GtkEntry *entry, gpointer data) | |
1357 { | |
1358 ConfigDb *db; | |
1359 gchar *ret = NULL; | |
1360 | |
1361 if(cfg.chardet_fallback) | |
1362 g_free(cfg.chardet_fallback); | |
1363 | |
1364 ret = g_strdup(gtk_entry_get_text(entry)); | |
1365 | |
1366 if(ret == NULL) | |
1367 cfg.chardet_fallback = g_strdup(""); | |
1368 else | |
1369 cfg.chardet_fallback = ret; | |
1370 | |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
1371 db = cfg_db_open(); |
2313 | 1372 |
1373 if(cfg.chardet_fallback == NULL || !strcmp(cfg.chardet_fallback, "")) | |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
1374 cfg_db_set_string(db, NULL, "chardet_fallback", "None"); |
2313 | 1375 else |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
1376 cfg_db_set_string(db, NULL, "chardet_fallback", cfg.chardet_fallback); |
2313 | 1377 |
3686
259b7d3e0976
sed s/bmp_cfg_db/cfg_db/.
William Pitcock <nenolod@atheme.org>
parents:
3664
diff
changeset
|
1378 cfg_db_close(db); |
2313 | 1379 } |
1380 | |
1381 static void | |
1382 on_show_filepopup_for_tuple_realize(GtkToggleButton * button, gpointer data) | |
1383 { | |
1384 gtk_toggle_button_set_active(button, cfg.show_filepopup_for_tuple); | |
3993 | 1385 filepopupbutton = GTK_WIDGET(button); |
1386 | |
1387 gtk_widget_set_sensitive(filepopup_for_tuple_settings_button, cfg.show_filepopup_for_tuple); | |
2313 | 1388 } |
1389 | |
1390 static void | |
1391 on_show_filepopup_for_tuple_toggled(GtkToggleButton * button, gpointer data) | |
1392 { | |
1393 cfg.show_filepopup_for_tuple = gtk_toggle_button_get_active(button); | |
1394 | |
3993 | 1395 gtk_widget_set_sensitive(filepopup_for_tuple_settings_button, cfg.show_filepopup_for_tuple); |
2313 | 1396 } |
1397 | |
1398 static void | |
1399 on_recurse_for_cover_toggled(GtkToggleButton *button, gpointer data) | |
1400 { | |
1401 gtk_widget_set_sensitive(GTK_WIDGET(data), | |
1402 gtk_toggle_button_get_active(button)); | |
1403 } | |
1404 | |
1405 static void | |
1406 on_colorize_button_clicked(GtkButton *button, gpointer data) | |
1407 { | |
3992
50bf02b4f048
correct mf0102's commit a bit
Tomasz Mon <desowin@gmail.com>
parents:
3991
diff
changeset
|
1408 if (colorize_settings) |
50bf02b4f048
correct mf0102's commit a bit
Tomasz Mon <desowin@gmail.com>
parents:
3991
diff
changeset
|
1409 gtk_window_present(GTK_WINDOW(colorize_settings)); |
50bf02b4f048
correct mf0102's commit a bit
Tomasz Mon <desowin@gmail.com>
parents:
3991
diff
changeset
|
1410 else |
50bf02b4f048
correct mf0102's commit a bit
Tomasz Mon <desowin@gmail.com>
parents:
3991
diff
changeset
|
1411 create_colorize_settings(); |
2313 | 1412 } |
1413 | |
1414 static void | |
3856
de26ea4a42fc
fixed bugs in interface color changing (that was TOTALLY BROKEN and
mf0102 <0102@gmx.at>
parents:
3712
diff
changeset
|
1415 reload_skin() |
de26ea4a42fc
fixed bugs in interface color changing (that was TOTALLY BROKEN and
mf0102 <0102@gmx.at>
parents:
3712
diff
changeset
|
1416 { |
de26ea4a42fc
fixed bugs in interface color changing (that was TOTALLY BROKEN and
mf0102 <0102@gmx.at>
parents:
3712
diff
changeset
|
1417 /* reload the skin to apply the change */ |
de26ea4a42fc
fixed bugs in interface color changing (that was TOTALLY BROKEN and
mf0102 <0102@gmx.at>
parents:
3712
diff
changeset
|
1418 skin_reload_forced(); |
de26ea4a42fc
fixed bugs in interface color changing (that was TOTALLY BROKEN and
mf0102 <0102@gmx.at>
parents:
3712
diff
changeset
|
1419 ui_skinned_window_draw_all(mainwin); |
de26ea4a42fc
fixed bugs in interface color changing (that was TOTALLY BROKEN and
mf0102 <0102@gmx.at>
parents:
3712
diff
changeset
|
1420 ui_skinned_window_draw_all(equalizerwin); |
de26ea4a42fc
fixed bugs in interface color changing (that was TOTALLY BROKEN and
mf0102 <0102@gmx.at>
parents:
3712
diff
changeset
|
1421 ui_skinned_window_draw_all(playlistwin); |
de26ea4a42fc
fixed bugs in interface color changing (that was TOTALLY BROKEN and
mf0102 <0102@gmx.at>
parents:
3712
diff
changeset
|
1422 } |
de26ea4a42fc
fixed bugs in interface color changing (that was TOTALLY BROKEN and
mf0102 <0102@gmx.at>
parents:
3712
diff
changeset
|
1423 |
de26ea4a42fc
fixed bugs in interface color changing (that was TOTALLY BROKEN and
mf0102 <0102@gmx.at>
parents:
3712
diff
changeset
|
1424 static void |
2313 | 1425 on_red_scale_value_changed(GtkHScale *scale, gpointer data) |
1426 { | |
3856
de26ea4a42fc
fixed bugs in interface color changing (that was TOTALLY BROKEN and
mf0102 <0102@gmx.at>
parents:
3712
diff
changeset
|
1427 cfg.colorize_r = gtk_range_get_value(GTK_RANGE(scale)); |
de26ea4a42fc
fixed bugs in interface color changing (that was TOTALLY BROKEN and
mf0102 <0102@gmx.at>
parents:
3712
diff
changeset
|
1428 reload_skin(); |
2313 | 1429 } |
1430 | |
1431 static void | |
1432 on_green_scale_value_changed(GtkHScale *scale, gpointer data) | |
1433 { | |
3856
de26ea4a42fc
fixed bugs in interface color changing (that was TOTALLY BROKEN and
mf0102 <0102@gmx.at>
parents:
3712
diff
changeset
|
1434 cfg.colorize_g = gtk_range_get_value(GTK_RANGE(scale)); |
de26ea4a42fc
fixed bugs in interface color changing (that was TOTALLY BROKEN and
mf0102 <0102@gmx.at>
parents:
3712
diff
changeset
|
1435 reload_skin(); |
2313 | 1436 } |
1437 | |
1438 static void | |
1439 on_blue_scale_value_changed(GtkHScale *scale, gpointer data) | |
1440 { | |
3856
de26ea4a42fc
fixed bugs in interface color changing (that was TOTALLY BROKEN and
mf0102 <0102@gmx.at>
parents:
3712
diff
changeset
|
1441 cfg.colorize_b = gtk_range_get_value(GTK_RANGE(scale)); |
de26ea4a42fc
fixed bugs in interface color changing (that was TOTALLY BROKEN and
mf0102 <0102@gmx.at>
parents:
3712
diff
changeset
|
1442 reload_skin(); |
2313 | 1443 } |
1444 | |
1445 static void | |
1446 on_colorize_close_clicked(GtkButton *button, gpointer data) | |
1447 { | |
3992
50bf02b4f048
correct mf0102's commit a bit
Tomasz Mon <desowin@gmail.com>
parents:
3991
diff
changeset
|
1448 gtk_widget_destroy(colorize_settings); |
50bf02b4f048
correct mf0102's commit a bit
Tomasz Mon <desowin@gmail.com>
parents:
3991
diff
changeset
|
1449 colorize_settings = NULL; |
2313 | 1450 } |
1451 | |
1452 static void | |
1453 on_filepopup_for_tuple_settings_clicked(GtkButton *button, gpointer data) | |
1454 { | |
3990
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1455 gtk_entry_set_text(GTK_ENTRY(filepopup_settings_cover_name_include), cfg.cover_name_include); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1456 gtk_entry_set_text(GTK_ENTRY(filepopup_settings_cover_name_exclude), cfg.cover_name_exclude); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1457 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filepopup_settings_recurse_for_cover), cfg.recurse_for_cover); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1458 gtk_spin_button_set_value(GTK_SPIN_BUTTON(filepopup_settings_recurse_for_cover_depth), cfg.recurse_for_cover_depth); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1459 on_recurse_for_cover_toggled(GTK_TOGGLE_BUTTON(filepopup_settings_recurse_for_cover), filepopup_settings_recurse_for_cover_depth_box); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1460 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filepopup_settings_use_file_cover), cfg.use_file_cover); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1461 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(filepopup_settings_showprogressbar), cfg.filepopup_showprogressbar); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1462 gtk_spin_button_set_value(GTK_SPIN_BUTTON(filepopup_settings_delay), cfg.filepopup_delay); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1463 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1464 gtk_widget_show(filepopup_settings); |
2313 | 1465 } |
1466 | |
1467 static void | |
1468 on_filepopup_settings_ok_clicked(GtkButton *button, gpointer data) | |
1469 { | |
3990
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1470 g_free(cfg.cover_name_include); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1471 cfg.cover_name_include = g_strdup(gtk_entry_get_text(GTK_ENTRY(filepopup_settings_cover_name_include))); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1472 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1473 g_free(cfg.cover_name_exclude); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1474 cfg.cover_name_exclude = g_strdup(gtk_entry_get_text(GTK_ENTRY(filepopup_settings_cover_name_exclude))); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1475 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1476 cfg.recurse_for_cover = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filepopup_settings_recurse_for_cover)); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1477 cfg.recurse_for_cover_depth = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(filepopup_settings_recurse_for_cover_depth)); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1478 cfg.use_file_cover = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filepopup_settings_use_file_cover)); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1479 cfg.filepopup_showprogressbar = gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(filepopup_settings_showprogressbar)); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1480 cfg.filepopup_delay = gtk_spin_button_get_value_as_int(GTK_SPIN_BUTTON(filepopup_settings_delay)); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1481 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1482 gtk_widget_hide(filepopup_settings); |
2313 | 1483 } |
1484 | |
1485 static void | |
1486 on_filepopup_settings_cancel_clicked(GtkButton *button, gpointer data) | |
1487 { | |
1488 gtk_widget_hide(filepopup_settings); | |
1489 } | |
1490 | |
1491 static void | |
4002
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1492 on_toggle_button_toggled(GtkToggleButton * button, gboolean *cfg) |
2313 | 1493 { |
4002
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1494 *cfg = gtk_toggle_button_get_active(button); |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1495 void (*callback) (void) = g_object_get_data(G_OBJECT(button), "callback"); |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1496 if (callback) callback(); |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1497 |
2313 | 1498 } |
1499 | |
1500 static void | |
4001
733820bc7744
some more duplicate code removal
Tomasz Mon <desowin@gmail.com>
parents:
4000
diff
changeset
|
1501 on_toggle_button_realize(GtkToggleButton * button, gboolean *cfg) |
2313 | 1502 { |
4001
733820bc7744
some more duplicate code removal
Tomasz Mon <desowin@gmail.com>
parents:
4000
diff
changeset
|
1503 gtk_toggle_button_set_active(button, *cfg); |
2313 | 1504 } |
1505 | |
1506 static void | |
4002
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1507 show_wm_decorations_cb() |
2313 | 1508 { |
1509 gtk_window_set_decorated(GTK_WINDOW(mainwin), cfg.show_wm_decorations); | |
1510 gtk_window_set_decorated(GTK_WINDOW(playlistwin), cfg.show_wm_decorations); | |
1511 gtk_window_set_decorated(GTK_WINDOW(equalizerwin), cfg.show_wm_decorations); | |
2623 | 1512 } |
1513 | |
1514 static void | |
1515 on_reload_plugins_clicked(GtkButton * button, gpointer data) | |
1516 { | |
1517 /* TBD: should every playlist entry have to be reprobed? | |
1518 * Pointers could come back stale if new plugins are added or | |
1519 * symbol sizes change. - nenolod | |
1520 */ | |
1521 | |
2682
c3cd6e47faf6
[svn] - make the evil 'reload plugins' button behave a bit better
giacomo
parents:
2635
diff
changeset
|
1522 bmp_config_save(); |
2623 | 1523 plugin_system_cleanup(); |
2682
c3cd6e47faf6
[svn] - make the evil 'reload plugins' button behave a bit better
giacomo
parents:
2635
diff
changeset
|
1524 bmp_config_free(); |
c3cd6e47faf6
[svn] - make the evil 'reload plugins' button behave a bit better
giacomo
parents:
2635
diff
changeset
|
1525 bmp_config_load(); |
2623 | 1526 plugin_system_init(); |
2313 | 1527 } |
1528 | |
1529 void | |
3989
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1530 create_colorize_settings(void) |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1531 { |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1532 GtkWidget *vbox; |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1533 GtkWidget *label; |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1534 GtkWidget *table; |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1535 GtkWidget *hbuttonbox; |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1536 GtkWidget *colorize_close; |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1537 |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1538 GtkWidget *green_label; |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1539 GtkWidget *red_label; |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1540 GtkWidget *blue_label; |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1541 |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1542 colorize_settings = gtk_window_new(GTK_WINDOW_TOPLEVEL); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1543 gtk_container_set_border_width(GTK_CONTAINER(colorize_settings), 12); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1544 gtk_window_set_title(GTK_WINDOW(colorize_settings), _("Color Adjustment")); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1545 gtk_window_set_type_hint(GTK_WINDOW(colorize_settings), GDK_WINDOW_TYPE_HINT_DIALOG); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1546 gtk_window_set_transient_for(GTK_WINDOW(colorize_settings), GTK_WINDOW(prefswin)); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1547 |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1548 vbox = gtk_vbox_new(FALSE, 12); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1549 gtk_container_add(GTK_CONTAINER(colorize_settings), vbox); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1550 |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1551 label = gtk_label_new(_("Audacious allows you to alter the color balance of the skinned UI. The sliders below will allow you to do this.")); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1552 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1553 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1554 gtk_misc_set_alignment(GTK_MISC(label), 0, 0); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1555 |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1556 table = gtk_table_new(3, 2, FALSE); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1557 gtk_box_pack_start(GTK_BOX(vbox), table, TRUE, TRUE, 0); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1558 gtk_table_set_row_spacings(GTK_TABLE(table), 6); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1559 gtk_table_set_col_spacings(GTK_TABLE(table), 12); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1560 |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1561 blue_label = gtk_label_new(_("Blue")); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1562 gtk_table_attach(GTK_TABLE(table), blue_label, 0, 1, 2, 3, |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1563 (GtkAttachOptions) (0), |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1564 (GtkAttachOptions) (0), 0, 0); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1565 gtk_label_set_justify(GTK_LABEL(blue_label), GTK_JUSTIFY_RIGHT); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1566 gtk_misc_set_alignment(GTK_MISC(blue_label), 1, 0.5); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1567 |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1568 green_label = gtk_label_new(_("Green")); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1569 gtk_table_attach(GTK_TABLE(table), green_label, 0, 1, 1, 2, |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1570 (GtkAttachOptions) (0), |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1571 (GtkAttachOptions) (0), 0, 0); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1572 gtk_label_set_justify(GTK_LABEL(green_label), GTK_JUSTIFY_RIGHT); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1573 gtk_misc_set_alignment(GTK_MISC(green_label), 1, 0.5); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1574 |
3990
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1575 red_label = gtk_label_new(_("Red")); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1576 gtk_table_attach(GTK_TABLE(table), red_label, 0, 1, 0, 1, |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1577 (GtkAttachOptions) (0), |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1578 (GtkAttachOptions) (0), 0, 0); |
3989
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1579 gtk_label_set_justify(GTK_LABEL(red_label), GTK_JUSTIFY_RIGHT); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1580 gtk_misc_set_alignment(GTK_MISC(red_label), 1, 0.5); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1581 |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1582 red_scale = gtk_hscale_new(GTK_ADJUSTMENT(gtk_adjustment_new(0, 0, 255, 0, 0, 0))); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1583 gtk_table_attach(GTK_TABLE(table), red_scale, 1, 2, 0, 1, |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1584 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1585 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1586 gtk_scale_set_draw_value(GTK_SCALE(red_scale), FALSE); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1587 gtk_scale_set_digits(GTK_SCALE(red_scale), 3); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1588 |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1589 green_scale = gtk_hscale_new(GTK_ADJUSTMENT(gtk_adjustment_new(0, 0, 255, 0, 0, 0))); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1590 gtk_table_attach(GTK_TABLE(table), green_scale, 1, 2, 1, 2, |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1591 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1592 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1593 gtk_scale_set_draw_value(GTK_SCALE(green_scale), FALSE); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1594 gtk_scale_set_digits(GTK_SCALE(green_scale), 3); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1595 |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1596 blue_scale = gtk_hscale_new(GTK_ADJUSTMENT(gtk_adjustment_new(0, 0, 255, 0, 0, 0))); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1597 gtk_table_attach(GTK_TABLE(table), blue_scale, 1, 2, 2, 3, |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1598 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1599 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1600 gtk_scale_set_draw_value(GTK_SCALE(blue_scale), FALSE); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1601 gtk_scale_set_digits(GTK_SCALE(blue_scale), 3); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1602 |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1603 hbuttonbox = gtk_hbutton_box_new(); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1604 gtk_box_pack_start(GTK_BOX(vbox), hbuttonbox, FALSE, FALSE, 0); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1605 gtk_button_box_set_layout(GTK_BUTTON_BOX(hbuttonbox), GTK_BUTTONBOX_END); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1606 gtk_box_set_spacing(GTK_BOX(hbuttonbox), 6); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1607 |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1608 colorize_close = gtk_button_new_from_stock("gtk-close"); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1609 gtk_container_add(GTK_CONTAINER(hbuttonbox), colorize_close); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1610 GTK_WIDGET_SET_FLAGS(colorize_close, GTK_CAN_DEFAULT); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1611 |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1612 g_signal_connect((gpointer) red_scale, "value_changed", |
3993 | 1613 G_CALLBACK(on_red_scale_value_changed), |
3989
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1614 NULL); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1615 g_signal_connect((gpointer) green_scale, "value_changed", |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1616 G_CALLBACK(on_green_scale_value_changed), |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1617 NULL); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1618 g_signal_connect((gpointer) blue_scale, "value_changed", |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1619 G_CALLBACK(on_blue_scale_value_changed), |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1620 NULL); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1621 g_signal_connect((gpointer) colorize_close, "clicked", |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1622 G_CALLBACK(on_colorize_close_clicked), |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1623 NULL); |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1624 |
3991
d6ac99c2be1d
destroy colorize settings upon closing
mf0102 <0102@gmx.at>
parents:
3990
diff
changeset
|
1625 gtk_range_set_value(GTK_RANGE(red_scale), cfg.colorize_r); |
d6ac99c2be1d
destroy colorize settings upon closing
mf0102 <0102@gmx.at>
parents:
3990
diff
changeset
|
1626 gtk_range_set_value(GTK_RANGE(green_scale), cfg.colorize_g); |
d6ac99c2be1d
destroy colorize settings upon closing
mf0102 <0102@gmx.at>
parents:
3990
diff
changeset
|
1627 gtk_range_set_value(GTK_RANGE(blue_scale), cfg.colorize_b); |
d6ac99c2be1d
destroy colorize settings upon closing
mf0102 <0102@gmx.at>
parents:
3990
diff
changeset
|
1628 |
3989
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1629 gtk_widget_grab_default(colorize_close); |
3991
d6ac99c2be1d
destroy colorize settings upon closing
mf0102 <0102@gmx.at>
parents:
3990
diff
changeset
|
1630 gtk_widget_show_all(colorize_settings); |
3989
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1631 } |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1632 |
6faed0cdc276
colorize_popup is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3985
diff
changeset
|
1633 void |
3990
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1634 create_filepopup_settings(void) |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1635 { |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1636 GtkWidget *vbox; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1637 GtkWidget *table; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1638 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1639 GtkWidget *label_cover_retrieve; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1640 GtkWidget *label_cover_search; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1641 GtkWidget *label_exclude; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1642 GtkWidget *label_include; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1643 GtkWidget *label_search_depth; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1644 GtkWidget *label_misc; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1645 GtkWidget *label_delay; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1646 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1647 GtkObject *recurse_for_cover_depth_adj; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1648 GtkObject *delay_adj; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1649 GtkWidget *alignment; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1650 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1651 GtkWidget *hbox; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1652 GtkWidget *hbuttonbox; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1653 GtkWidget *btn_cancel; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1654 GtkWidget *btn_ok; |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1655 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1656 filepopup_settings = gtk_window_new(GTK_WINDOW_TOPLEVEL); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1657 gtk_container_set_border_width(GTK_CONTAINER(filepopup_settings), 12); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1658 gtk_window_set_title(GTK_WINDOW(filepopup_settings), _("Popup Information Settings")); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1659 gtk_window_set_position(GTK_WINDOW(filepopup_settings), GTK_WIN_POS_CENTER_ON_PARENT); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1660 gtk_window_set_skip_taskbar_hint(GTK_WINDOW(filepopup_settings), TRUE); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1661 gtk_window_set_type_hint(GTK_WINDOW(filepopup_settings), GDK_WINDOW_TYPE_HINT_DIALOG); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1662 gtk_window_set_transient_for(GTK_WINDOW(filepopup_settings), GTK_WINDOW(prefswin)); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1663 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1664 vbox = gtk_vbox_new(FALSE, 12); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1665 gtk_container_add(GTK_CONTAINER(filepopup_settings), vbox); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1666 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1667 label_cover_retrieve = gtk_label_new(_("<b>Cover image retrieve</b>")); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1668 gtk_box_pack_start(GTK_BOX(vbox), label_cover_retrieve, FALSE, FALSE, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1669 gtk_label_set_use_markup(GTK_LABEL(label_cover_retrieve), TRUE); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1670 gtk_misc_set_alignment(GTK_MISC(label_cover_retrieve), 0, 0.5); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1671 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1672 label_cover_search = gtk_label_new(_("While searching for the album's cover, Audacious looks for certain words in the filename. You can specify those words in the lists below, separated using commas.")); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1673 gtk_box_pack_start(GTK_BOX(vbox), label_cover_search, FALSE, FALSE, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1674 gtk_label_set_line_wrap(GTK_LABEL(label_cover_search), TRUE); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1675 gtk_misc_set_alignment(GTK_MISC(label_cover_search), 0, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1676 gtk_misc_set_padding(GTK_MISC(label_cover_search), 12, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1677 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1678 table = gtk_table_new(2, 2, FALSE); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1679 gtk_box_pack_start(GTK_BOX(vbox), table, FALSE, FALSE, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1680 gtk_table_set_row_spacings(GTK_TABLE(table), 4); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1681 gtk_table_set_col_spacings(GTK_TABLE(table), 4); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1682 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1683 filepopup_settings_cover_name_include = gtk_entry_new(); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1684 gtk_table_attach(GTK_TABLE(table), filepopup_settings_cover_name_include, 1, 2, 0, 1, |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1685 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1686 (GtkAttachOptions) (0), 0, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1687 gtk_entry_set_activates_default(GTK_ENTRY(filepopup_settings_cover_name_include), TRUE); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1688 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1689 label_exclude = gtk_label_new(_("Exclude:")); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1690 gtk_table_attach(GTK_TABLE(table), label_exclude, 0, 1, 1, 2, |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1691 (GtkAttachOptions) (0), |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1692 (GtkAttachOptions) (0), 0, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1693 gtk_misc_set_alignment(GTK_MISC(label_exclude), 0, 0.5); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1694 gtk_misc_set_padding(GTK_MISC(label_exclude), 12, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1695 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1696 label_include = gtk_label_new(_("Include:")); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1697 gtk_table_attach(GTK_TABLE(table), label_include, 0, 1, 0, 1, |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1698 (GtkAttachOptions) (0), |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1699 (GtkAttachOptions) (0), 0, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1700 gtk_misc_set_alignment(GTK_MISC(label_include), 0, 0.5); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1701 gtk_misc_set_padding(GTK_MISC(label_include), 12, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1702 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1703 filepopup_settings_cover_name_exclude = gtk_entry_new(); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1704 gtk_table_attach(GTK_TABLE(table), filepopup_settings_cover_name_exclude, 1, 2, 1, 2, |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1705 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1706 (GtkAttachOptions) (0), 0, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1707 gtk_entry_set_activates_default(GTK_ENTRY(filepopup_settings_cover_name_exclude), TRUE); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1708 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1709 alignment = gtk_alignment_new(0.5, 0.5, 1, 1); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1710 gtk_box_pack_start(GTK_BOX(vbox), alignment, TRUE, TRUE, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1711 gtk_alignment_set_padding(GTK_ALIGNMENT(alignment), 0, 0, 12, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1712 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1713 filepopup_settings_recurse_for_cover = gtk_check_button_new_with_mnemonic(_("Recursively search for cover")); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1714 gtk_container_add(GTK_CONTAINER(alignment), filepopup_settings_recurse_for_cover); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1715 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1716 alignment = gtk_alignment_new(0.5, 0.5, 1, 1); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1717 gtk_box_pack_start(GTK_BOX(vbox), alignment, FALSE, FALSE, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1718 gtk_alignment_set_padding(GTK_ALIGNMENT(alignment), 0, 0, 45, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1719 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1720 filepopup_settings_recurse_for_cover_depth_box = gtk_hbox_new(FALSE, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1721 gtk_container_add(GTK_CONTAINER(alignment), filepopup_settings_recurse_for_cover_depth_box); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1722 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1723 label_search_depth = gtk_label_new(_("Search depth: ")); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1724 gtk_box_pack_start(GTK_BOX(filepopup_settings_recurse_for_cover_depth_box), label_search_depth, TRUE, TRUE, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1725 gtk_misc_set_padding(GTK_MISC(label_search_depth), 4, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1726 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1727 recurse_for_cover_depth_adj = gtk_adjustment_new(0, 0, 100, 1, 10, 10); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1728 filepopup_settings_recurse_for_cover_depth = gtk_spin_button_new(GTK_ADJUSTMENT(recurse_for_cover_depth_adj), 1, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1729 gtk_box_pack_start(GTK_BOX(filepopup_settings_recurse_for_cover_depth_box), filepopup_settings_recurse_for_cover_depth, TRUE, TRUE, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1730 gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(filepopup_settings_recurse_for_cover_depth), TRUE); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1731 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1732 alignment = gtk_alignment_new(0.5, 0.5, 1, 1); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1733 gtk_box_pack_start(GTK_BOX(vbox), alignment, TRUE, TRUE, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1734 gtk_alignment_set_padding(GTK_ALIGNMENT(alignment), 0, 0, 12, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1735 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1736 filepopup_settings_use_file_cover = gtk_check_button_new_with_mnemonic(_("Use per-file cover")); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1737 gtk_container_add(GTK_CONTAINER(alignment), filepopup_settings_use_file_cover); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1738 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1739 label_misc = gtk_label_new(_("<b>Miscellaneous</b>")); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1740 gtk_box_pack_start(GTK_BOX(vbox), label_misc, FALSE, FALSE, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1741 gtk_label_set_use_markup(GTK_LABEL(label_misc), TRUE); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1742 gtk_misc_set_alignment(GTK_MISC(label_misc), 0, 0.5); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1743 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1744 alignment = gtk_alignment_new(0.5, 0.5, 1, 1); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1745 gtk_box_pack_start(GTK_BOX(vbox), alignment, FALSE, FALSE, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1746 gtk_alignment_set_padding(GTK_ALIGNMENT(alignment), 0, 0, 12, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1747 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1748 filepopup_settings_showprogressbar = gtk_check_button_new_with_mnemonic(_("Show Progress bar for the current track")); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1749 gtk_container_add(GTK_CONTAINER(alignment), filepopup_settings_showprogressbar); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1750 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1751 alignment = gtk_alignment_new(0, 0.5, 1, 1); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1752 gtk_box_pack_start(GTK_BOX(vbox), alignment, TRUE, TRUE, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1753 gtk_alignment_set_padding(GTK_ALIGNMENT(alignment), 0, 0, 12, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1754 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1755 hbox = gtk_hbox_new(FALSE, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1756 gtk_container_add(GTK_CONTAINER(alignment), hbox); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1757 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1758 label_delay = gtk_label_new(_("Delay until filepopup comes up: ")); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1759 gtk_box_pack_start(GTK_BOX(hbox), label_delay, TRUE, TRUE, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1760 gtk_misc_set_alignment(GTK_MISC(label_delay), 0, 0.5); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1761 gtk_misc_set_padding(GTK_MISC(label_delay), 12, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1762 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1763 delay_adj = gtk_adjustment_new(0, 0, 100, 1, 10, 10); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1764 filepopup_settings_delay = gtk_spin_button_new(GTK_ADJUSTMENT(delay_adj), 1, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1765 gtk_box_pack_start(GTK_BOX(hbox), filepopup_settings_delay, TRUE, TRUE, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1766 gtk_spin_button_set_numeric(GTK_SPIN_BUTTON(filepopup_settings_delay), TRUE); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1767 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1768 hbuttonbox = gtk_hbutton_box_new(); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1769 gtk_box_pack_start(GTK_BOX(vbox), hbuttonbox, FALSE, FALSE, 0); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1770 gtk_button_box_set_layout(GTK_BUTTON_BOX(hbuttonbox), GTK_BUTTONBOX_END); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1771 gtk_box_set_spacing(GTK_BOX(hbuttonbox), 6); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1772 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1773 btn_cancel = gtk_button_new_from_stock("gtk-cancel"); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1774 gtk_container_add(GTK_CONTAINER(hbuttonbox), btn_cancel); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1775 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1776 btn_ok = gtk_button_new_from_stock("gtk-ok"); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1777 gtk_container_add(GTK_CONTAINER(hbuttonbox), btn_ok); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1778 GTK_WIDGET_SET_FLAGS(btn_ok, GTK_CAN_DEFAULT); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1779 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1780 g_signal_connect(G_OBJECT(filepopup_settings), "delete_event", |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1781 G_CALLBACK(gtk_widget_hide_on_delete), |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1782 NULL); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1783 g_signal_connect(G_OBJECT(btn_cancel), "clicked", |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1784 G_CALLBACK(on_filepopup_settings_cancel_clicked), |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1785 NULL); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1786 g_signal_connect(G_OBJECT(btn_ok), "clicked", |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1787 G_CALLBACK(on_filepopup_settings_ok_clicked), |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1788 NULL); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1789 g_signal_connect(G_OBJECT(filepopup_settings_recurse_for_cover), "toggled", |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1790 G_CALLBACK(on_recurse_for_cover_toggled), |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1791 filepopup_settings_recurse_for_cover_depth_box); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1792 |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1793 gtk_widget_grab_default(btn_ok); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1794 gtk_widget_show_all(vbox); |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1795 } |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1796 |
4002
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1797 /* it's at early stage */ |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1798 static void |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1799 create_widgets(GtkBox *box, preferences_widgets* widgets, gint amt) |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1800 { |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1801 int x; |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1802 GtkWidget *alignment = NULL, *widget = NULL; |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1803 |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1804 for (x = 0; x < amt; ++x) { |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1805 alignment = gtk_alignment_new (0.5, 0.5, 1, 1); |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1806 gtk_box_pack_start(box, alignment, TRUE, TRUE, 0); |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1807 gtk_alignment_set_padding(GTK_ALIGNMENT(alignment), 0, 0, 12, 0); |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1808 |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1809 if (widgets[x].type == WIDGET_CHK_BTN) { |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1810 widget = gtk_check_button_new_with_mnemonic(widgets[x].label); |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1811 g_object_set_data(G_OBJECT(widget), "callback", widgets[x].callback); |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1812 g_signal_connect(G_OBJECT(widget), "toggled", |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1813 G_CALLBACK(on_toggle_button_toggled), |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1814 widgets[x].cfg); |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1815 g_signal_connect(G_OBJECT(widget), "realize", |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1816 G_CALLBACK(on_toggle_button_realize), |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1817 widgets[x].cfg); |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1818 } |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1819 |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1820 if (widget) |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1821 gtk_container_add(GTK_CONTAINER(alignment), widget); |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1822 if (widgets[x].tooltip) |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1823 gtk_tooltips_set_tip(tooltips, widget, widgets[x].tooltip, NULL); |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1824 } |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1825 |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1826 } |
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
1827 |
3990
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
1828 void |
2313 | 1829 create_prefs_window(void) |
1830 { | |
2467 | 1831 gchar *aud_version_string; |
2313 | 1832 |
1833 GtkWidget *titlestring_tag_menu, *menu_item; | |
1834 guint i; | |
3993 | 1835 |
1836 GtkWidget *vbox; | |
1837 GtkWidget *hbox1; | |
1838 GtkWidget *scrolledwindow6; | |
1839 GtkWidget *plugin_page_vbox; | |
1840 GtkWidget *plugin_notebook; | |
1841 GtkWidget *plugin_input_vbox; | |
1842 GtkWidget *alignment43; | |
1843 GtkWidget *input_plugin_list_label; | |
1844 GtkWidget *scrolledwindow3; | |
1845 GtkWidget *input_plugin_view; | |
1846 GtkWidget *input_plugin_button_box; | |
1847 GtkWidget *input_plugin_prefs; | |
1848 GtkWidget *input_plugin_info; | |
1849 GtkWidget *plugin_input_label; | |
1850 GtkWidget *plugin_general_vbox; | |
1851 GtkWidget *alignment45; | |
1852 GtkWidget *label11; | |
1853 GtkWidget *scrolledwindow5; | |
1854 GtkWidget *general_plugin_view; | |
1855 GtkWidget *general_plugin_button_box; | |
1856 GtkWidget *general_plugin_prefs; | |
1857 GtkWidget *general_plugin_info; | |
1858 GtkWidget *plugin_general_label; | |
1859 GtkWidget *vbox21; | |
1860 GtkWidget *alignment46; | |
1861 GtkWidget *label53; | |
1862 GtkWidget *scrolledwindow7; | |
1863 GtkWidget *vis_plugin_view; | |
1864 GtkWidget *hbuttonbox6; | |
1865 GtkWidget *vis_plugin_prefs; | |
1866 GtkWidget *vis_plugin_info; | |
1867 GtkWidget *vis_label; | |
1868 GtkWidget *vbox25; | |
1869 GtkWidget *alignment58; | |
1870 GtkWidget *label64; | |
1871 GtkWidget *scrolledwindow9; | |
1872 GtkWidget *effect_plugin_view; | |
1873 GtkWidget *hbuttonbox9; | |
1874 GtkWidget *effect_plugin_prefs; | |
1875 GtkWidget *effect_plugin_info; | |
1876 GtkWidget *effects_label; | |
1877 GtkWidget *plugin_label; | |
1878 GtkWidget *appearance_page_vbox; | |
1879 GtkWidget *vbox37; | |
1880 GtkWidget *vbox38; | |
1881 GtkWidget *hbox12; | |
1882 GtkWidget *alignment94; | |
1883 GtkWidget *hbox13; | |
1884 GtkWidget *label103; | |
1885 GtkWidget *colorspace_button; | |
1886 GtkWidget *image11; | |
1887 GtkWidget *image12; | |
1888 GtkWidget *alignment95; | |
1889 GtkWidget *skin_view_scrolled_window; | |
1890 GtkWidget *vbox39; | |
1891 GtkWidget *alignment96; | |
1892 GtkWidget *label104; | |
1893 GtkWidget *table14; | |
1894 GtkWidget *alignment97; | |
1895 GtkWidget *label105; | |
1896 GtkWidget *alignment98; | |
1897 GtkWidget *label106; | |
1898 GtkWidget *fontbutton1; | |
1899 GtkWidget *fontbutton2; | |
1900 GtkWidget *alignment99; | |
1901 GtkWidget *checkbutton11; | |
1902 GtkWidget *vbox40; | |
1903 GtkWidget *alignment100; | |
1904 GtkWidget *label107; | |
1905 GtkWidget *appearance_label; | |
1906 GtkWidget *mouse_page_vbox; | |
1907 GtkWidget *vbox20; | |
1908 GtkWidget *alignment36; | |
1909 GtkWidget *label51; | |
1910 GtkWidget *alignment34; | |
1911 GtkWidget *table4; | |
1912 GtkObject *mouse_wheel_volume_adj; | |
1913 GtkWidget *mouse_wheel_volume; | |
1914 GtkWidget *label35; | |
1915 GtkObject *mouse_wheel_scroll_pl_adj; | |
1916 GtkWidget *mouse_wheel_scroll_pl; | |
1917 GtkWidget *label34; | |
1918 GtkWidget *label33; | |
1919 GtkWidget *label32; | |
1920 GtkWidget *mouse_label; | |
1921 GtkWidget *playlist_page_vbox; | |
1922 GtkWidget *vbox5; | |
1923 GtkWidget *alignment14; | |
1924 GtkWidget *label38; | |
1925 GtkWidget *alignment12; | |
1926 GtkWidget *playlist_convert_underscore; | |
1927 GtkWidget *alignment13; | |
1928 GtkWidget *playlist_convert_twenty; | |
1929 GtkWidget *alignment88; | |
1930 GtkWidget *playlist_convert_slash; | |
1931 GtkWidget *alignment15; | |
1932 GtkWidget *label39; | |
1933 GtkWidget *alignment16; | |
1934 GtkWidget *playlist_use_metadata; | |
1935 GtkWidget *alignment18; | |
1936 GtkWidget *playlist_use_metadata_box; | |
1937 GtkWidget *playlist_metadata_on_load; | |
1938 GSList *playlist_metadata_on_load_group = NULL; | |
1939 GtkWidget *playlist_metadata_on_display; | |
1940 GtkWidget *table10; | |
1941 GtkWidget *label73; | |
1942 GtkWidget *combobox1; | |
1943 GtkWidget *entry1; | |
1944 GtkWidget *label74; | |
1945 GtkWidget *alignment19; | |
1946 GtkWidget *label40; | |
1947 GtkWidget *alignment20; | |
1948 GtkWidget *refresh_file_list; | |
1949 GtkWidget *alignment55; | |
1950 GtkWidget *label60; | |
1951 GtkWidget *alignment56; | |
1952 GtkWidget *table6; | |
1953 GtkWidget *titlestring_help_button; | |
1954 GtkWidget *image1; | |
1955 GtkWidget *titlestring_cbox; | |
1956 GtkWidget *label62; | |
1957 GtkWidget *label61; | |
1958 GtkWidget *alignment85; | |
1959 GtkWidget *label84; | |
1960 GtkWidget *alignment86; | |
1961 GtkWidget *hbox9; | |
1962 GtkWidget *vbox34; | |
1963 GtkWidget *checkbutton10; | |
1964 GtkWidget *image8; | |
1965 GtkWidget *playlist_label; | |
1966 GtkWidget *equalizer_page_vbox; | |
1967 GtkWidget *alignment28; | |
1968 GtkWidget *vbox22; | |
1969 GtkWidget *alignment30; | |
1970 GtkWidget *equalizer_page_label; | |
1971 GtkWidget *vbox23; | |
1972 GtkWidget *alignment33; | |
1973 GtkWidget *table5; | |
1974 GtkWidget *label58; | |
1975 GtkWidget *label57; | |
1976 GtkWidget *eq_file_preset_entry; | |
1977 GtkWidget *eq_dir_preset_entry; | |
1978 GtkWidget *equalizer_label; | |
1979 GtkWidget *connectivity_page_vbox; | |
1980 GtkWidget *vbox29; | |
1981 GtkWidget *alignment63; | |
1982 GtkWidget *connectivity_page_label; | |
1983 GtkWidget *alignment68; | |
1984 GtkWidget *vbox30; | |
1985 GtkWidget *alignment65; | |
1986 GtkWidget *proxy_use; | |
1987 GtkWidget *table8; | |
1988 GtkWidget *proxy_port; | |
1989 GtkWidget *proxy_host; | |
1990 GtkWidget *label69; | |
1991 GtkWidget *label68; | |
1992 GtkWidget *alignment67; | |
1993 GtkWidget *proxy_auth; | |
1994 GtkWidget *table9; | |
1995 GtkWidget *proxy_pass; | |
1996 GtkWidget *proxy_user; | |
1997 GtkWidget *label71; | |
1998 GtkWidget *label70; | |
1999 GtkWidget *alignment72; | |
2000 GtkWidget *hbox6; | |
2001 GtkWidget *image4; | |
2002 GtkWidget *label75; | |
2003 GtkWidget *label95; | |
2004 GtkWidget *empty_notebook_page; | |
2005 GtkWidget *label96; | |
2006 GtkWidget *audio_scrolled_window; | |
2007 GtkWidget *audio_page_viewport; | |
2008 GtkWidget *audio_page_vbox; | |
2009 GtkWidget *alignment74; | |
2010 GtkWidget *label77; | |
2011 GtkWidget *alignment73; | |
2012 GtkWidget *vbox33; | |
2013 GtkWidget *table11; | |
2014 GtkWidget *image7; | |
2015 GtkWidget *label79; | |
2016 GtkWidget *label82; | |
2017 GtkObject *output_plugin_bufsize_adj; | |
2018 GtkWidget *output_plugin_bufsize; | |
2019 GtkWidget *output_plugin_cbox; | |
2020 GtkWidget *label78; | |
2021 GtkWidget *alignment82; | |
2022 GtkWidget *output_plugin_button_box; | |
2023 GtkWidget *output_plugin_prefs; | |
2024 GtkWidget *alignment76; | |
2025 GtkWidget *hbox7; | |
2026 GtkWidget *image5; | |
2027 GtkWidget *label80; | |
2028 GtkWidget *output_plugin_info; | |
2029 GtkWidget *alignment77; | |
2030 GtkWidget *hbox8; | |
2031 GtkWidget *image6; | |
2032 GtkWidget *label81; | |
2033 GtkWidget *alignment78; | |
2034 GtkWidget *label83; | |
2035 GtkWidget *alignment84; | |
2036 GtkWidget *audio_format_det_cb; | |
2037 GtkWidget *alignment89; | |
2038 GtkWidget *detect_by_extension_cb; | |
2039 GtkWidget *alignment83; | |
2040 GtkWidget *continue_playback_on_startup; | |
2041 GtkWidget *alignment79; | |
2042 GtkWidget *playlist_no_advance; | |
2043 GtkWidget *alignment80; | |
2044 GtkWidget *pause_between_songs; | |
2045 GtkWidget *alignment22; | |
2046 GtkWidget *pause_between_songs_box; | |
2047 GtkWidget *label41; | |
2048 GtkObject *pause_between_songs_time_adj; | |
2049 GtkWidget *pause_between_songs_time; | |
2050 GtkWidget *label42; | |
2051 GtkWidget *alignment90; | |
2052 GtkWidget *label93; | |
2053 GtkWidget *alignment92; | |
2054 GtkWidget *enable_src; | |
2055 GtkWidget *alignment91; | |
2056 GtkWidget *vbox36; | |
2057 GtkWidget *table13; | |
2058 GtkWidget *src_converter_type; | |
2059 GtkWidget *label94; | |
2060 GtkWidget *label92; | |
2061 GtkWidget *image9; | |
2062 GtkObject *src_rate_adj; | |
2063 GtkWidget *src_rate; | |
2064 GtkWidget *label91; | |
2065 GtkWidget *alignment4; | |
2066 GtkWidget *label2; | |
2067 GtkWidget *alignment7; | |
2068 GtkWidget *software_volume_control; | |
2069 GtkWidget *hseparator1; | |
2070 GtkWidget *hbox4; | |
2071 GtkWidget *audversionlabel; | |
2072 GtkWidget *prefswin_button_box; | |
2073 GtkWidget *reload_plugins; | |
2074 GtkWidget *alignment93; | |
2075 GtkWidget *hbox11; | |
2076 GtkWidget *image10; | |
2077 GtkWidget *label102; | |
2078 GtkWidget *close; | |
2079 GtkAccelGroup *accel_group; | |
2080 | |
2081 tooltips = gtk_tooltips_new (); | |
2082 | |
2083 accel_group = gtk_accel_group_new (); | |
2084 | |
2085 prefswin = gtk_window_new (GTK_WINDOW_TOPLEVEL); | |
2086 gtk_container_set_border_width (GTK_CONTAINER (prefswin), 12); | |
2087 gtk_window_set_title (GTK_WINDOW (prefswin), _("Audacious Preferences")); | |
2088 gtk_window_set_position (GTK_WINDOW (prefswin), GTK_WIN_POS_CENTER); | |
2089 gtk_window_set_default_size (GTK_WINDOW (prefswin), 680, 400); | |
2090 | |
2091 vbox = gtk_vbox_new (FALSE, 0); | |
2092 gtk_container_add (GTK_CONTAINER (prefswin), vbox); | |
2093 | |
2094 hbox1 = gtk_hbox_new (FALSE, 8); | |
2095 gtk_box_pack_start (GTK_BOX (vbox), hbox1, TRUE, TRUE, 0); | |
2096 | |
2097 scrolledwindow6 = gtk_scrolled_window_new (NULL, NULL); | |
2098 gtk_box_pack_start (GTK_BOX (hbox1), scrolledwindow6, TRUE, TRUE, 0); | |
2099 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow6), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); | |
2100 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow6), GTK_SHADOW_IN); | |
2101 | |
2102 category_treeview = gtk_tree_view_new (); | |
2103 gtk_container_add (GTK_CONTAINER (scrolledwindow6), category_treeview); | |
2104 gtk_widget_set_size_request (category_treeview, 172, -1); | |
2105 gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (category_treeview), FALSE); | |
2106 | |
2107 category_notebook = gtk_notebook_new (); | |
2108 gtk_box_pack_start (GTK_BOX (hbox1), category_notebook, TRUE, TRUE, 0); | |
2109 GTK_WIDGET_UNSET_FLAGS (category_notebook, GTK_CAN_FOCUS); | |
2110 gtk_notebook_set_show_tabs (GTK_NOTEBOOK (category_notebook), FALSE); | |
2111 gtk_notebook_set_show_border (GTK_NOTEBOOK (category_notebook), FALSE); | |
2112 gtk_notebook_set_scrollable (GTK_NOTEBOOK (category_notebook), TRUE); | |
2113 | |
2114 plugin_page_vbox = gtk_vbox_new (FALSE, 0); | |
2115 gtk_container_add (GTK_CONTAINER (category_notebook), plugin_page_vbox); | |
2116 | |
2117 plugin_notebook = gtk_notebook_new (); | |
2118 gtk_box_pack_start (GTK_BOX (plugin_page_vbox), plugin_notebook, TRUE, TRUE, 0); | |
2119 gtk_notebook_set_show_border (GTK_NOTEBOOK (plugin_notebook), FALSE); | |
2120 | |
2121 plugin_input_vbox = gtk_vbox_new (FALSE, 0); | |
2122 gtk_container_add (GTK_CONTAINER (plugin_notebook), plugin_input_vbox); | |
2123 gtk_container_set_border_width (GTK_CONTAINER (plugin_input_vbox), 12); | |
2124 | |
2125 alignment43 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2126 gtk_box_pack_start (GTK_BOX (plugin_input_vbox), alignment43, FALSE, FALSE, 4); | |
2127 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment43), 0, 6, 0, 0); | |
2128 | |
2129 input_plugin_list_label = gtk_label_new_with_mnemonic (_("_Decoder list:")); | |
2130 gtk_container_add (GTK_CONTAINER (alignment43), input_plugin_list_label); | |
2131 gtk_label_set_use_markup (GTK_LABEL (input_plugin_list_label), TRUE); | |
2132 gtk_misc_set_alignment (GTK_MISC (input_plugin_list_label), 0, 0.5); | |
2133 | |
2134 scrolledwindow3 = gtk_scrolled_window_new (NULL, NULL); | |
2135 gtk_box_pack_start (GTK_BOX (plugin_input_vbox), scrolledwindow3, TRUE, TRUE, 0); | |
2136 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow3), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); | |
2137 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow3), GTK_SHADOW_IN); | |
2138 | |
2139 input_plugin_view = gtk_tree_view_new (); | |
2140 gtk_container_add (GTK_CONTAINER (scrolledwindow3), input_plugin_view); | |
2141 gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (input_plugin_view), TRUE); | |
2142 gtk_tree_view_set_reorderable (GTK_TREE_VIEW (input_plugin_view), TRUE); | |
2143 | |
2144 input_plugin_button_box = gtk_hbutton_box_new (); | |
2145 gtk_box_pack_start (GTK_BOX (plugin_input_vbox), input_plugin_button_box, FALSE, FALSE, 8); | |
2146 gtk_button_box_set_layout (GTK_BUTTON_BOX (input_plugin_button_box), GTK_BUTTONBOX_START); | |
2147 gtk_box_set_spacing (GTK_BOX (input_plugin_button_box), 8); | |
2148 | |
2149 input_plugin_prefs = gtk_button_new_from_stock ("gtk-preferences"); | |
2150 gtk_container_add (GTK_CONTAINER (input_plugin_button_box), input_plugin_prefs); | |
2151 gtk_widget_set_sensitive (input_plugin_prefs, FALSE); | |
2152 GTK_WIDGET_SET_FLAGS (input_plugin_prefs, GTK_CAN_DEFAULT); | |
2153 | |
2154 input_plugin_info = gtk_button_new_from_stock ("gtk-dialog-info"); | |
2155 gtk_container_add (GTK_CONTAINER (input_plugin_button_box), input_plugin_info); | |
2156 gtk_widget_set_sensitive (input_plugin_info, FALSE); | |
2157 GTK_WIDGET_SET_FLAGS (input_plugin_info, GTK_CAN_DEFAULT); | |
2158 | |
2159 plugin_input_label = gtk_label_new (_("<span size=\"medium\"><b>Decoders</b></span>")); | |
2160 gtk_notebook_set_tab_label (GTK_NOTEBOOK (plugin_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (plugin_notebook), 0), plugin_input_label); | |
2161 gtk_label_set_use_markup (GTK_LABEL (plugin_input_label), TRUE); | |
2162 gtk_misc_set_alignment (GTK_MISC (plugin_input_label), 0, 0); | |
2163 | |
2164 plugin_general_vbox = gtk_vbox_new (FALSE, 0); | |
2165 gtk_container_add (GTK_CONTAINER (plugin_notebook), plugin_general_vbox); | |
2166 gtk_container_set_border_width (GTK_CONTAINER (plugin_general_vbox), 12); | |
2167 | |
2168 alignment45 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2169 gtk_box_pack_start (GTK_BOX (plugin_general_vbox), alignment45, FALSE, FALSE, 4); | |
2170 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment45), 0, 6, 0, 0); | |
2171 | |
2172 label11 = gtk_label_new_with_mnemonic (_("_General plugin list:")); | |
2173 gtk_container_add (GTK_CONTAINER (alignment45), label11); | |
2174 gtk_label_set_use_markup (GTK_LABEL (label11), TRUE); | |
2175 gtk_misc_set_alignment (GTK_MISC (label11), 0, 0.5); | |
2176 | |
2177 scrolledwindow5 = gtk_scrolled_window_new (NULL, NULL); | |
2178 gtk_box_pack_start (GTK_BOX (plugin_general_vbox), scrolledwindow5, TRUE, TRUE, 0); | |
2179 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow5), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); | |
2180 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow5), GTK_SHADOW_IN); | |
2181 | |
2182 general_plugin_view = gtk_tree_view_new (); | |
2183 gtk_container_add (GTK_CONTAINER (scrolledwindow5), general_plugin_view); | |
2184 gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (general_plugin_view), TRUE); | |
2185 gtk_tree_view_set_reorderable (GTK_TREE_VIEW (general_plugin_view), TRUE); | |
2186 | |
2187 general_plugin_button_box = gtk_hbutton_box_new (); | |
2188 gtk_box_pack_start (GTK_BOX (plugin_general_vbox), general_plugin_button_box, FALSE, FALSE, 8); | |
2189 gtk_button_box_set_layout (GTK_BUTTON_BOX (general_plugin_button_box), GTK_BUTTONBOX_START); | |
2190 gtk_box_set_spacing (GTK_BOX (general_plugin_button_box), 8); | |
2191 | |
2192 general_plugin_prefs = gtk_button_new_from_stock ("gtk-preferences"); | |
2193 gtk_container_add (GTK_CONTAINER (general_plugin_button_box), general_plugin_prefs); | |
2194 gtk_widget_set_sensitive (general_plugin_prefs, FALSE); | |
2195 GTK_WIDGET_SET_FLAGS (general_plugin_prefs, GTK_CAN_DEFAULT); | |
2196 | |
2197 general_plugin_info = gtk_button_new_from_stock ("gtk-dialog-info"); | |
2198 gtk_container_add (GTK_CONTAINER (general_plugin_button_box), general_plugin_info); | |
2199 gtk_widget_set_sensitive (general_plugin_info, FALSE); | |
2200 GTK_WIDGET_SET_FLAGS (general_plugin_info, GTK_CAN_DEFAULT); | |
2201 | |
2202 plugin_general_label = gtk_label_new (_("<span size=\"medium\"><b>General</b></span>")); | |
2203 gtk_notebook_set_tab_label (GTK_NOTEBOOK (plugin_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (plugin_notebook), 1), plugin_general_label); | |
2204 gtk_label_set_use_markup (GTK_LABEL (plugin_general_label), TRUE); | |
2205 | |
2206 vbox21 = gtk_vbox_new (FALSE, 0); | |
2207 gtk_container_add (GTK_CONTAINER (plugin_notebook), vbox21); | |
2208 gtk_container_set_border_width (GTK_CONTAINER (vbox21), 12); | |
2209 | |
2210 alignment46 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2211 gtk_box_pack_start (GTK_BOX (vbox21), alignment46, FALSE, FALSE, 4); | |
2212 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment46), 0, 6, 0, 0); | |
2213 | |
2214 label53 = gtk_label_new_with_mnemonic (_("_Visualization plugin list:")); | |
2215 gtk_container_add (GTK_CONTAINER (alignment46), label53); | |
2216 gtk_label_set_use_markup (GTK_LABEL (label53), TRUE); | |
2217 gtk_misc_set_alignment (GTK_MISC (label53), 0, 0.5); | |
2218 | |
2219 scrolledwindow7 = gtk_scrolled_window_new (NULL, NULL); | |
2220 gtk_box_pack_start (GTK_BOX (vbox21), scrolledwindow7, TRUE, TRUE, 0); | |
2221 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow7), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); | |
2222 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow7), GTK_SHADOW_IN); | |
2223 | |
2224 vis_plugin_view = gtk_tree_view_new (); | |
2225 gtk_container_add (GTK_CONTAINER (scrolledwindow7), vis_plugin_view); | |
2226 gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (vis_plugin_view), TRUE); | |
2227 gtk_tree_view_set_reorderable (GTK_TREE_VIEW (vis_plugin_view), TRUE); | |
2228 | |
2229 hbuttonbox6 = gtk_hbutton_box_new (); | |
2230 gtk_box_pack_start (GTK_BOX (vbox21), hbuttonbox6, FALSE, FALSE, 8); | |
2231 gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox6), GTK_BUTTONBOX_START); | |
2232 gtk_box_set_spacing (GTK_BOX (hbuttonbox6), 8); | |
2233 | |
2234 vis_plugin_prefs = gtk_button_new_from_stock ("gtk-preferences"); | |
2235 gtk_container_add (GTK_CONTAINER (hbuttonbox6), vis_plugin_prefs); | |
2236 gtk_widget_set_sensitive (vis_plugin_prefs, FALSE); | |
2237 GTK_WIDGET_SET_FLAGS (vis_plugin_prefs, GTK_CAN_DEFAULT); | |
2238 | |
2239 vis_plugin_info = gtk_button_new_from_stock ("gtk-dialog-info"); | |
2240 gtk_container_add (GTK_CONTAINER (hbuttonbox6), vis_plugin_info); | |
2241 gtk_widget_set_sensitive (vis_plugin_info, FALSE); | |
2242 GTK_WIDGET_SET_FLAGS (vis_plugin_info, GTK_CAN_DEFAULT); | |
2243 | |
2244 vis_label = gtk_label_new (_("<b>Visualization</b>")); | |
2245 gtk_notebook_set_tab_label (GTK_NOTEBOOK (plugin_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (plugin_notebook), 2), vis_label); | |
2246 gtk_label_set_use_markup (GTK_LABEL (vis_label), TRUE); | |
2247 | |
2248 vbox25 = gtk_vbox_new (FALSE, 0); | |
2249 gtk_container_add (GTK_CONTAINER (plugin_notebook), vbox25); | |
2250 gtk_container_set_border_width (GTK_CONTAINER (vbox25), 12); | |
2251 | |
2252 alignment58 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2253 gtk_box_pack_start (GTK_BOX (vbox25), alignment58, FALSE, FALSE, 4); | |
2254 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment58), 0, 6, 0, 0); | |
2255 | |
2256 label64 = gtk_label_new_with_mnemonic (_("_Effect plugin list:")); | |
2257 gtk_container_add (GTK_CONTAINER (alignment58), label64); | |
2258 gtk_label_set_use_markup (GTK_LABEL (label64), TRUE); | |
2259 gtk_misc_set_alignment (GTK_MISC (label64), 0, 0.5); | |
2260 | |
2261 scrolledwindow9 = gtk_scrolled_window_new (NULL, NULL); | |
2262 gtk_box_pack_start (GTK_BOX (vbox25), scrolledwindow9, TRUE, TRUE, 0); | |
2263 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow9), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); | |
2264 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow9), GTK_SHADOW_IN); | |
2265 | |
2266 effect_plugin_view = gtk_tree_view_new (); | |
2267 gtk_container_add (GTK_CONTAINER (scrolledwindow9), effect_plugin_view); | |
2268 gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (effect_plugin_view), TRUE); | |
2269 gtk_tree_view_set_reorderable (GTK_TREE_VIEW (effect_plugin_view), TRUE); | |
2270 | |
2271 hbuttonbox9 = gtk_hbutton_box_new (); | |
2272 gtk_box_pack_start (GTK_BOX (vbox25), hbuttonbox9, FALSE, FALSE, 8); | |
2273 gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox9), GTK_BUTTONBOX_START); | |
2274 gtk_box_set_spacing (GTK_BOX (hbuttonbox9), 8); | |
2275 | |
2276 effect_plugin_prefs = gtk_button_new_from_stock ("gtk-preferences"); | |
2277 gtk_container_add (GTK_CONTAINER (hbuttonbox9), effect_plugin_prefs); | |
2278 gtk_widget_set_sensitive (effect_plugin_prefs, FALSE); | |
2279 GTK_WIDGET_SET_FLAGS (effect_plugin_prefs, GTK_CAN_DEFAULT); | |
2280 | |
2281 effect_plugin_info = gtk_button_new_from_stock ("gtk-dialog-info"); | |
2282 gtk_container_add (GTK_CONTAINER (hbuttonbox9), effect_plugin_info); | |
2283 gtk_widget_set_sensitive (effect_plugin_info, FALSE); | |
2284 GTK_WIDGET_SET_FLAGS (effect_plugin_info, GTK_CAN_DEFAULT); | |
2285 | |
2286 effects_label = gtk_label_new (_("<b>Effects</b>")); | |
2287 gtk_notebook_set_tab_label (GTK_NOTEBOOK (plugin_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (plugin_notebook), 3), effects_label); | |
2288 gtk_label_set_use_markup (GTK_LABEL (effects_label), TRUE); | |
2289 | |
2290 plugin_label = gtk_label_new (_("Plugins")); | |
2291 gtk_notebook_set_tab_label (GTK_NOTEBOOK (category_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (category_notebook), 0), plugin_label); | |
2292 | |
2293 appearance_page_vbox = gtk_vbox_new (FALSE, 0); | |
2294 gtk_container_add (GTK_CONTAINER (category_notebook), appearance_page_vbox); | |
2295 | |
2296 vbox37 = gtk_vbox_new (FALSE, 0); | |
2297 gtk_box_pack_start (GTK_BOX (appearance_page_vbox), vbox37, TRUE, TRUE, 0); | |
2298 | |
2299 vbox38 = gtk_vbox_new (FALSE, 0); | |
2300 gtk_box_pack_start (GTK_BOX (vbox37), vbox38, FALSE, TRUE, 0); | |
2301 | |
2302 hbox12 = gtk_hbox_new (FALSE, 0); | |
2303 gtk_box_pack_start (GTK_BOX (vbox38), hbox12, TRUE, TRUE, 0); | |
2304 | |
2305 alignment94 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2306 gtk_box_pack_start (GTK_BOX (hbox12), alignment94, TRUE, TRUE, 0); | |
2307 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment94), 0, 4, 0, 0); | |
2308 | |
2309 hbox13 = gtk_hbox_new (FALSE, 0); | |
2310 gtk_container_add (GTK_CONTAINER (alignment94), hbox13); | |
2311 | |
2312 label103 = gtk_label_new_with_mnemonic (_("<b>_Skin</b>")); | |
2313 gtk_box_pack_start (GTK_BOX (hbox13), label103, TRUE, TRUE, 0); | |
2314 gtk_label_set_use_markup (GTK_LABEL (label103), TRUE); | |
2315 gtk_misc_set_alignment (GTK_MISC (label103), 0, 0); | |
2316 | |
2317 colorspace_button = gtk_button_new (); | |
2318 gtk_box_pack_start (GTK_BOX (hbox13), colorspace_button, FALSE, FALSE, 0); | |
2319 | |
2320 image11 = gtk_image_new_from_stock ("gtk-properties", GTK_ICON_SIZE_BUTTON); | |
2321 gtk_container_add (GTK_CONTAINER (colorspace_button), image11); | |
2322 | |
2323 skin_refresh_button = gtk_button_new (); | |
2324 gtk_box_pack_start (GTK_BOX (hbox13), skin_refresh_button, FALSE, FALSE, 0); | |
2325 GTK_WIDGET_UNSET_FLAGS (skin_refresh_button, GTK_CAN_FOCUS); | |
2326 gtk_tooltips_set_tip (tooltips, skin_refresh_button, _("Refresh skin list"), NULL); | |
2327 gtk_button_set_relief (GTK_BUTTON (skin_refresh_button), GTK_RELIEF_HALF); | |
2328 gtk_button_set_focus_on_click (GTK_BUTTON (skin_refresh_button), FALSE); | |
2329 | |
2330 image12 = gtk_image_new_from_stock ("gtk-refresh", GTK_ICON_SIZE_BUTTON); | |
2331 gtk_container_add (GTK_CONTAINER (skin_refresh_button), image12); | |
2332 | |
2333 alignment95 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2334 gtk_box_pack_start (GTK_BOX (vbox38), alignment95, TRUE, TRUE, 0); | |
2335 gtk_widget_set_size_request (alignment95, -1, 172); | |
2336 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment95), 0, 0, 12, 0); | |
2337 | |
2338 skin_view_scrolled_window = gtk_scrolled_window_new (NULL, NULL); | |
2339 gtk_container_add (GTK_CONTAINER (alignment95), skin_view_scrolled_window); | |
2340 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (skin_view_scrolled_window), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS); | |
2341 gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (skin_view_scrolled_window), GTK_SHADOW_IN); | |
2342 | |
2343 skin_view = gtk_tree_view_new (); | |
2344 gtk_container_add (GTK_CONTAINER (skin_view_scrolled_window), skin_view); | |
2345 gtk_widget_set_size_request (skin_view, -1, 100); | |
2346 | |
2347 vbox39 = gtk_vbox_new (FALSE, 0); | |
2348 gtk_box_pack_start (GTK_BOX (vbox37), vbox39, FALSE, TRUE, 0); | |
2349 | |
2350 alignment96 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2351 gtk_box_pack_start (GTK_BOX (vbox39), alignment96, TRUE, TRUE, 0); | |
2352 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment96), 12, 6, 0, 0); | |
2353 | |
2354 label104 = gtk_label_new_with_mnemonic (_("<b>_Fonts</b>")); | |
2355 gtk_container_add (GTK_CONTAINER (alignment96), label104); | |
2356 gtk_label_set_use_markup (GTK_LABEL (label104), TRUE); | |
2357 gtk_misc_set_alignment (GTK_MISC (label104), 0, 0.5); | |
2358 | |
2359 table14 = gtk_table_new (2, 2, FALSE); | |
2360 gtk_box_pack_start (GTK_BOX (vbox39), table14, TRUE, TRUE, 0); | |
2361 gtk_table_set_row_spacings (GTK_TABLE (table14), 8); | |
2362 gtk_table_set_col_spacings (GTK_TABLE (table14), 2); | |
2363 | |
2364 alignment97 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2365 gtk_table_attach (GTK_TABLE (table14), alignment97, 0, 1, 0, 1, | |
2366 (GtkAttachOptions) (0), | |
2367 (GtkAttachOptions) (0), 0, 0); | |
2368 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment97), 0, 0, 12, 6); | |
2369 | |
2370 label105 = gtk_label_new_with_mnemonic (_("_Player:")); | |
2371 gtk_container_add (GTK_CONTAINER (alignment97), label105); | |
2372 gtk_label_set_use_markup (GTK_LABEL (label105), TRUE); | |
2373 gtk_misc_set_alignment (GTK_MISC (label105), 1, 0.5); | |
2374 | |
2375 alignment98 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2376 gtk_table_attach (GTK_TABLE (table14), alignment98, 0, 1, 1, 2, | |
2377 (GtkAttachOptions) (0), | |
2378 (GtkAttachOptions) (0), 0, 0); | |
2379 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment98), 0, 0, 12, 6); | |
2380 | |
2381 label106 = gtk_label_new_with_mnemonic (_("_Playlist:")); | |
2382 gtk_container_add (GTK_CONTAINER (alignment98), label106); | |
2383 gtk_label_set_use_markup (GTK_LABEL (label106), TRUE); | |
2384 gtk_label_set_justify (GTK_LABEL (label106), GTK_JUSTIFY_RIGHT); | |
2385 gtk_misc_set_alignment (GTK_MISC (label106), 1, 0.5); | |
2386 | |
2387 fontbutton1 = gtk_font_button_new (); | |
2388 gtk_table_attach (GTK_TABLE (table14), fontbutton1, 1, 2, 0, 1, | |
2389 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), | |
2390 (GtkAttachOptions) (0), 0, 0); | |
2391 gtk_font_button_set_title (GTK_FONT_BUTTON (fontbutton1), _("Select main player window font:")); | |
2392 gtk_font_button_set_use_font (GTK_FONT_BUTTON (fontbutton1), TRUE); | |
2393 gtk_font_button_set_use_size (GTK_FONT_BUTTON (fontbutton1), TRUE); | |
2394 | |
2395 fontbutton2 = gtk_font_button_new (); | |
2396 gtk_table_attach (GTK_TABLE (table14), fontbutton2, 1, 2, 1, 2, | |
2397 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), | |
2398 (GtkAttachOptions) (0), 0, 0); | |
2399 gtk_font_button_set_title (GTK_FONT_BUTTON (fontbutton2), _("Select playlist font:")); | |
2400 gtk_font_button_set_use_font (GTK_FONT_BUTTON (fontbutton2), TRUE); | |
2401 gtk_font_button_set_use_size (GTK_FONT_BUTTON (fontbutton2), TRUE); | |
2402 | |
2403 alignment99 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2404 gtk_box_pack_start (GTK_BOX (vbox39), alignment99, TRUE, TRUE, 0); | |
2405 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment99), 4, 0, 12, 0); | |
2406 | |
2407 checkbutton11 = gtk_check_button_new_with_mnemonic (_("Use Bitmap fonts if available")); | |
2408 gtk_container_add (GTK_CONTAINER (alignment99), checkbutton11); | |
2409 gtk_tooltips_set_tip (tooltips, checkbutton11, _("Use bitmap fonts if they are available. Bitmap fonts do not support Unicode strings."), NULL); | |
2410 | |
2411 vbox40 = gtk_vbox_new (FALSE, 0); | |
2412 gtk_box_pack_start (GTK_BOX (vbox37), vbox40, FALSE, TRUE, 0); | |
2413 | |
2414 alignment100 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2415 gtk_box_pack_start (GTK_BOX (vbox40), alignment100, TRUE, TRUE, 0); | |
2416 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment100), 12, 6, 0, 0); | |
2417 | |
2418 label107 = gtk_label_new_with_mnemonic (_("<b>_Miscellaneous</b>")); | |
2419 gtk_container_add (GTK_CONTAINER (alignment100), label107); | |
2420 gtk_label_set_use_markup (GTK_LABEL (label107), TRUE); | |
2421 gtk_misc_set_alignment (GTK_MISC (label107), 0, 0.5); | |
2422 | |
4002
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
2423 create_widgets(GTK_BOX(vbox40), checkboxes, G_N_ELEMENTS(checkboxes)); |
3993 | 2424 |
2425 appearance_label = gtk_label_new (_("Appearance")); | |
2426 gtk_notebook_set_tab_label (GTK_NOTEBOOK (category_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (category_notebook), 1), appearance_label); | |
2427 | |
2428 mouse_page_vbox = gtk_vbox_new (FALSE, 0); | |
2429 gtk_container_add (GTK_CONTAINER (category_notebook), mouse_page_vbox); | |
2430 | |
2431 vbox20 = gtk_vbox_new (FALSE, 0); | |
2432 gtk_box_pack_start (GTK_BOX (mouse_page_vbox), vbox20, TRUE, TRUE, 0); | |
2433 | |
2434 alignment36 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2435 gtk_box_pack_start (GTK_BOX (vbox20), alignment36, FALSE, FALSE, 0); | |
2436 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment36), 0, 12, 0, 0); | |
2437 | |
2438 label51 = gtk_label_new (_("<b>Mouse wheel</b>")); | |
2439 gtk_container_add (GTK_CONTAINER (alignment36), label51); | |
2440 gtk_label_set_use_markup (GTK_LABEL (label51), TRUE); | |
2441 gtk_misc_set_alignment (GTK_MISC (label51), 0, 0); | |
2442 | |
2443 alignment34 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2444 gtk_box_pack_start (GTK_BOX (vbox20), alignment34, FALSE, FALSE, 0); | |
2445 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment34), 0, 0, 12, 0); | |
2446 | |
2447 table4 = gtk_table_new (2, 3, FALSE); | |
2448 gtk_container_add (GTK_CONTAINER (alignment34), table4); | |
2449 gtk_table_set_row_spacings (GTK_TABLE (table4), 6); | |
2450 | |
2451 mouse_wheel_volume_adj = gtk_adjustment_new (5, 0, 100, 1, 10, 10); | |
2452 mouse_wheel_volume = gtk_spin_button_new (GTK_ADJUSTMENT (mouse_wheel_volume_adj), 1, 0); | |
2453 gtk_table_attach (GTK_TABLE (table4), mouse_wheel_volume, 1, 2, 0, 1, | |
2454 (GtkAttachOptions) (0), | |
2455 (GtkAttachOptions) (0), 4, 0); | |
2456 gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (mouse_wheel_volume), TRUE); | |
2457 | |
2458 label35 = gtk_label_new (_("lines")); | |
2459 gtk_table_attach (GTK_TABLE (table4), label35, 2, 3, 1, 2, | |
2460 (GtkAttachOptions) (0), | |
2461 (GtkAttachOptions) (0), 0, 0); | |
2462 gtk_misc_set_alignment (GTK_MISC (label35), 0, 0.5); | |
2463 gtk_misc_set_padding (GTK_MISC (label35), 4, 0); | |
2464 | |
2465 mouse_wheel_scroll_pl_adj = gtk_adjustment_new (1, 0, 100, 1, 10, 10); | |
2466 mouse_wheel_scroll_pl = gtk_spin_button_new (GTK_ADJUSTMENT (mouse_wheel_scroll_pl_adj), 1, 0); | |
2467 gtk_table_attach (GTK_TABLE (table4), mouse_wheel_scroll_pl, 1, 2, 1, 2, | |
2468 (GtkAttachOptions) (0), | |
2469 (GtkAttachOptions) (0), 4, 0); | |
2470 | |
2471 label34 = gtk_label_new (_("Scrolls playlist by")); | |
2472 gtk_table_attach (GTK_TABLE (table4), label34, 0, 1, 1, 2, | |
2473 (GtkAttachOptions) (0), | |
2474 (GtkAttachOptions) (0), 0, 0); | |
2475 gtk_misc_set_alignment (GTK_MISC (label34), 0, 0.5); | |
2476 gtk_misc_set_padding (GTK_MISC (label34), 4, 0); | |
2477 | |
2478 label33 = gtk_label_new (_("percent")); | |
2479 gtk_table_attach (GTK_TABLE (table4), label33, 2, 3, 0, 1, | |
2480 (GtkAttachOptions) (0), | |
2481 (GtkAttachOptions) (0), 0, 0); | |
2482 gtk_misc_set_alignment (GTK_MISC (label33), 0, 0.5); | |
2483 gtk_misc_set_padding (GTK_MISC (label33), 4, 0); | |
2484 | |
2485 label32 = gtk_label_new (_("Changes volume by")); | |
2486 gtk_table_attach (GTK_TABLE (table4), label32, 0, 1, 0, 1, | |
2487 (GtkAttachOptions) (0), | |
2488 (GtkAttachOptions) (0), 0, 0); | |
2489 gtk_misc_set_alignment (GTK_MISC (label32), 0, 0.5); | |
2490 gtk_misc_set_padding (GTK_MISC (label32), 4, 0); | |
2491 | |
2492 mouse_label = gtk_label_new (_("Mouse")); | |
2493 gtk_notebook_set_tab_label (GTK_NOTEBOOK (category_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (category_notebook), 2), mouse_label); | |
2494 | |
2495 playlist_page_vbox = gtk_vbox_new (FALSE, 0); | |
2496 gtk_container_add (GTK_CONTAINER (category_notebook), playlist_page_vbox); | |
2497 | |
2498 vbox5 = gtk_vbox_new (FALSE, 0); | |
2499 gtk_box_pack_start (GTK_BOX (playlist_page_vbox), vbox5, TRUE, TRUE, 0); | |
2500 | |
2501 alignment14 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2502 gtk_box_pack_start (GTK_BOX (vbox5), alignment14, FALSE, FALSE, 0); | |
2503 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment14), 0, 12, 0, 0); | |
2504 | |
2505 label38 = gtk_label_new (_("<b>Filename</b>")); | |
2506 gtk_container_add (GTK_CONTAINER (alignment14), label38); | |
2507 gtk_label_set_use_markup (GTK_LABEL (label38), TRUE); | |
2508 gtk_misc_set_alignment (GTK_MISC (label38), 0, 0.5); | |
2509 | |
2510 alignment12 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2511 gtk_box_pack_start (GTK_BOX (vbox5), alignment12, FALSE, FALSE, 0); | |
2512 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment12), 0, 0, 12, 0); | |
2513 | |
2514 playlist_convert_underscore = gtk_check_button_new_with_mnemonic (_("Convert underscores to blanks")); | |
2515 gtk_container_add (GTK_CONTAINER (alignment12), playlist_convert_underscore); | |
2516 | |
2517 alignment13 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2518 gtk_box_pack_start (GTK_BOX (vbox5), alignment13, FALSE, FALSE, 0); | |
2519 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment13), 0, 0, 12, 0); | |
2520 | |
2521 playlist_convert_twenty = gtk_check_button_new_with_mnemonic (_("Convert %20 to blanks")); | |
2522 gtk_container_add (GTK_CONTAINER (alignment13), playlist_convert_twenty); | |
2523 | |
2524 alignment88 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2525 gtk_box_pack_start (GTK_BOX (vbox5), alignment88, FALSE, FALSE, 0); | |
2526 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment88), 0, 0, 12, 0); | |
2527 | |
2528 playlist_convert_slash = gtk_check_button_new_with_mnemonic (_("Convert backslash '\\' to forward slash '/'")); | |
2529 gtk_container_add (GTK_CONTAINER (alignment88), playlist_convert_slash); | |
2530 | |
2531 alignment15 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2532 gtk_box_pack_start (GTK_BOX (vbox5), alignment15, FALSE, FALSE, 0); | |
2533 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment15), 12, 12, 0, 0); | |
2534 | |
2535 label39 = gtk_label_new (_("<b>Metadata</b>")); | |
2536 gtk_container_add (GTK_CONTAINER (alignment15), label39); | |
2537 gtk_label_set_use_markup (GTK_LABEL (label39), TRUE); | |
2538 gtk_misc_set_alignment (GTK_MISC (label39), 0, 0.5); | |
2539 | |
2540 alignment16 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2541 gtk_box_pack_start (GTK_BOX (vbox5), alignment16, FALSE, FALSE, 0); | |
2542 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment16), 0, 0, 12, 0); | |
2543 | |
2544 playlist_use_metadata = gtk_check_button_new_with_mnemonic (_("Load metadata from playlists and files")); | |
2545 gtk_container_add (GTK_CONTAINER (alignment16), playlist_use_metadata); | |
2546 gtk_tooltips_set_tip (tooltips, playlist_use_metadata, _("Load metadata (tag information) from music files."), NULL); | |
2547 | |
2548 alignment18 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2549 gtk_box_pack_start (GTK_BOX (vbox5), alignment18, FALSE, FALSE, 0); | |
2550 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment18), 0, 0, 24, 0); | |
2551 | |
2552 playlist_use_metadata_box = gtk_vbox_new (FALSE, 0); | |
2553 gtk_container_add (GTK_CONTAINER (alignment18), playlist_use_metadata_box); | |
2554 | |
2555 playlist_metadata_on_load = gtk_radio_button_new_with_mnemonic (NULL, _("On load")); | |
2556 gtk_box_pack_start (GTK_BOX (playlist_use_metadata_box), playlist_metadata_on_load, FALSE, FALSE, 0); | |
2557 gtk_tooltips_set_tip (tooltips, playlist_metadata_on_load, _("Load metadata when adding the file to the playlist or opening it"), NULL); | |
2558 gtk_radio_button_set_group (GTK_RADIO_BUTTON (playlist_metadata_on_load), playlist_metadata_on_load_group); | |
2559 playlist_metadata_on_load_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (playlist_metadata_on_load)); | |
2560 | |
2561 playlist_metadata_on_display = gtk_radio_button_new_with_mnemonic (NULL, _("On display")); | |
2562 gtk_box_pack_start (GTK_BOX (playlist_use_metadata_box), playlist_metadata_on_display, FALSE, FALSE, 0); | |
2563 gtk_tooltips_set_tip (tooltips, playlist_metadata_on_display, _("Load metadata on demand when displaying the file in the playlist. You may need to set \"Detect file formats on demand\" in Audio page for full benefit."), NULL); | |
2564 gtk_radio_button_set_group (GTK_RADIO_BUTTON (playlist_metadata_on_display), playlist_metadata_on_load_group); | |
2565 playlist_metadata_on_load_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (playlist_metadata_on_display)); | |
2566 | |
2567 table10 = gtk_table_new (2, 2, FALSE); | |
2568 gtk_box_pack_start (GTK_BOX (playlist_use_metadata_box), table10, TRUE, TRUE, 0); | |
2569 | |
2570 label73 = gtk_label_new (_("Auto character encoding detector for:")); | |
2571 gtk_table_attach (GTK_TABLE (table10), label73, 0, 1, 0, 1, | |
2572 (GtkAttachOptions) (0), | |
2573 (GtkAttachOptions) (0), 0, 0); | |
2574 gtk_label_set_justify (GTK_LABEL (label73), GTK_JUSTIFY_RIGHT); | |
2575 gtk_misc_set_alignment (GTK_MISC (label73), 1, 0.5); | |
2576 | |
2577 combobox1 = gtk_combo_box_new_text (); | |
2578 gtk_table_attach (GTK_TABLE (table10), combobox1, 1, 2, 0, 1, | |
2579 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), | |
2580 (GtkAttachOptions) (0), 0, 0); | |
2581 | |
2582 entry1 = gtk_entry_new (); | |
2583 gtk_table_attach (GTK_TABLE (table10), entry1, 1, 2, 1, 2, | |
2584 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), | |
2585 (GtkAttachOptions) (0), 0, 0); | |
2586 gtk_tooltips_set_tip (tooltips, entry1, _("List of character encodings used for fall back conversion of metadata. If automatic character encoding detector failed or has been disabled, encodings in this list would be treated as candidates of the encoding of metadata, and fall back conversion from these encodings to UTF-8 would be attempted."), NULL); | |
2587 | |
2588 label74 = gtk_label_new (_("Fallback character encodings:")); | |
2589 gtk_table_attach (GTK_TABLE (table10), label74, 0, 1, 1, 2, | |
2590 (GtkAttachOptions) (0), | |
2591 (GtkAttachOptions) (0), 0, 0); | |
2592 gtk_label_set_justify (GTK_LABEL (label74), GTK_JUSTIFY_RIGHT); | |
2593 gtk_misc_set_alignment (GTK_MISC (label74), 1, 0.5); | |
2594 | |
2595 alignment19 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2596 gtk_box_pack_start (GTK_BOX (vbox5), alignment19, FALSE, FALSE, 0); | |
2597 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment19), 12, 12, 0, 0); | |
2598 | |
2599 label40 = gtk_label_new (_("<b>File Dialog</b>")); | |
2600 gtk_container_add (GTK_CONTAINER (alignment19), label40); | |
2601 gtk_label_set_use_markup (GTK_LABEL (label40), TRUE); | |
2602 gtk_misc_set_alignment (GTK_MISC (label40), 0, 0.5); | |
2603 | |
2604 alignment20 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2605 gtk_box_pack_start (GTK_BOX (vbox5), alignment20, FALSE, FALSE, 0); | |
2606 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment20), 0, 0, 12, 0); | |
2607 | |
2608 refresh_file_list = gtk_check_button_new_with_mnemonic (_("Always refresh directory when opening file dialog")); | |
2609 gtk_container_add (GTK_CONTAINER (alignment20), refresh_file_list); | |
2610 gtk_tooltips_set_tip (tooltips, refresh_file_list, _("Always refresh the file dialog (this will slow opening the dialog on large directories, and Gnome VFS should handle automatically)."), NULL); | |
2611 | |
2612 alignment55 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2613 gtk_box_pack_start (GTK_BOX (vbox5), alignment55, FALSE, FALSE, 0); | |
2614 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment55), 12, 12, 0, 0); | |
2615 | |
2616 label60 = gtk_label_new (_("<b>Song Display</b>")); | |
2617 gtk_container_add (GTK_CONTAINER (alignment55), label60); | |
2618 gtk_label_set_use_markup (GTK_LABEL (label60), TRUE); | |
2619 gtk_misc_set_alignment (GTK_MISC (label60), 0, 0.5); | |
2620 | |
2621 alignment56 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2622 gtk_box_pack_start (GTK_BOX (vbox5), alignment56, FALSE, FALSE, 0); | |
2623 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment56), 0, 0, 12, 0); | |
2624 | |
2625 table6 = gtk_table_new (2, 3, FALSE); | |
2626 gtk_container_add (GTK_CONTAINER (alignment56), table6); | |
2627 gtk_table_set_row_spacings (GTK_TABLE (table6), 4); | |
2628 gtk_table_set_col_spacings (GTK_TABLE (table6), 12); | |
2629 | |
2630 titlestring_help_button = gtk_button_new (); | |
2631 gtk_table_attach (GTK_TABLE (table6), titlestring_help_button, 2, 3, 1, 2, | |
2632 (GtkAttachOptions) (0), | |
2633 (GtkAttachOptions) (0), 0, 0); | |
2634 GTK_WIDGET_UNSET_FLAGS (titlestring_help_button, GTK_CAN_FOCUS); | |
2635 gtk_tooltips_set_tip (tooltips, titlestring_help_button, _("Show information about titlestring format"), NULL); | |
2636 gtk_button_set_relief (GTK_BUTTON (titlestring_help_button), GTK_RELIEF_HALF); | |
2637 gtk_button_set_focus_on_click (GTK_BUTTON (titlestring_help_button), FALSE); | |
2638 | |
2639 image1 = gtk_image_new_from_stock ("gtk-index", GTK_ICON_SIZE_BUTTON); | |
2640 gtk_container_add (GTK_CONTAINER (titlestring_help_button), image1); | |
2641 | |
2642 titlestring_cbox = gtk_combo_box_new_text (); | |
2643 gtk_table_attach (GTK_TABLE (table6), titlestring_cbox, 1, 3, 0, 1, | |
2644 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), | |
2645 (GtkAttachOptions) (0), 0, 0); | |
2646 gtk_combo_box_append_text (GTK_COMBO_BOX (titlestring_cbox), _("TITLE")); | |
2647 gtk_combo_box_append_text (GTK_COMBO_BOX (titlestring_cbox), _("ARTIST - TITLE")); | |
2648 gtk_combo_box_append_text (GTK_COMBO_BOX (titlestring_cbox), _("ARTIST - ALBUM - TITLE")); | |
2649 gtk_combo_box_append_text (GTK_COMBO_BOX (titlestring_cbox), _("ARTIST - ALBUM - TRACK. TITLE")); | |
2650 gtk_combo_box_append_text (GTK_COMBO_BOX (titlestring_cbox), _("ARTIST [ ALBUM ] - TRACK. TITLE")); | |
2651 gtk_combo_box_append_text (GTK_COMBO_BOX (titlestring_cbox), _("ALBUM - TITLE")); | |
2652 gtk_combo_box_append_text (GTK_COMBO_BOX (titlestring_cbox), _("Custom")); | |
2653 | |
2654 titlestring_entry = gtk_entry_new (); | |
2655 gtk_table_attach (GTK_TABLE (table6), titlestring_entry, 1, 2, 1, 2, | |
2656 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), | |
2657 (GtkAttachOptions) (0), 0, 0); | |
2658 | |
2659 label62 = gtk_label_new (_("Custom string:")); | |
2660 gtk_table_attach (GTK_TABLE (table6), label62, 0, 1, 1, 2, | |
2661 (GtkAttachOptions) (0), | |
2662 (GtkAttachOptions) (0), 0, 0); | |
2663 gtk_label_set_justify (GTK_LABEL (label62), GTK_JUSTIFY_RIGHT); | |
2664 gtk_misc_set_alignment (GTK_MISC (label62), 1, 0.5); | |
2665 | |
2666 label61 = gtk_label_new (_("Title format:")); | |
2667 gtk_table_attach (GTK_TABLE (table6), label61, 0, 1, 0, 1, | |
2668 (GtkAttachOptions) (0), | |
2669 (GtkAttachOptions) (0), 0, 0); | |
2670 gtk_label_set_justify (GTK_LABEL (label61), GTK_JUSTIFY_RIGHT); | |
2671 gtk_misc_set_alignment (GTK_MISC (label61), 1, 0.5); | |
2672 | |
2673 alignment85 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2674 gtk_box_pack_start (GTK_BOX (vbox5), alignment85, FALSE, FALSE, 0); | |
2675 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment85), 12, 12, 0, 0); | |
2676 | |
2677 label84 = gtk_label_new (_("<b>Popup Information</b>")); | |
2678 gtk_container_add (GTK_CONTAINER (alignment85), label84); | |
2679 gtk_label_set_use_markup (GTK_LABEL (label84), TRUE); | |
2680 gtk_misc_set_alignment (GTK_MISC (label84), 0, 0.5); | |
2681 | |
2682 alignment86 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2683 gtk_box_pack_start (GTK_BOX (vbox5), alignment86, FALSE, FALSE, 0); | |
2684 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment86), 0, 0, 12, 0); | |
2685 | |
2686 hbox9 = gtk_hbox_new (FALSE, 12); | |
2687 gtk_container_add (GTK_CONTAINER (alignment86), hbox9); | |
2688 | |
2689 vbox34 = gtk_vbox_new (FALSE, 0); | |
2690 gtk_box_pack_start (GTK_BOX (hbox9), vbox34, TRUE, TRUE, 0); | |
2691 | |
2692 checkbutton10 = gtk_check_button_new_with_mnemonic (_("Show popup information for playlist entries")); | |
2693 gtk_box_pack_start (GTK_BOX (vbox34), checkbutton10, TRUE, FALSE, 0); | |
2694 gtk_tooltips_set_tip (tooltips, checkbutton10, _("Toggles popup information window for the pointed entry in the playlist. The window shows title of song, name of album, genre, year of publish, track number, track length, and artwork."), NULL); | |
2695 | |
2696 filepopup_for_tuple_settings_button = gtk_button_new (); | |
2697 gtk_box_pack_start (GTK_BOX (hbox9), filepopup_for_tuple_settings_button, FALSE, FALSE, 0); | |
2698 GTK_WIDGET_UNSET_FLAGS (filepopup_for_tuple_settings_button, GTK_CAN_FOCUS); | |
2699 gtk_tooltips_set_tip (tooltips, filepopup_for_tuple_settings_button, _("Edit settings for popup information"), NULL); | |
2700 gtk_button_set_relief (GTK_BUTTON (filepopup_for_tuple_settings_button), GTK_RELIEF_HALF); | |
2701 | |
2702 image8 = gtk_image_new_from_stock ("gtk-properties", GTK_ICON_SIZE_BUTTON); | |
2703 gtk_container_add (GTK_CONTAINER (filepopup_for_tuple_settings_button), image8); | |
2704 | |
2705 playlist_label = gtk_label_new (_("Playlist")); | |
2706 gtk_notebook_set_tab_label (GTK_NOTEBOOK (category_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (category_notebook), 3), playlist_label); | |
2707 | |
2708 equalizer_page_vbox = gtk_vbox_new (FALSE, 0); | |
2709 gtk_container_add (GTK_CONTAINER (category_notebook), equalizer_page_vbox); | |
2710 | |
2711 alignment28 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2712 gtk_box_pack_start (GTK_BOX (equalizer_page_vbox), alignment28, TRUE, TRUE, 0); | |
2713 | |
2714 vbox22 = gtk_vbox_new (FALSE, 0); | |
2715 gtk_container_add (GTK_CONTAINER (alignment28), vbox22); | |
2716 | |
2717 alignment30 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2718 gtk_box_pack_start (GTK_BOX (vbox22), alignment30, FALSE, FALSE, 0); | |
2719 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment30), 0, 12, 0, 0); | |
2720 | |
2721 equalizer_page_label = gtk_label_new (_("<b>Presets</b>")); | |
2722 gtk_container_add (GTK_CONTAINER (alignment30), equalizer_page_label); | |
2723 gtk_label_set_use_markup (GTK_LABEL (equalizer_page_label), TRUE); | |
2724 gtk_misc_set_alignment (GTK_MISC (equalizer_page_label), 0, 0.5); | |
2725 | |
2726 vbox23 = gtk_vbox_new (FALSE, 0); | |
2727 gtk_box_pack_start (GTK_BOX (vbox22), vbox23, TRUE, TRUE, 0); | |
2728 | |
2729 alignment33 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2730 gtk_box_pack_start (GTK_BOX (vbox23), alignment33, FALSE, FALSE, 0); | |
2731 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment33), 0, 12, 0, 0); | |
2732 | |
2733 table5 = gtk_table_new (2, 2, FALSE); | |
2734 gtk_container_add (GTK_CONTAINER (alignment33), table5); | |
2735 gtk_table_set_row_spacings (GTK_TABLE (table5), 6); | |
2736 gtk_table_set_col_spacings (GTK_TABLE (table5), 6); | |
2737 | |
2738 label58 = gtk_label_new (_("File preset extension:")); | |
2739 gtk_table_attach (GTK_TABLE (table5), label58, 0, 1, 1, 2, | |
2740 (GtkAttachOptions) (0), | |
2741 (GtkAttachOptions) (0), 0, 0); | |
2742 gtk_misc_set_alignment (GTK_MISC (label58), 0, 0.5); | |
2743 | |
2744 label57 = gtk_label_new (_("Directory preset file:")); | |
2745 gtk_table_attach (GTK_TABLE (table5), label57, 0, 1, 0, 1, | |
2746 (GtkAttachOptions) (0), | |
2747 (GtkAttachOptions) (0), 0, 0); | |
2748 gtk_misc_set_alignment (GTK_MISC (label57), 0, 0.5); | |
2749 | |
2750 eq_file_preset_entry = gtk_entry_new (); | |
2751 gtk_table_attach (GTK_TABLE (table5), eq_file_preset_entry, 1, 2, 1, 2, | |
2752 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), | |
2753 (GtkAttachOptions) (0), 0, 0); | |
2754 | |
2755 eq_dir_preset_entry = gtk_entry_new (); | |
2756 gtk_table_attach (GTK_TABLE (table5), eq_dir_preset_entry, 1, 2, 0, 1, | |
2757 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), | |
2758 (GtkAttachOptions) (0), 0, 0); | |
2759 | |
2760 equalizer_label = gtk_label_new (_("Equalizer")); | |
2761 gtk_notebook_set_tab_label (GTK_NOTEBOOK (category_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (category_notebook), 4), equalizer_label); | |
2762 | |
2763 connectivity_page_vbox = gtk_vbox_new (FALSE, 0); | |
2764 gtk_container_add (GTK_CONTAINER (category_notebook), connectivity_page_vbox); | |
2765 | |
2766 vbox29 = gtk_vbox_new (FALSE, 0); | |
2767 gtk_box_pack_start (GTK_BOX (connectivity_page_vbox), vbox29, TRUE, TRUE, 0); | |
2768 | |
2769 alignment63 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2770 gtk_box_pack_start (GTK_BOX (vbox29), alignment63, FALSE, FALSE, 0); | |
2771 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment63), 0, 12, 0, 0); | |
2772 | |
2773 connectivity_page_label = gtk_label_new (_("<b>Proxy Configuration</b>")); | |
2774 gtk_container_add (GTK_CONTAINER (alignment63), connectivity_page_label); | |
2775 gtk_label_set_use_markup (GTK_LABEL (connectivity_page_label), TRUE); | |
2776 gtk_misc_set_alignment (GTK_MISC (connectivity_page_label), 0, 0.5); | |
2777 | |
2778 alignment68 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2779 gtk_box_pack_start (GTK_BOX (vbox29), alignment68, TRUE, TRUE, 0); | |
2780 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment68), 0, 0, 12, 0); | |
2781 | |
2782 vbox30 = gtk_vbox_new (FALSE, 0); | |
2783 gtk_container_add (GTK_CONTAINER (alignment68), vbox30); | |
2784 | |
2785 alignment65 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2786 gtk_box_pack_start (GTK_BOX (vbox30), alignment65, FALSE, FALSE, 0); | |
2787 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment65), 0, 12, 0, 0); | |
2788 | |
2789 proxy_use = gtk_check_button_new_with_mnemonic (_("Enable proxy usage")); | |
2790 gtk_container_add (GTK_CONTAINER (alignment65), proxy_use); | |
2791 | |
2792 table8 = gtk_table_new (2, 2, FALSE); | |
2793 gtk_box_pack_start (GTK_BOX (vbox30), table8, FALSE, FALSE, 0); | |
2794 gtk_table_set_row_spacings (GTK_TABLE (table8), 6); | |
2795 gtk_table_set_col_spacings (GTK_TABLE (table8), 6); | |
2796 | |
2797 proxy_port = gtk_entry_new (); | |
2798 gtk_table_attach (GTK_TABLE (table8), proxy_port, 1, 2, 1, 2, | |
2799 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), | |
2800 (GtkAttachOptions) (0), 0, 0); | |
2801 | |
2802 proxy_host = gtk_entry_new (); | |
2803 gtk_table_attach (GTK_TABLE (table8), proxy_host, 1, 2, 0, 1, | |
2804 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), | |
2805 (GtkAttachOptions) (0), 0, 0); | |
2806 | |
2807 label69 = gtk_label_new (_("Proxy port:")); | |
2808 gtk_table_attach (GTK_TABLE (table8), label69, 0, 1, 1, 2, | |
2809 (GtkAttachOptions) (0), | |
2810 (GtkAttachOptions) (0), 0, 0); | |
2811 gtk_misc_set_alignment (GTK_MISC (label69), 0, 0.5); | |
2812 | |
2813 label68 = gtk_label_new (_("Proxy hostname:")); | |
2814 gtk_table_attach (GTK_TABLE (table8), label68, 0, 1, 0, 1, | |
2815 (GtkAttachOptions) (0), | |
2816 (GtkAttachOptions) (0), 0, 0); | |
2817 gtk_misc_set_alignment (GTK_MISC (label68), 0, 0); | |
2818 | |
2819 alignment67 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2820 gtk_box_pack_start (GTK_BOX (vbox30), alignment67, FALSE, FALSE, 0); | |
2821 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment67), 12, 12, 0, 0); | |
2822 | |
2823 proxy_auth = gtk_check_button_new_with_mnemonic (_("Use authentication with proxy")); | |
2824 gtk_container_add (GTK_CONTAINER (alignment67), proxy_auth); | |
2825 | |
2826 table9 = gtk_table_new (2, 2, FALSE); | |
2827 gtk_box_pack_start (GTK_BOX (vbox30), table9, FALSE, FALSE, 0); | |
2828 gtk_table_set_row_spacings (GTK_TABLE (table9), 6); | |
2829 gtk_table_set_col_spacings (GTK_TABLE (table9), 6); | |
2830 | |
2831 proxy_pass = gtk_entry_new (); | |
2832 gtk_table_attach (GTK_TABLE (table9), proxy_pass, 1, 2, 1, 2, | |
2833 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), | |
2834 (GtkAttachOptions) (0), 0, 0); | |
2835 gtk_entry_set_visibility (GTK_ENTRY (proxy_pass), FALSE); | |
2836 | |
2837 proxy_user = gtk_entry_new (); | |
2838 gtk_table_attach (GTK_TABLE (table9), proxy_user, 1, 2, 0, 1, | |
2839 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), | |
2840 (GtkAttachOptions) (0), 0, 0); | |
2841 | |
2842 label71 = gtk_label_new (_("Proxy password:")); | |
2843 gtk_table_attach (GTK_TABLE (table9), label71, 0, 1, 1, 2, | |
2844 (GtkAttachOptions) (0), | |
2845 (GtkAttachOptions) (0), 0, 0); | |
2846 gtk_misc_set_alignment (GTK_MISC (label71), 0, 0.5); | |
2847 | |
2848 label70 = gtk_label_new (_("Proxy username:")); | |
2849 gtk_table_attach (GTK_TABLE (table9), label70, 0, 1, 0, 1, | |
2850 (GtkAttachOptions) (0), | |
2851 (GtkAttachOptions) (0), 0, 0); | |
2852 gtk_misc_set_alignment (GTK_MISC (label70), 0, 0); | |
2853 | |
2854 alignment72 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2855 gtk_box_pack_start (GTK_BOX (vbox30), alignment72, FALSE, FALSE, 0); | |
2856 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment72), 6, 0, 0, 0); | |
2857 | |
2858 hbox6 = gtk_hbox_new (FALSE, 0); | |
2859 gtk_container_add (GTK_CONTAINER (alignment72), hbox6); | |
2860 | |
2861 image4 = gtk_image_new_from_stock ("gtk-dialog-warning", GTK_ICON_SIZE_BUTTON); | |
2862 gtk_box_pack_start (GTK_BOX (hbox6), image4, FALSE, FALSE, 0); | |
2863 gtk_misc_set_padding (GTK_MISC (image4), 3, 0); | |
2864 | |
2865 label75 = gtk_label_new (_("<span size=\"small\">Changing these settings will require a restart of Audacious.</span>")); | |
2866 gtk_box_pack_start (GTK_BOX (hbox6), label75, FALSE, FALSE, 0); | |
2867 gtk_label_set_use_markup (GTK_LABEL (label75), TRUE); | |
2868 | |
2869 label95 = gtk_label_new (""); | |
2870 gtk_notebook_set_tab_label (GTK_NOTEBOOK (category_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (category_notebook), 5), label95); | |
2871 | |
2872 empty_notebook_page = gtk_vbox_new (FALSE, 0); | |
2873 gtk_container_add (GTK_CONTAINER (category_notebook), empty_notebook_page); | |
2874 | |
2875 label96 = gtk_label_new (""); | |
2876 gtk_notebook_set_tab_label (GTK_NOTEBOOK (category_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (category_notebook), 6), label96); | |
2877 | |
2878 audio_scrolled_window = gtk_scrolled_window_new (NULL, NULL); | |
2879 gtk_container_add (GTK_CONTAINER (empty_notebook_page), audio_scrolled_window); | |
2880 gtk_notebook_set_tab_label_packing (GTK_NOTEBOOK (category_notebook), audio_scrolled_window, | |
2881 TRUE, TRUE, GTK_PACK_START); | |
2882 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (audio_scrolled_window), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS); | |
2883 | |
2884 audio_page_viewport = gtk_viewport_new (NULL, NULL); | |
2885 gtk_container_add (GTK_CONTAINER (audio_scrolled_window), audio_page_viewport); | |
2886 gtk_widget_set_events (audio_page_viewport, GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK); | |
2887 gtk_viewport_set_shadow_type (GTK_VIEWPORT (audio_page_viewport), GTK_SHADOW_NONE); | |
2888 | |
2889 audio_page_vbox = gtk_vbox_new (FALSE, 0); | |
2890 gtk_container_add (GTK_CONTAINER (audio_page_viewport), audio_page_vbox); | |
2891 | |
2892 alignment74 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2893 gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment74, FALSE, FALSE, 0); | |
2894 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment74), 0, 12, 0, 0); | |
2895 | |
2896 label77 = gtk_label_new (_("<b>Audio System</b>")); | |
2897 gtk_container_add (GTK_CONTAINER (alignment74), label77); | |
2898 gtk_label_set_use_markup (GTK_LABEL (label77), TRUE); | |
2899 gtk_misc_set_alignment (GTK_MISC (label77), 0, 0.5); | |
2900 | |
2901 alignment73 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2902 gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment73, FALSE, FALSE, 0); | |
2903 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment73), 0, 6, 12, 0); | |
2904 | |
2905 vbox33 = gtk_vbox_new (FALSE, 0); | |
2906 gtk_container_add (GTK_CONTAINER (alignment73), vbox33); | |
2907 | |
2908 table11 = gtk_table_new (3, 2, FALSE); | |
2909 gtk_box_pack_start (GTK_BOX (vbox33), table11, FALSE, FALSE, 0); | |
2910 gtk_table_set_row_spacings (GTK_TABLE (table11), 6); | |
2911 gtk_table_set_col_spacings (GTK_TABLE (table11), 6); | |
2912 | |
2913 image7 = gtk_image_new_from_stock ("gtk-info", GTK_ICON_SIZE_BUTTON); | |
2914 gtk_table_attach (GTK_TABLE (table11), image7, 0, 1, 2, 3, | |
2915 (GtkAttachOptions) (0), | |
2916 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); | |
2917 gtk_misc_set_alignment (GTK_MISC (image7), 1, 0); | |
2918 | |
2919 label79 = gtk_label_new (_("Buffer size:")); | |
2920 gtk_table_attach (GTK_TABLE (table11), label79, 0, 1, 1, 2, | |
2921 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), | |
2922 (GtkAttachOptions) (0), 0, 0); | |
2923 gtk_misc_set_alignment (GTK_MISC (label79), 1, 0.5); | |
2924 | |
2925 label82 = gtk_label_new (_("<span size=\"small\">This is the amount of time to prebuffer audio streams by, in milliseconds.\nIncrease this value if you are experiencing audio skipping.\nPlease note however, that high values will result in Audacious performing poorly.</span>")); | |
2926 gtk_table_attach (GTK_TABLE (table11), label82, 1, 2, 2, 3, | |
2927 (GtkAttachOptions) (0), | |
2928 (GtkAttachOptions) (0), 0, 0); | |
2929 gtk_label_set_use_markup (GTK_LABEL (label82), TRUE); | |
2930 gtk_label_set_line_wrap (GTK_LABEL (label82), TRUE); | |
2931 gtk_misc_set_alignment (GTK_MISC (label82), 0, 0.5); | |
2932 | |
2933 output_plugin_bufsize_adj = gtk_adjustment_new (0, 0, 600000, 100, 1000, 1000); | |
2934 output_plugin_bufsize = gtk_spin_button_new (GTK_ADJUSTMENT (output_plugin_bufsize_adj), 1, 0); | |
2935 gtk_table_attach (GTK_TABLE (table11), output_plugin_bufsize, 1, 2, 1, 2, | |
2936 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), | |
2937 (GtkAttachOptions) (0), 0, 0); | |
2938 | |
2939 output_plugin_cbox = gtk_combo_box_new_text (); | |
2940 gtk_table_attach (GTK_TABLE (table11), output_plugin_cbox, 1, 2, 0, 1, | |
2941 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), | |
2942 (GtkAttachOptions) (0), 0, 0); | |
2943 | |
2944 label78 = gtk_label_new (_("Current output plugin:")); | |
2945 gtk_table_attach (GTK_TABLE (table11), label78, 0, 1, 0, 1, | |
2946 (GtkAttachOptions) (0), | |
2947 (GtkAttachOptions) (0), 0, 0); | |
2948 gtk_misc_set_alignment (GTK_MISC (label78), 0, 0.5); | |
2949 | |
2950 alignment82 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2951 gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment82, FALSE, FALSE, 0); | |
2952 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment82), 0, 0, 12, 0); | |
2953 | |
2954 output_plugin_button_box = gtk_hbutton_box_new (); | |
2955 gtk_container_add (GTK_CONTAINER (alignment82), output_plugin_button_box); | |
2956 gtk_button_box_set_layout (GTK_BUTTON_BOX (output_plugin_button_box), GTK_BUTTONBOX_START); | |
2957 gtk_box_set_spacing (GTK_BOX (output_plugin_button_box), 8); | |
2958 | |
2959 output_plugin_prefs = gtk_button_new (); | |
2960 gtk_container_add (GTK_CONTAINER (output_plugin_button_box), output_plugin_prefs); | |
2961 gtk_widget_set_sensitive (output_plugin_prefs, FALSE); | |
2962 GTK_WIDGET_SET_FLAGS (output_plugin_prefs, GTK_CAN_DEFAULT); | |
2963 | |
2964 alignment76 = gtk_alignment_new (0.5, 0.5, 0, 0); | |
2965 gtk_container_add (GTK_CONTAINER (output_plugin_prefs), alignment76); | |
2966 | |
2967 hbox7 = gtk_hbox_new (FALSE, 2); | |
2968 gtk_container_add (GTK_CONTAINER (alignment76), hbox7); | |
2969 | |
2970 image5 = gtk_image_new_from_stock ("gtk-preferences", GTK_ICON_SIZE_BUTTON); | |
2971 gtk_box_pack_start (GTK_BOX (hbox7), image5, FALSE, FALSE, 0); | |
2972 | |
2973 label80 = gtk_label_new_with_mnemonic (_("Output Plugin Preferences")); | |
2974 gtk_box_pack_start (GTK_BOX (hbox7), label80, FALSE, FALSE, 0); | |
2975 | |
2976 output_plugin_info = gtk_button_new (); | |
2977 gtk_container_add (GTK_CONTAINER (output_plugin_button_box), output_plugin_info); | |
2978 gtk_widget_set_sensitive (output_plugin_info, FALSE); | |
2979 GTK_WIDGET_SET_FLAGS (output_plugin_info, GTK_CAN_DEFAULT); | |
2980 | |
2981 alignment77 = gtk_alignment_new (0.5, 0.5, 0, 0); | |
2982 gtk_container_add (GTK_CONTAINER (output_plugin_info), alignment77); | |
2983 | |
2984 hbox8 = gtk_hbox_new (FALSE, 2); | |
2985 gtk_container_add (GTK_CONTAINER (alignment77), hbox8); | |
2986 | |
2987 image6 = gtk_image_new_from_stock ("gtk-about", GTK_ICON_SIZE_BUTTON); | |
2988 gtk_box_pack_start (GTK_BOX (hbox8), image6, FALSE, FALSE, 0); | |
2989 | |
2990 label81 = gtk_label_new_with_mnemonic (_("Output Plugin Information")); | |
2991 gtk_box_pack_start (GTK_BOX (hbox8), label81, FALSE, FALSE, 0); | |
2992 | |
2993 alignment78 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
2994 gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment78, FALSE, FALSE, 0); | |
2995 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment78), 12, 12, 0, 0); | |
2996 | |
2997 label83 = gtk_label_new (_("<b>Format Detection</b>")); | |
2998 gtk_container_add (GTK_CONTAINER (alignment78), label83); | |
2999 gtk_label_set_use_markup (GTK_LABEL (label83), TRUE); | |
3000 gtk_misc_set_alignment (GTK_MISC (label83), 0, 0.5); | |
3001 | |
3002 alignment84 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
3003 gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment84, FALSE, FALSE, 0); | |
3004 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment84), 0, 0, 12, 0); | |
3005 | |
3006 audio_format_det_cb = gtk_check_button_new_with_mnemonic (_("Detect file formats on demand, instead of immediately.")); | |
3007 gtk_container_add (GTK_CONTAINER (alignment84), audio_format_det_cb); | |
3008 gtk_tooltips_set_tip (tooltips, audio_format_det_cb, _("When checked, Audacious will detect file formats on demand. This can result in a messier playlist, but delivers a major speed benefit."), NULL); | |
3009 | |
3010 alignment89 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
3011 gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment89, FALSE, FALSE, 0); | |
3012 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment89), 0, 0, 12, 0); | |
3013 | |
3014 detect_by_extension_cb = gtk_check_button_new_with_mnemonic (_("Detect file formats by extension.")); | |
3015 gtk_container_add (GTK_CONTAINER (alignment89), detect_by_extension_cb); | |
3016 gtk_tooltips_set_tip (tooltips, detect_by_extension_cb, _("When checked, Audacious will detect file formats based by extension. Only files with extensions of supported formats will be loaded."), NULL); | |
3017 | |
3018 alignment19 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
3019 gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment19, FALSE, FALSE, 0); | |
3020 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment19), 12, 12, 0, 0); | |
3021 | |
3022 label40 = gtk_label_new (_("<b>Playback</b>")); | |
3023 gtk_container_add (GTK_CONTAINER (alignment19), label40); | |
3024 gtk_label_set_use_markup (GTK_LABEL (label40), TRUE); | |
3025 gtk_misc_set_alignment (GTK_MISC (label40), 0, 0.5); | |
3026 | |
3027 alignment83 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
3028 gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment83, FALSE, FALSE, 0); | |
3029 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment83), 0, 0, 12, 0); | |
3030 | |
3031 continue_playback_on_startup = gtk_check_button_new_with_mnemonic (_("Continue playback on startup")); | |
3032 gtk_container_add (GTK_CONTAINER (alignment83), continue_playback_on_startup); | |
3033 gtk_tooltips_set_tip (tooltips, continue_playback_on_startup, _("When Audacious starts, automatically begin playing from the point where we stopped before."), NULL); | |
3034 | |
3035 alignment79 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
3036 gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment79, FALSE, FALSE, 0); | |
3037 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment79), 0, 0, 12, 0); | |
3038 | |
3039 playlist_no_advance = gtk_check_button_new_with_mnemonic (_("Don't advance in the playlist")); | |
3040 gtk_container_add (GTK_CONTAINER (alignment79), playlist_no_advance); | |
3041 gtk_tooltips_set_tip (tooltips, playlist_no_advance, _("When finished playing a song, don't automatically advance to the next."), NULL); | |
3042 | |
3043 alignment80 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
3044 gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment80, FALSE, FALSE, 0); | |
3045 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment80), 0, 0, 12, 0); | |
3046 | |
3047 pause_between_songs = gtk_check_button_new_with_mnemonic (_("Pause between songs")); | |
3048 gtk_container_add (GTK_CONTAINER (alignment80), pause_between_songs); | |
3049 | |
3050 alignment22 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
3051 gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment22, FALSE, FALSE, 0); | |
3052 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment22), 0, 0, 45, 0); | |
3053 | |
3054 pause_between_songs_box = gtk_hbox_new (FALSE, 0); | |
3055 gtk_container_add (GTK_CONTAINER (alignment22), pause_between_songs_box); | |
3056 | |
3057 label41 = gtk_label_new (_("Pause for")); | |
3058 gtk_box_pack_start (GTK_BOX (pause_between_songs_box), label41, FALSE, FALSE, 0); | |
3059 gtk_misc_set_padding (GTK_MISC (label41), 4, 0); | |
3060 | |
3061 pause_between_songs_time_adj = gtk_adjustment_new (2, 0, 100, 1, 10, 10); | |
3062 pause_between_songs_time = gtk_spin_button_new (GTK_ADJUSTMENT (pause_between_songs_time_adj), 1, 0); | |
3063 gtk_box_pack_start (GTK_BOX (pause_between_songs_box), pause_between_songs_time, FALSE, FALSE, 0); | |
3064 | |
3065 label42 = gtk_label_new (_("seconds")); | |
3066 gtk_box_pack_start (GTK_BOX (pause_between_songs_box), label42, FALSE, FALSE, 0); | |
3067 gtk_misc_set_padding (GTK_MISC (label42), 4, 0); | |
3068 | |
3069 alignment90 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
3070 gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment90, FALSE, FALSE, 0); | |
3071 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment90), 12, 12, 0, 0); | |
3072 | |
3073 label93 = gtk_label_new (_("<b>Sampling Rate Converter</b>")); | |
3074 gtk_container_add (GTK_CONTAINER (alignment90), label93); | |
3075 gtk_label_set_use_markup (GTK_LABEL (label93), TRUE); | |
3076 gtk_misc_set_alignment (GTK_MISC (label93), 0, 0.5); | |
3077 | |
3078 alignment92 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
3079 gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment92, FALSE, FALSE, 0); | |
3080 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment92), 0, 0, 12, 0); | |
3081 | |
3082 enable_src = gtk_check_button_new_with_mnemonic (_("Enable Sampling Rate Converter")); | |
3083 gtk_container_add (GTK_CONTAINER (alignment92), enable_src); | |
3084 gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (enable_src), TRUE); | |
3085 | |
3086 alignment91 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
3087 gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment91, FALSE, FALSE, 0); | |
3088 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment91), 0, 6, 12, 0); | |
3089 | |
3090 vbox36 = gtk_vbox_new (FALSE, 0); | |
3091 gtk_container_add (GTK_CONTAINER (alignment91), vbox36); | |
3092 | |
3093 table13 = gtk_table_new (3, 2, FALSE); | |
3094 gtk_box_pack_start (GTK_BOX (vbox36), table13, FALSE, FALSE, 0); | |
3095 gtk_table_set_row_spacings (GTK_TABLE (table13), 6); | |
3096 gtk_table_set_col_spacings (GTK_TABLE (table13), 6); | |
3097 | |
3098 src_converter_type = gtk_combo_box_new_text (); | |
3099 gtk_table_attach (GTK_TABLE (table13), src_converter_type, 1, 2, 1, 2, | |
3100 (GtkAttachOptions) (0), | |
3101 (GtkAttachOptions) (0), 0, 0); | |
3102 gtk_combo_box_append_text (GTK_COMBO_BOX (src_converter_type), _("Best Sinc Interpolation")); | |
3103 gtk_combo_box_append_text (GTK_COMBO_BOX (src_converter_type), _("Medium Sinc Interpolation")); | |
3104 gtk_combo_box_append_text (GTK_COMBO_BOX (src_converter_type), _("Fastest Sinc Interpolation")); | |
3105 gtk_combo_box_append_text (GTK_COMBO_BOX (src_converter_type), _("ZOH Interpolation")); | |
3106 gtk_combo_box_append_text (GTK_COMBO_BOX (src_converter_type), _("Linear Interpolation")); | |
3107 | |
3108 label94 = gtk_label_new (_("Interpolation Engine:")); | |
3109 gtk_table_attach (GTK_TABLE (table13), label94, 0, 1, 1, 2, | |
3110 (GtkAttachOptions) (0), | |
3111 (GtkAttachOptions) (0), 0, 0); | |
3112 gtk_misc_set_alignment (GTK_MISC (label94), 0, 0.5); | |
3113 | |
3114 label92 = gtk_label_new (_("<span size=\"small\">All streams will be converted to this sampling rate.\nThis should be the max supported sampling rate of\nthe sound card or output plugin.</span>")); | |
3115 gtk_table_attach (GTK_TABLE (table13), label92, 1, 2, 2, 3, | |
3116 (GtkAttachOptions) (0), | |
3117 (GtkAttachOptions) (0), 0, 0); | |
3118 gtk_label_set_use_markup (GTK_LABEL (label92), TRUE); | |
3119 gtk_label_set_line_wrap (GTK_LABEL (label92), TRUE); | |
3120 gtk_misc_set_alignment (GTK_MISC (label92), 0, 0.5); | |
3121 | |
3122 image9 = gtk_image_new_from_stock ("gtk-info", GTK_ICON_SIZE_BUTTON); | |
3123 gtk_table_attach (GTK_TABLE (table13), image9, 0, 1, 2, 3, | |
3124 (GtkAttachOptions) (0), | |
3125 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); | |
3126 gtk_misc_set_alignment (GTK_MISC (image9), 1, 0); | |
3127 | |
3128 src_rate_adj = gtk_adjustment_new (96000, 1000, 768000, 1000, 1000, 1000); | |
3129 src_rate = gtk_spin_button_new (GTK_ADJUSTMENT (src_rate_adj), 1, 0); | |
3130 gtk_table_attach (GTK_TABLE (table13), src_rate, 1, 2, 0, 1, | |
3131 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), | |
3132 (GtkAttachOptions) (0), 0, 0); | |
3133 | |
3134 label91 = gtk_label_new (_("Sampling Rate [Hz]:")); | |
3135 gtk_table_attach (GTK_TABLE (table13), label91, 0, 1, 0, 1, | |
3136 (GtkAttachOptions) (0), | |
3137 (GtkAttachOptions) (0), 0, 0); | |
3138 gtk_misc_set_alignment (GTK_MISC (label91), 0, 0.5); | |
3139 | |
3140 alignment4 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
3141 gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment4, FALSE, FALSE, 0); | |
3142 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment4), 12, 12, 0, 0); | |
3143 | |
3144 label2 = gtk_label_new (_("<b>Volume Control</b>")); | |
3145 gtk_container_add (GTK_CONTAINER (alignment4), label2); | |
3146 gtk_label_set_use_markup (GTK_LABEL (label2), TRUE); | |
3147 gtk_misc_set_alignment (GTK_MISC (label2), 0, 0.5); | |
3148 | |
3149 alignment7 = gtk_alignment_new (0.5, 0.5, 1, 1); | |
3150 gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment7, FALSE, FALSE, 0); | |
3151 gtk_alignment_set_padding (GTK_ALIGNMENT (alignment7), 0, 0, 12, 0); | |
3152 | |
3153 software_volume_control = gtk_check_button_new_with_mnemonic (_("Use software volume control")); | |
3154 gtk_container_add (GTK_CONTAINER (alignment7), software_volume_control); | |
3155 gtk_tooltips_set_tip (tooltips, software_volume_control, _("Use software volume control. This may be useful for situations where your audio system does not support controlling the playback volume."), NULL); | |
3156 | |
3157 empty_notebook_page = gtk_vbox_new (FALSE, 0); | |
3158 gtk_container_add (GTK_CONTAINER (category_notebook), empty_notebook_page); | |
3159 | |
3160 hseparator1 = gtk_hseparator_new (); | |
3161 gtk_box_pack_start (GTK_BOX (vbox), hseparator1, FALSE, FALSE, 6); | |
3162 | |
3163 hbox4 = gtk_hbox_new (FALSE, 0); | |
3164 gtk_box_pack_start (GTK_BOX (vbox), hbox4, FALSE, FALSE, 0); | |
3165 | |
3166 audversionlabel = gtk_label_new (""); | |
3167 gtk_box_pack_start (GTK_BOX (hbox4), audversionlabel, FALSE, FALSE, 0); | |
3168 gtk_label_set_use_markup (GTK_LABEL (audversionlabel), TRUE); | |
3169 | |
3170 prefswin_button_box = gtk_hbutton_box_new (); | |
3171 gtk_box_pack_start (GTK_BOX (hbox4), prefswin_button_box, TRUE, TRUE, 0); | |
3172 gtk_button_box_set_layout (GTK_BUTTON_BOX (prefswin_button_box), GTK_BUTTONBOX_END); | |
3173 gtk_box_set_spacing (GTK_BOX (prefswin_button_box), 6); | |
3174 | |
3175 reload_plugins = gtk_button_new (); | |
3176 gtk_container_add (GTK_CONTAINER (prefswin_button_box), reload_plugins); | |
3177 GTK_WIDGET_SET_FLAGS (reload_plugins, GTK_CAN_DEFAULT); | |
3178 | |
3179 alignment93 = gtk_alignment_new (0.5, 0.5, 0, 0); | |
3180 gtk_container_add (GTK_CONTAINER (reload_plugins), alignment93); | |
3181 | |
3182 hbox11 = gtk_hbox_new (FALSE, 2); | |
3183 gtk_container_add (GTK_CONTAINER (alignment93), hbox11); | |
3184 | |
3185 image10 = gtk_image_new_from_stock ("gtk-refresh", GTK_ICON_SIZE_BUTTON); | |
3186 gtk_box_pack_start (GTK_BOX (hbox11), image10, FALSE, FALSE, 0); | |
3187 | |
3188 label102 = gtk_label_new_with_mnemonic (_("Reload Plugins")); | |
3189 gtk_box_pack_start (GTK_BOX (hbox11), label102, FALSE, FALSE, 0); | |
3190 | |
3191 close = gtk_button_new_from_stock ("gtk-close"); | |
3192 gtk_container_add (GTK_CONTAINER (prefswin_button_box), close); | |
3193 GTK_WIDGET_SET_FLAGS (close, GTK_CAN_DEFAULT); | |
3194 gtk_widget_add_accelerator (close, "clicked", accel_group, | |
3195 GDK_Escape, (GdkModifierType) 0, | |
3196 GTK_ACCEL_VISIBLE); | |
3197 | |
3198 | |
3199 gtk_label_set_mnemonic_widget (GTK_LABEL (input_plugin_list_label), category_notebook); | |
3200 gtk_label_set_mnemonic_widget (GTK_LABEL (label11), category_notebook); | |
3201 gtk_label_set_mnemonic_widget (GTK_LABEL (label53), category_notebook); | |
3202 gtk_label_set_mnemonic_widget (GTK_LABEL (label64), category_notebook); | |
3203 gtk_label_set_mnemonic_widget (GTK_LABEL (label103), category_notebook); | |
3204 gtk_label_set_mnemonic_widget (GTK_LABEL (label104), category_notebook); | |
3205 gtk_label_set_mnemonic_widget (GTK_LABEL (label105), fontbutton1); | |
3206 gtk_label_set_mnemonic_widget (GTK_LABEL (label106), fontbutton2); | |
3207 gtk_label_set_mnemonic_widget (GTK_LABEL (label107), category_notebook); | |
3208 | |
3209 gtk_window_add_accel_group (GTK_WINDOW (prefswin), accel_group); | |
3210 | |
3211 /* connect signals */ | |
3212 g_signal_connect(G_OBJECT(prefswin), "delete_event", | |
3213 G_CALLBACK(gtk_widget_hide_on_delete), | |
3214 NULL); | |
3215 g_signal_connect_after(G_OBJECT(input_plugin_view), "realize", | |
3216 G_CALLBACK(on_input_plugin_view_realize), | |
3217 NULL); | |
3218 g_signal_connect_after(G_OBJECT(general_plugin_view), "realize", | |
3219 G_CALLBACK(on_general_plugin_view_realize), | |
3220 NULL); | |
3221 g_signal_connect_after(G_OBJECT(vis_plugin_view), "realize", | |
3222 G_CALLBACK(on_vis_plugin_view_realize), | |
3223 NULL); | |
3224 g_signal_connect_after(G_OBJECT(effect_plugin_view), "realize", | |
3225 G_CALLBACK(on_effect_plugin_view_realize), | |
3226 NULL); | |
3227 g_signal_connect(G_OBJECT(colorspace_button), "clicked", | |
3228 G_CALLBACK(on_colorize_button_clicked), | |
3229 NULL); | |
3230 g_signal_connect_swapped(G_OBJECT(skin_refresh_button), "clicked", | |
3231 G_CALLBACK(on_skin_refresh_button_clicked), | |
3232 prefswin); | |
3233 g_signal_connect_after(G_OBJECT(skin_view), "realize", | |
3234 G_CALLBACK(on_skin_view_realize), | |
3235 NULL); | |
3236 g_signal_connect_after(G_OBJECT(fontbutton1), "realize", | |
3237 G_CALLBACK(on_mainwin_font_button_realize), | |
3238 NULL); | |
3239 g_signal_connect(G_OBJECT(fontbutton1), "font_set", | |
3240 G_CALLBACK(on_mainwin_font_button_font_set), | |
3241 NULL); | |
3242 g_signal_connect_after(G_OBJECT(fontbutton2), "realize", | |
3243 G_CALLBACK(on_playlist_font_button_realize), | |
3244 NULL); | |
3245 g_signal_connect(G_OBJECT(fontbutton2), "font_set", | |
3246 G_CALLBACK(on_playlist_font_button_font_set), | |
3247 NULL); | |
3248 g_signal_connect(G_OBJECT(checkbutton11), "toggled", | |
3249 G_CALLBACK(on_use_bitmap_fonts_toggled), | |
3250 NULL); | |
3251 g_signal_connect_after(G_OBJECT(checkbutton11), "realize", | |
3252 G_CALLBACK(on_use_bitmap_fonts_realize), | |
3253 NULL); | |
4002
d203c51d94bb
you might like it or not, beginning of making preferences more friendly
Tomasz Mon <desowin@gmail.com>
parents:
4001
diff
changeset
|
3254 |
3993 | 3255 g_signal_connect(G_OBJECT(mouse_wheel_volume), "value_changed", |
3256 G_CALLBACK(on_mouse_wheel_volume_changed), | |
3257 NULL); | |
3258 g_signal_connect_after(G_OBJECT(mouse_wheel_volume), "realize", | |
3259 G_CALLBACK(on_mouse_wheel_volume_realize), | |
3260 NULL); | |
3261 g_signal_connect(G_OBJECT(mouse_wheel_scroll_pl), "value_changed", | |
3262 G_CALLBACK(on_mouse_wheel_scroll_pl_changed), | |
3263 NULL); | |
3264 g_signal_connect_after(G_OBJECT(mouse_wheel_scroll_pl), "realize", | |
3265 G_CALLBACK(on_mouse_wheel_scroll_pl_realize), | |
3266 NULL); | |
3267 g_signal_connect(G_OBJECT(playlist_convert_underscore), "toggled", | |
3268 G_CALLBACK(on_playlist_convert_underscore_toggled), | |
3269 NULL); | |
3270 g_signal_connect_after(G_OBJECT(playlist_convert_underscore), "realize", | |
3271 G_CALLBACK(on_playlist_convert_underscore_realize), | |
3272 NULL); | |
3273 g_signal_connect(G_OBJECT(playlist_convert_twenty), "toggled", | |
3274 G_CALLBACK(on_playlist_convert_twenty_toggled), | |
3275 NULL); | |
3276 g_signal_connect_after(G_OBJECT(playlist_convert_twenty), "realize", | |
3277 G_CALLBACK(on_playlist_convert_twenty_realize), | |
3278 NULL); | |
3279 g_signal_connect(G_OBJECT(playlist_convert_slash), "toggled", | |
3280 G_CALLBACK(on_playlist_convert_slash_toggled), | |
3281 NULL); | |
3282 g_signal_connect_after(G_OBJECT(playlist_convert_slash), "realize", | |
3283 G_CALLBACK(on_playlist_convert_slash_realize), | |
3284 NULL); | |
3285 g_signal_connect(G_OBJECT(playlist_metadata_on_load), "toggled", | |
3286 G_CALLBACK(on_pl_metadata_on_load_toggled), | |
3287 NULL); | |
3288 g_signal_connect_after(G_OBJECT(playlist_metadata_on_load), "realize", | |
3289 G_CALLBACK(on_pl_metadata_on_load_realize), | |
3290 NULL); | |
3291 g_signal_connect(G_OBJECT(playlist_metadata_on_display), "toggled", | |
3292 G_CALLBACK(on_pl_metadata_on_display_toggled), | |
3293 NULL); | |
3294 g_signal_connect_after(G_OBJECT(playlist_metadata_on_display), "realize", | |
3295 G_CALLBACK(on_pl_metadata_on_display_realize), | |
3296 NULL); | |
3297 g_signal_connect_after(G_OBJECT(combobox1), "realize", | |
3298 G_CALLBACK(on_chardet_detector_cbox_realize), | |
3299 NULL); | |
3300 g_signal_connect(G_OBJECT(entry1), "changed", | |
3301 G_CALLBACK(on_chardet_fallback_changed), | |
3302 NULL); | |
3303 g_signal_connect_after(G_OBJECT(entry1), "realize", | |
3304 G_CALLBACK(on_chardet_fallback_realize), | |
3305 NULL); | |
3306 g_signal_connect(G_OBJECT(refresh_file_list), "toggled", | |
3307 G_CALLBACK(on_refresh_file_list_toggled), | |
3308 NULL); | |
3309 g_signal_connect_after(G_OBJECT(refresh_file_list), "realize", | |
3310 G_CALLBACK(on_refresh_file_list_realize), | |
3311 NULL); | |
3312 g_signal_connect(G_OBJECT(titlestring_entry), "changed", | |
3313 G_CALLBACK(on_titlestring_entry_changed), | |
3314 NULL); | |
3315 g_signal_connect_after(G_OBJECT(titlestring_entry), "realize", | |
3316 G_CALLBACK(on_titlestring_entry_realize), | |
3317 NULL); | |
3318 g_signal_connect(G_OBJECT(checkbutton10), "toggled", | |
3319 G_CALLBACK(on_show_filepopup_for_tuple_toggled), | |
3320 NULL); | |
3321 g_signal_connect_after(G_OBJECT(checkbutton10), "realize", | |
3322 G_CALLBACK(on_show_filepopup_for_tuple_realize), | |
3323 NULL); | |
3324 g_signal_connect(G_OBJECT(filepopup_for_tuple_settings_button), "clicked", | |
3325 G_CALLBACK(on_filepopup_for_tuple_settings_clicked), | |
3326 NULL); | |
3327 g_signal_connect(G_OBJECT(eq_file_preset_entry), "changed", | |
3328 G_CALLBACK(on_eq_file_preset_entry_changed), | |
3329 NULL); | |
3330 g_signal_connect(G_OBJECT(eq_file_preset_entry), "realize", | |
3331 G_CALLBACK(on_eq_file_preset_entry_realize), | |
3332 NULL); | |
3333 g_signal_connect(G_OBJECT(eq_dir_preset_entry), "changed", | |
3334 G_CALLBACK(on_eq_dir_preset_entry_changed), | |
3335 NULL); | |
3336 g_signal_connect(G_OBJECT(eq_dir_preset_entry), "realize", | |
3337 G_CALLBACK(on_eq_dir_preset_entry_realize), | |
3338 NULL); | |
3339 g_signal_connect(G_OBJECT(proxy_use), "toggled", | |
4000
a0bb67450552
more code duplication removal
Tomasz Mon <desowin@gmail.com>
parents:
3999
diff
changeset
|
3340 G_CALLBACK(on_proxy_button_toggled), |
a0bb67450552
more code duplication removal
Tomasz Mon <desowin@gmail.com>
parents:
3999
diff
changeset
|
3341 "use_proxy"); |
3993 | 3342 g_signal_connect(G_OBJECT(proxy_use), "realize", |
4000
a0bb67450552
more code duplication removal
Tomasz Mon <desowin@gmail.com>
parents:
3999
diff
changeset
|
3343 G_CALLBACK(on_proxy_button_realize), |
a0bb67450552
more code duplication removal
Tomasz Mon <desowin@gmail.com>
parents:
3999
diff
changeset
|
3344 "use_proxy"); |
3993 | 3345 g_signal_connect(G_OBJECT(proxy_port), "changed", |
3999
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
3346 G_CALLBACK(on_proxy_entry_changed), |
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
3347 "proxy_port"); |
3993 | 3348 g_signal_connect(G_OBJECT(proxy_port), "realize", |
3999
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
3349 G_CALLBACK(on_proxy_entry_realize), |
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
3350 "proxy_port"); |
3993 | 3351 g_signal_connect(G_OBJECT(proxy_host), "changed", |
3999
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
3352 G_CALLBACK(on_proxy_entry_changed), |
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
3353 "proxy_host"); |
3993 | 3354 g_signal_connect(G_OBJECT(proxy_host), "realize", |
3999
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
3355 G_CALLBACK(on_proxy_entry_realize), |
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
3356 "proxy_host"); |
3993 | 3357 g_signal_connect(G_OBJECT(proxy_auth), "toggled", |
4000
a0bb67450552
more code duplication removal
Tomasz Mon <desowin@gmail.com>
parents:
3999
diff
changeset
|
3358 G_CALLBACK(on_proxy_button_toggled), |
a0bb67450552
more code duplication removal
Tomasz Mon <desowin@gmail.com>
parents:
3999
diff
changeset
|
3359 "proxy_use_auth"); |
3993 | 3360 g_signal_connect(G_OBJECT(proxy_auth), "realize", |
4000
a0bb67450552
more code duplication removal
Tomasz Mon <desowin@gmail.com>
parents:
3999
diff
changeset
|
3361 G_CALLBACK(on_proxy_button_realize), |
a0bb67450552
more code duplication removal
Tomasz Mon <desowin@gmail.com>
parents:
3999
diff
changeset
|
3362 "proxy_use_auth"); |
3993 | 3363 g_signal_connect(G_OBJECT(proxy_pass), "changed", |
3999
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
3364 G_CALLBACK(on_proxy_entry_changed), |
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
3365 "proxy_pass"); |
3993 | 3366 g_signal_connect(G_OBJECT(proxy_pass), "realize", |
3999
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
3367 G_CALLBACK(on_proxy_entry_realize), |
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
3368 "proxy_pass"); |
3993 | 3369 g_signal_connect(G_OBJECT(proxy_user), "changed", |
3999
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
3370 G_CALLBACK(on_proxy_entry_changed), |
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
3371 "proxy_user"); |
3993 | 3372 g_signal_connect(G_OBJECT(proxy_user), "realize", |
3999
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
3373 G_CALLBACK(on_proxy_entry_realize), |
fa3d61ea0a6e
remove some duplicated code
Tomasz Mon <desowin@gmail.com>
parents:
3995
diff
changeset
|
3374 "proxy_user"); |
3993 | 3375 g_signal_connect(G_OBJECT(output_plugin_bufsize), "value_changed", |
3376 G_CALLBACK(on_output_plugin_bufsize_value_changed), | |
3377 NULL); | |
3378 g_signal_connect_after(G_OBJECT(output_plugin_bufsize), "realize", | |
3379 G_CALLBACK(on_output_plugin_bufsize_realize), | |
3380 NULL); | |
3381 g_signal_connect_after(G_OBJECT(output_plugin_cbox), "realize", | |
3382 G_CALLBACK(on_output_plugin_cbox_realize), | |
3383 NULL); | |
3384 g_signal_connect(G_OBJECT(audio_format_det_cb), "toggled", | |
3385 G_CALLBACK(on_audio_format_det_cb_toggled), | |
3386 NULL); | |
3387 g_signal_connect(G_OBJECT(audio_format_det_cb), "realize", | |
3388 G_CALLBACK(on_audio_format_det_cb_realize), | |
3389 NULL); | |
3390 g_signal_connect(G_OBJECT(detect_by_extension_cb), "toggled", | |
3391 G_CALLBACK(on_detect_by_extension_cb_toggled), | |
3392 NULL); | |
3393 g_signal_connect(G_OBJECT(detect_by_extension_cb), "realize", | |
3394 G_CALLBACK(on_detect_by_extension_cb_realize), | |
3395 NULL); | |
3396 g_signal_connect(G_OBJECT(continue_playback_on_startup), "toggled", | |
3397 G_CALLBACK(on_continue_playback_on_startup_toggled), | |
3398 NULL); | |
3399 g_signal_connect(G_OBJECT(continue_playback_on_startup), "realize", | |
3400 G_CALLBACK(on_continue_playback_on_startup_realize), | |
3401 NULL); | |
3402 g_signal_connect(G_OBJECT(playlist_no_advance), "toggled", | |
3403 G_CALLBACK(on_playlist_no_advance_toggled), | |
3404 NULL); | |
3405 g_signal_connect_after(G_OBJECT(playlist_no_advance), "realize", | |
3406 G_CALLBACK(on_playlist_no_advance_realize), | |
3407 NULL); | |
3408 g_signal_connect(G_OBJECT(pause_between_songs_time), "value_changed", | |
3409 G_CALLBACK(on_pause_between_songs_time_changed), | |
3410 NULL); | |
3411 g_signal_connect_after(G_OBJECT(pause_between_songs_time), "realize", | |
3412 G_CALLBACK(on_pause_between_songs_time_realize), | |
3413 NULL); | |
3414 g_signal_connect(G_OBJECT(enable_src), "toggled", | |
3415 G_CALLBACK(on_enable_src_toggled), | |
3416 NULL); | |
3417 g_signal_connect(G_OBJECT(enable_src), "realize", | |
3418 G_CALLBACK(on_enable_src_realize), | |
3419 NULL); | |
3420 g_signal_connect(G_OBJECT(src_converter_type), "changed", | |
3421 G_CALLBACK(on_src_converter_type_changed), | |
3422 NULL); | |
3423 g_signal_connect_after(G_OBJECT(src_converter_type), "realize", | |
3424 G_CALLBACK(on_src_converter_type_realize), | |
3425 NULL); | |
3426 g_signal_connect(G_OBJECT(src_rate), "value_changed", | |
3427 G_CALLBACK(on_src_rate_value_changed), | |
3428 NULL); | |
3429 g_signal_connect(G_OBJECT(src_rate), "realize", | |
3430 G_CALLBACK(on_src_rate_realize), | |
3431 NULL); | |
3432 g_signal_connect(G_OBJECT(software_volume_control), "toggled", | |
3433 G_CALLBACK(on_software_volume_control_toggled), | |
3434 NULL); | |
3435 g_signal_connect(G_OBJECT(software_volume_control), "realize", | |
3436 G_CALLBACK(on_software_volume_control_realize), | |
3437 NULL); | |
3438 g_signal_connect(G_OBJECT(reload_plugins), "clicked", | |
3439 G_CALLBACK(on_reload_plugins_clicked), | |
3440 NULL); | |
3441 g_signal_connect_swapped(G_OBJECT(close), "clicked", | |
3442 G_CALLBACK(gtk_widget_hide), | |
3443 GTK_OBJECT (prefswin)); | |
2313 | 3444 |
3445 /* create category view */ | |
3993 | 3446 g_signal_connect_after(G_OBJECT(category_treeview), "realize", |
3447 G_CALLBACK(on_category_treeview_realize), | |
3448 category_notebook); | |
2313 | 3449 |
3450 /* plugin->input page */ | |
3993 | 3451 g_object_set_data(G_OBJECT(input_plugin_view), "plugin_type" , GINT_TO_POINTER(PLUGIN_VIEW_TYPE_INPUT)); |
3452 g_signal_connect(G_OBJECT(input_plugin_view), "row-activated", | |
3356 | 3453 G_CALLBACK(plugin_treeview_open_prefs), |
3353
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
3454 NULL); |
3993 | 3455 g_signal_connect(G_OBJECT(input_plugin_view), "cursor-changed", |
3355
31ecb89e871c
introduce plugin_treeview_enable_prefs and plugin_treeview_enable_info
Tomasz Mon <desowin@gmail.com>
parents:
3353
diff
changeset
|
3456 G_CALLBACK(plugin_treeview_enable_prefs), |
3993 | 3457 input_plugin_prefs); |
3458 | |
3459 g_signal_connect_swapped(G_OBJECT(input_plugin_prefs), "clicked", | |
3356 | 3460 G_CALLBACK(plugin_treeview_open_prefs), |
3993 | 3461 input_plugin_view); |
3462 | |
3463 g_signal_connect(G_OBJECT(input_plugin_view), "cursor-changed", | |
3355
31ecb89e871c
introduce plugin_treeview_enable_prefs and plugin_treeview_enable_info
Tomasz Mon <desowin@gmail.com>
parents:
3353
diff
changeset
|
3464 G_CALLBACK(plugin_treeview_enable_info), |
3993 | 3465 input_plugin_info); |
3466 g_signal_connect_swapped(G_OBJECT(input_plugin_info), "clicked", | |
3357 | 3467 G_CALLBACK(plugin_treeview_open_info), |
3993 | 3468 input_plugin_view); |
2313 | 3469 |
3470 /* plugin->output page */ | |
3471 | |
3993 | 3472 g_signal_connect(G_OBJECT(output_plugin_cbox), "changed", |
2313 | 3473 G_CALLBACK(output_plugin_enable_prefs), |
3993 | 3474 output_plugin_prefs); |
3475 g_signal_connect_swapped(G_OBJECT(output_plugin_prefs), "clicked", | |
2313 | 3476 G_CALLBACK(output_plugin_open_prefs), |
3993 | 3477 output_plugin_cbox); |
3478 | |
3479 g_signal_connect(G_OBJECT(output_plugin_cbox), "changed", | |
2313 | 3480 G_CALLBACK(output_plugin_enable_info), |
3993 | 3481 output_plugin_info); |
3482 g_signal_connect_swapped(G_OBJECT(output_plugin_info), "clicked", | |
2313 | 3483 G_CALLBACK(output_plugin_open_info), |
3993 | 3484 output_plugin_cbox); |
2313 | 3485 |
3486 /* plugin->general page */ | |
3487 | |
3993 | 3488 g_object_set_data(G_OBJECT(general_plugin_view), "plugin_type" , GINT_TO_POINTER(PLUGIN_VIEW_TYPE_GENERAL)); |
3489 g_signal_connect(G_OBJECT(general_plugin_view), "row-activated", | |
3356 | 3490 G_CALLBACK(plugin_treeview_open_prefs), |
3353
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
3491 NULL); |
2313 | 3492 |
3993 | 3493 g_signal_connect(G_OBJECT(general_plugin_view), "cursor-changed", |
3355
31ecb89e871c
introduce plugin_treeview_enable_prefs and plugin_treeview_enable_info
Tomasz Mon <desowin@gmail.com>
parents:
3353
diff
changeset
|
3494 G_CALLBACK(plugin_treeview_enable_prefs), |
3993 | 3495 general_plugin_prefs); |
3496 | |
3497 g_signal_connect_swapped(G_OBJECT(general_plugin_prefs), "clicked", | |
3356 | 3498 G_CALLBACK(plugin_treeview_open_prefs), |
3993 | 3499 general_plugin_view); |
3500 | |
3501 g_signal_connect(G_OBJECT(general_plugin_view), "cursor-changed", | |
3355
31ecb89e871c
introduce plugin_treeview_enable_prefs and plugin_treeview_enable_info
Tomasz Mon <desowin@gmail.com>
parents:
3353
diff
changeset
|
3502 G_CALLBACK(plugin_treeview_enable_info), |
3993 | 3503 general_plugin_info); |
3504 g_signal_connect_swapped(G_OBJECT(general_plugin_info), "clicked", | |
3357 | 3505 G_CALLBACK(plugin_treeview_open_info), |
3993 | 3506 general_plugin_view); |
2313 | 3507 |
3508 | |
3509 /* plugin->vis page */ | |
3510 | |
3993 | 3511 g_object_set_data(G_OBJECT(vis_plugin_view), "plugin_type" , GINT_TO_POINTER(PLUGIN_VIEW_TYPE_VIS)); |
3512 g_signal_connect(G_OBJECT(vis_plugin_view), "row-activated", | |
3356 | 3513 G_CALLBACK(plugin_treeview_open_prefs), |
3353
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
3514 NULL); |
3993 | 3515 g_signal_connect_swapped(G_OBJECT(vis_plugin_prefs), "clicked", |
3356 | 3516 G_CALLBACK(plugin_treeview_open_prefs), |
3993 | 3517 vis_plugin_view); |
3518 g_signal_connect(G_OBJECT(vis_plugin_view), "cursor-changed", | |
3519 G_CALLBACK(plugin_treeview_enable_prefs), vis_plugin_prefs); | |
3520 | |
3521 g_signal_connect(G_OBJECT(vis_plugin_view), "cursor-changed", | |
3522 G_CALLBACK(plugin_treeview_enable_info), vis_plugin_info); | |
3523 g_signal_connect_swapped(G_OBJECT(vis_plugin_info), "clicked", | |
3357 | 3524 G_CALLBACK(plugin_treeview_open_info), |
3993 | 3525 vis_plugin_view); |
2313 | 3526 |
3527 | |
3528 /* plugin->effects page */ | |
3529 | |
3993 | 3530 g_object_set_data(G_OBJECT(effect_plugin_view), "plugin_type" , GINT_TO_POINTER(PLUGIN_VIEW_TYPE_EFFECT)); |
3531 g_signal_connect(G_OBJECT(effect_plugin_view), "row-activated", | |
3356 | 3532 G_CALLBACK(plugin_treeview_open_prefs), |
3353
1cd5fb04e05b
double click on plugin row opens plugin config (if available)
Tomasz Mon <desowin@gmail.com>
parents:
3251
diff
changeset
|
3533 NULL); |
3993 | 3534 g_signal_connect_swapped(G_OBJECT(effect_plugin_prefs), "clicked", |
3356 | 3535 G_CALLBACK(plugin_treeview_open_prefs), |
3993 | 3536 effect_plugin_view); |
3537 g_signal_connect(G_OBJECT(effect_plugin_view), "cursor-changed", | |
3538 G_CALLBACK(plugin_treeview_enable_prefs), effect_plugin_prefs); | |
3539 | |
3540 g_signal_connect(G_OBJECT(effect_plugin_view), "cursor-changed", | |
3541 G_CALLBACK(plugin_treeview_enable_info), effect_plugin_info); | |
3542 g_signal_connect_swapped(G_OBJECT(effect_plugin_info), "clicked", | |
3357 | 3543 G_CALLBACK(plugin_treeview_open_info), |
3993 | 3544 effect_plugin_view); |
2313 | 3545 |
3546 /* playlist page */ | |
3547 | |
3993 | 3548 g_signal_connect_after(G_OBJECT(pause_between_songs), "realize", |
2313 | 3549 G_CALLBACK(on_pause_between_songs_realize), |
3993 | 3550 pause_between_songs_box); |
3551 g_signal_connect(G_OBJECT(pause_between_songs), "toggled", | |
2313 | 3552 G_CALLBACK(on_pause_between_songs_toggled), |
3993 | 3553 pause_between_songs_box); |
3554 | |
3555 g_signal_connect_after(G_OBJECT(playlist_use_metadata), "realize", | |
2313 | 3556 G_CALLBACK(on_use_pl_metadata_realize), |
3993 | 3557 playlist_use_metadata_box); |
3558 g_signal_connect(G_OBJECT(playlist_use_metadata), "toggled", | |
2313 | 3559 G_CALLBACK(on_use_pl_metadata_toggled), |
3993 | 3560 playlist_use_metadata_box); |
3561 | |
3562 g_signal_connect(skin_view, "drag-data-received", | |
2313 | 3563 G_CALLBACK(on_skin_view_drag_data_received), |
3564 NULL); | |
3993 | 3565 bmp_drag_dest_set(skin_view); |
2313 | 3566 |
3567 g_signal_connect(mainwin, "drag-data-received", | |
3568 G_CALLBACK(mainwin_drag_data_received), | |
3993 | 3569 skin_view); |
3570 | |
3571 g_signal_connect(skin_refresh_button, "clicked", | |
2313 | 3572 G_CALLBACK(on_skin_refresh_button_clicked), |
3573 NULL); | |
3574 | |
3575 g_signal_connect(mainwin, "drag-data-received", | |
2975 | 3576 G_CALLBACK(mainwin_drag_data_received), |
3993 | 3577 fontbutton2); |
3578 | |
3579 g_signal_connect(titlestring_cbox, "realize", | |
2313 | 3580 G_CALLBACK(on_titlestring_cbox_realize), |
3993 | 3581 titlestring_entry); |
3582 g_signal_connect(titlestring_cbox, "changed", | |
2313 | 3583 G_CALLBACK(on_titlestring_cbox_changed), |
3993 | 3584 titlestring_entry); |
2313 | 3585 |
3586 /* FIXME: move this into a function */ | |
3587 /* create tag menu */ | |
3588 titlestring_tag_menu = gtk_menu_new(); | |
3589 for(i = 0; i < n_title_field_tags; i++) { | |
3991
d6ac99c2be1d
destroy colorize settings upon closing
mf0102 <0102@gmx.at>
parents:
3990
diff
changeset
|
3590 menu_item = gtk_menu_item_new_with_label(_(title_field_tags[i].name)); |
d6ac99c2be1d
destroy colorize settings upon closing
mf0102 <0102@gmx.at>
parents:
3990
diff
changeset
|
3591 gtk_menu_shell_append(GTK_MENU_SHELL(titlestring_tag_menu), menu_item); |
2313 | 3592 g_signal_connect(menu_item, "activate", |
3593 G_CALLBACK(titlestring_tag_menu_callback), | |
3594 GINT_TO_POINTER(i)); | |
3595 }; | |
3596 gtk_widget_show_all(titlestring_tag_menu); | |
3993 | 3597 |
3598 g_signal_connect(titlestring_cbox, "changed", | |
2313 | 3599 G_CALLBACK(on_titlestring_cbox_changed), |
3993 | 3600 titlestring_help_button); |
3601 g_signal_connect(titlestring_help_button, "clicked", | |
2313 | 3602 G_CALLBACK(on_titlestring_help_button_clicked), |
3603 titlestring_tag_menu); | |
3604 | |
3605 /* audacious version label */ | |
2467 | 3606 |
2468
5206f4ef02f7
[svn] - the svn_stamp is no longer an svn revision, but a serial number
nenolod
parents:
2467
diff
changeset
|
3607 aud_version_string = g_strdup_printf("<span size='small'>%s (%s) (%s@%s)</span>", |
3991
d6ac99c2be1d
destroy colorize settings upon closing
mf0102 <0102@gmx.at>
parents:
3990
diff
changeset
|
3608 "Audacious " PACKAGE_VERSION , |
d6ac99c2be1d
destroy colorize settings upon closing
mf0102 <0102@gmx.at>
parents:
3990
diff
changeset
|
3609 svn_stamp , |
d6ac99c2be1d
destroy colorize settings upon closing
mf0102 <0102@gmx.at>
parents:
3990
diff
changeset
|
3610 g_get_user_name() , g_get_host_name() ); |
2313 | 3611 |
3993 | 3612 gtk_label_set_markup( GTK_LABEL(audversionlabel) , aud_version_string ); |
2467 | 3613 g_free(aud_version_string); |
3993 | 3614 gtk_widget_show_all(vbox); |
2313 | 3615 |
3990
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
3616 /* Create window for filepopup settings */ |
14c2d0729563
filepopup_settings is no longer in prefswin.glade
Tomasz Mon <desowin@gmail.com>
parents:
3989
diff
changeset
|
3617 create_filepopup_settings(); |
2313 | 3618 } |
3619 | |
3620 void | |
3621 show_prefs_window(void) | |
3622 { | |
2628
85acf3f98ed0
[svn] - prevent skin list overlap when it's populated for the first time and user quickly switchs to other tabs in the prefswin
giacomo
parents:
2623
diff
changeset
|
3623 static gboolean skinlist_filled = FALSE; |
85acf3f98ed0
[svn] - prevent skin list overlap when it's populated for the first time and user quickly switchs to other tabs in the prefswin
giacomo
parents:
2623
diff
changeset
|
3624 |
2635 | 3625 gtk_window_present(GTK_WINDOW(prefswin)); /* show or raise prefs window */ |
2628
85acf3f98ed0
[svn] - prevent skin list overlap when it's populated for the first time and user quickly switchs to other tabs in the prefswin
giacomo
parents:
2623
diff
changeset
|
3626 |
85acf3f98ed0
[svn] - prevent skin list overlap when it's populated for the first time and user quickly switchs to other tabs in the prefswin
giacomo
parents:
2623
diff
changeset
|
3627 if ( !skinlist_filled ) |
85acf3f98ed0
[svn] - prevent skin list overlap when it's populated for the first time and user quickly switchs to other tabs in the prefswin
giacomo
parents:
2623
diff
changeset
|
3628 { |
3993 | 3629 skin_view_update(GTK_TREE_VIEW(skin_view), GTK_WIDGET(skin_refresh_button)); |
2628
85acf3f98ed0
[svn] - prevent skin list overlap when it's populated for the first time and user quickly switchs to other tabs in the prefswin
giacomo
parents:
2623
diff
changeset
|
3630 skinlist_filled = TRUE; |
85acf3f98ed0
[svn] - prevent skin list overlap when it's populated for the first time and user quickly switchs to other tabs in the prefswin
giacomo
parents:
2623
diff
changeset
|
3631 } |
2313 | 3632 } |
3633 | |
3917 | 3634 void |
3635 hide_prefs_window(void) | |
3636 { | |
3637 g_return_if_fail(prefswin); | |
3638 gtk_widget_hide(GTK_WIDGET(prefswin)); | |
3639 } | |
3640 | |
2313 | 3641 static void |
3642 prefswin_page_queue_new(GtkWidget *container, gchar *name, gchar *imgurl) | |
3643 { | |
3644 CategoryQueueEntry *ent = g_malloc0(sizeof(CategoryQueueEntry)); | |
3645 | |
3646 ent->container = container; | |
3647 ent->pg_name = name; | |
3648 ent->img_url = imgurl; | |
3649 | |
3650 if (category_queue) | |
3651 ent->next = category_queue; | |
3652 | |
3653 category_queue = ent; | |
3654 } | |
3655 | |
3656 static void | |
3657 prefswin_page_queue_destroy(CategoryQueueEntry *ent) | |
3658 { | |
3659 category_queue = ent->next; | |
3660 g_free(ent); | |
3661 } | |
3662 | |
3663 /* | |
3664 * Public APIs for adding new pages to the prefs window. | |
3665 * | |
3666 * Basically, the concept here is that third party components can register themselves in the root | |
3667 * preferences window. | |
3668 * | |
3669 * From a usability standpoint this makes the application look more "united", instead of cluttered | |
3670 * and malorganised. Hopefully this option will be used further in the future. | |
3671 * | |
3672 * - nenolod | |
3673 */ | |
3674 gint | |
3675 prefswin_page_new(GtkWidget *container, gchar *name, gchar *imgurl) | |
3676 { | |
3677 GtkTreeModel *model; | |
3678 GtkTreeIter iter; | |
3679 GdkPixbuf *img = NULL; | |
3680 GtkTreeView *treeview = GTK_TREE_VIEW(category_treeview); | |
3681 gint id; | |
3682 | |
3683 if (treeview == NULL || category_notebook == NULL) | |
3684 { | |
3685 prefswin_page_queue_new(container, name, imgurl); | |
3686 return -1; | |
3687 } | |
3688 | |
3689 model = gtk_tree_view_get_model(treeview); | |
3690 | |
3691 if (model == NULL) | |
3692 { | |
3693 prefswin_page_queue_new(container, name, imgurl); | |
3694 return -1; | |
3695 } | |
3696 | |
3697 /* Make sure the widgets are visible. */ | |
3698 gtk_widget_show(container); | |
3699 id = gtk_notebook_append_page(GTK_NOTEBOOK(category_notebook), container, NULL); | |
3700 | |
3701 if (id == -1) | |
3702 return -1; | |
3703 | |
3704 if (imgurl != NULL) | |
3705 img = gdk_pixbuf_new_from_file(imgurl, NULL); | |
3706 | |
3707 gtk_list_store_append(GTK_LIST_STORE(model), &iter); | |
3708 gtk_list_store_set(GTK_LIST_STORE(model), &iter, | |
3709 CATEGORY_VIEW_COL_ICON, img, | |
3710 CATEGORY_VIEW_COL_NAME, | |
3711 name, CATEGORY_VIEW_COL_ID, id, -1); | |
3712 | |
3713 if (img != NULL) | |
3714 g_object_unref(img); | |
3715 | |
3716 return id; | |
3717 } | |
3718 | |
3719 void | |
3720 prefswin_page_destroy(GtkWidget *container) | |
3721 { | |
3722 GtkTreeModel *model; | |
3723 GtkTreeIter iter; | |
3724 GtkTreeView *treeview = GTK_TREE_VIEW(category_treeview); | |
3725 gboolean ret; | |
3726 gint id; | |
3727 gint index = -1; | |
3728 | |
3729 if (category_notebook == NULL || treeview == NULL || container == NULL) | |
3730 return; | |
3731 | |
3732 id = gtk_notebook_page_num(GTK_NOTEBOOK(category_notebook), container); | |
3733 | |
3734 if (id == -1) | |
3735 return; | |
3736 | |
3737 gtk_notebook_remove_page(GTK_NOTEBOOK(category_notebook), id); | |
3738 | |
3739 model = gtk_tree_view_get_model(treeview); | |
3740 | |
3741 if (model == NULL) | |
3742 return; | |
3743 | |
3744 ret = gtk_tree_model_get_iter_first(model, &iter); | |
3745 | |
3746 while (ret == TRUE) | |
3747 { | |
3748 gtk_tree_model_get(model, &iter, CATEGORY_VIEW_COL_ID, &index, -1); | |
3749 | |
3750 if (index == id) | |
3751 { | |
3752 gtk_list_store_remove(GTK_LIST_STORE(model), &iter); | |
3753 ret = gtk_tree_model_get_iter_first(model, &iter); | |
3754 } | |
3755 | |
3756 if (index > id) | |
3757 { | |
3758 index--; | |
3759 gtk_list_store_set(GTK_LIST_STORE(model), &iter, CATEGORY_VIEW_COL_ID, index, -1); | |
3760 } | |
3761 | |
3762 ret = gtk_tree_model_iter_next(model, &iter); | |
3763 } | |
3764 } |