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