Mercurial > audlegacy
diff src/audacious/ui_preferences.c @ 3993:8d8699eb659d
say goodbye to libglade
author | Tomasz Mon <desowin@gmail.com> |
---|---|
date | Sat, 24 Nov 2007 17:09:11 +0100 |
parents | 50bf02b4f048 |
children | 3496674a54b5 |
line wrap: on
line diff
--- a/src/audacious/ui_preferences.c Sat Nov 24 14:48:01 2007 +0100 +++ b/src/audacious/ui_preferences.c Sat Nov 24 17:09:11 2007 +0100 @@ -27,7 +27,6 @@ #include <glib.h> #include <glib/gi18n.h> #include <gtk/gtk.h> -#include <glade/glade.h> #include <string.h> #include <stddef.h> #include <stdio.h> @@ -37,8 +36,7 @@ #include <errno.h> #include <sys/types.h> #include <sys/stat.h> - -#include "glade.h" +#include <gdk/gdkkeysyms.h> #include "plugin.h" #include "pluginenum.h" @@ -122,6 +120,12 @@ GtkWidget *filepopup_settings_showprogressbar; GtkWidget *filepopup_settings_delay; +/* prefswin widgets */ +GtkWidget *titlestring_entry; +GtkWidget *skin_view; +GtkWidget *skin_refresh_button; +GtkWidget *filepopup_for_tuple_settings_button; + static Category categories[] = { {DATA_DIR "/images/appearance.png", N_("Appearance"), 1}, {DATA_DIR "/images/audio.png", N_("Audio"), 6}, @@ -176,12 +180,6 @@ static void create_colorize_settings(void); static void prefswin_page_queue_destroy(CategoryQueueEntry *ent); -static GladeXML * -prefswin_get_xml(void) -{ - return GLADE_XML(g_object_get_data(G_OBJECT(prefswin), "glade-xml")); -} - static void change_category(GtkNotebook * notebook, GtkTreeSelection * selection) @@ -200,14 +198,9 @@ void prefswin_set_category(gint index) { - GladeXML *xml; - GtkWidget *notebook; - g_return_if_fail(index >= 0 && index < n_categories); - xml = prefswin_get_xml(); - notebook = glade_xml_get_widget(xml, "category_view"); - gtk_notebook_set_current_page(GTK_NOTEBOOK(notebook), index); + gtk_notebook_set_current_page(GTK_NOTEBOOK(category_treeview), index); } static void @@ -448,24 +441,19 @@ gpointer data) { const gchar *separator = " - "; - GladeXML *xml; - GtkWidget *entry; gint item = GPOINTER_TO_INT(data); gint pos; - - xml = prefswin_get_xml(); - entry = glade_xml_get_widget(xml, "titlestring_entry"); - - pos = gtk_editable_get_position(GTK_EDITABLE(entry)); + + pos = gtk_editable_get_position(GTK_EDITABLE(titlestring_entry)); /* insert separator as needed */ - if (g_utf8_strlen(gtk_entry_get_text(GTK_ENTRY(entry)), -1) > 0) - editable_insert_text(GTK_EDITABLE(entry), separator, &pos); - - editable_insert_text(GTK_EDITABLE(entry), _(title_field_tags[item].tag), + if (g_utf8_strlen(gtk_entry_get_text(GTK_ENTRY(titlestring_entry)), -1) > 0) + editable_insert_text(GTK_EDITABLE(titlestring_entry), separator, &pos); + + editable_insert_text(GTK_EDITABLE(titlestring_entry), _(title_field_tags[item].tag), &pos); - gtk_editable_set_position(GTK_EDITABLE(entry), pos); + gtk_editable_set_position(GTK_EDITABLE(titlestring_entry), pos); } static void @@ -1284,58 +1272,29 @@ } -/* FIXME: implement these */ - -static void -on_eq_preset_view_realize(GtkTreeView * treeview, - gpointer data) -{} - -static void -on_eq_preset_add_clicked(GtkButton * button, - gpointer data) -{} - -static void -on_eq_preset_remove_clicked(GtkButton * button, - gpointer data) -{} - static void on_skin_refresh_button_clicked(GtkButton * button, gpointer data) { - GladeXML *xml; - GtkWidget *widget, *widget2; - const mode_t mode755 = S_IRWXU | S_IRGRP | S_IXGRP | S_IROTH | S_IXOTH; del_directory(bmp_paths[BMP_PATH_SKIN_THUMB_DIR]); make_directory(bmp_paths[BMP_PATH_SKIN_THUMB_DIR], mode755); - xml = prefswin_get_xml(); - - widget = glade_xml_get_widget(xml, "skin_view"); - widget2 = glade_xml_get_widget(xml, "skin_refresh_button"); - skin_view_update(GTK_TREE_VIEW(widget), GTK_WIDGET(widget2)); + skin_view_update(GTK_TREE_VIEW(skin_view), GTK_WIDGET(skin_refresh_button)); } static gboolean on_skin_view_realize(GtkTreeView * treeview, gpointer data) { - GladeXML *xml; - GtkWidget *widget; - - xml = prefswin_get_xml(); - widget = glade_xml_get_widget(xml, "skin_refresh_button"); skin_view_realize(treeview); return TRUE; } static void -on_category_view_realize(GtkTreeView * treeview, +on_category_treeview_realize(GtkTreeView * treeview, GtkNotebook * notebook) { GtkListStore *store; @@ -1404,9 +1363,6 @@ ConfigDb *db; gchar *path; - GladeXML *xml; - GtkWidget *widget2; - if (!selection_data->data) { g_warning("DND data string is NULL"); return; @@ -1427,9 +1383,7 @@ if (file_is_archive(path)) { bmp_active_skin_load(path); skin_install_skin(path); - xml = prefswin_get_xml(); - widget2 = glade_xml_get_widget(xml, "skin_refresh_button"); - skin_view_update(GTK_TREE_VIEW(widget), GTK_WIDGET(widget2)); + skin_view_update(GTK_TREE_VIEW(widget), GTK_WIDGET(skin_refresh_button)); /* Change skin name in the config file */ db = cfg_db_open(); cfg_db_set_string(db, NULL, "skin", path); @@ -1544,24 +1498,18 @@ static void on_show_filepopup_for_tuple_realize(GtkToggleButton * button, gpointer data) { - GladeXML *xml = prefswin_get_xml(); - GtkWidget *settings_button = glade_xml_get_widget(xml, "filepopup_for_tuple_settings_button"); - gtk_toggle_button_set_active(button, cfg.show_filepopup_for_tuple); - filepopupbutton = (GtkWidget *)button; - - gtk_widget_set_sensitive(settings_button, cfg.show_filepopup_for_tuple); + filepopupbutton = GTK_WIDGET(button); + + gtk_widget_set_sensitive(filepopup_for_tuple_settings_button, cfg.show_filepopup_for_tuple); } static void on_show_filepopup_for_tuple_toggled(GtkToggleButton * button, gpointer data) { - GladeXML *xml = prefswin_get_xml(); - GtkWidget *settings_button = glade_xml_get_widget(xml, "filepopup_for_tuple_settings_button"); - cfg.show_filepopup_for_tuple = gtk_toggle_button_get_active(button); - gtk_widget_set_sensitive(settings_button, cfg.show_filepopup_for_tuple); + gtk_widget_set_sensitive(filepopup_for_tuple_settings_button, cfg.show_filepopup_for_tuple); } static void @@ -1719,110 +1667,6 @@ //XXX need to redraw textbox? --yaz } -/* FIXME: complete the map */ -FUNC_MAP_BEGIN(prefswin_func_map) - FUNC_MAP_ENTRY(on_input_plugin_view_realize) - FUNC_MAP_ENTRY(on_output_plugin_cbox_realize) - FUNC_MAP_ENTRY(on_general_plugin_view_realize) - FUNC_MAP_ENTRY(on_vis_plugin_view_realize) - FUNC_MAP_ENTRY(on_effect_plugin_view_realize) - FUNC_MAP_ENTRY(on_custom_cursors_realize) - FUNC_MAP_ENTRY(on_custom_cursors_toggled) - FUNC_MAP_ENTRY(on_mainwin_font_button_realize) - FUNC_MAP_ENTRY(on_mainwin_font_button_font_set) - FUNC_MAP_ENTRY(on_use_bitmap_fonts_realize) - FUNC_MAP_ENTRY(on_use_bitmap_fonts_toggled) - FUNC_MAP_ENTRY(on_mouse_wheel_volume_realize) - FUNC_MAP_ENTRY(on_mouse_wheel_volume_changed) - FUNC_MAP_ENTRY(on_mouse_wheel_scroll_pl_realize) - FUNC_MAP_ENTRY(on_mouse_wheel_scroll_pl_changed) - FUNC_MAP_ENTRY(on_pause_between_songs_time_realize) - FUNC_MAP_ENTRY(on_pause_between_songs_time_changed) - FUNC_MAP_ENTRY(on_enable_src_realize) - FUNC_MAP_ENTRY(on_enable_src_toggled) - FUNC_MAP_ENTRY(on_src_rate_realize) - FUNC_MAP_ENTRY(on_src_rate_value_changed) - FUNC_MAP_ENTRY(on_src_converter_type_realize) - FUNC_MAP_ENTRY(on_src_converter_type_changed) - FUNC_MAP_ENTRY(on_pl_metadata_on_load_realize) - FUNC_MAP_ENTRY(on_pl_metadata_on_load_toggled) - FUNC_MAP_ENTRY(on_pl_metadata_on_display_realize) - FUNC_MAP_ENTRY(on_pl_metadata_on_display_toggled) - FUNC_MAP_ENTRY(on_playlist_show_pl_numbers_realize) - FUNC_MAP_ENTRY(on_playlist_show_pl_numbers_toggled) - FUNC_MAP_ENTRY(on_playlist_show_pl_separator_realize) - FUNC_MAP_ENTRY(on_playlist_show_pl_separator_toggled) - FUNC_MAP_ENTRY(on_playlist_convert_twenty_realize) - FUNC_MAP_ENTRY(on_playlist_convert_twenty_toggled) - FUNC_MAP_ENTRY(on_playlist_convert_underscore_realize) - FUNC_MAP_ENTRY(on_playlist_convert_underscore_toggled) - FUNC_MAP_ENTRY(on_playlist_convert_slash_realize) - FUNC_MAP_ENTRY(on_playlist_convert_slash_toggled) - FUNC_MAP_ENTRY(on_playlist_font_button_realize) - FUNC_MAP_ENTRY(on_playlist_font_button_font_set) - FUNC_MAP_ENTRY(on_playlist_no_advance_realize) - FUNC_MAP_ENTRY(on_playlist_no_advance_toggled) - FUNC_MAP_ENTRY(on_refresh_file_list_realize) - FUNC_MAP_ENTRY(on_refresh_file_list_toggled) - FUNC_MAP_ENTRY(on_skin_view_realize) - FUNC_MAP_ENTRY(on_titlestring_entry_realize) - FUNC_MAP_ENTRY(on_titlestring_entry_changed) - FUNC_MAP_ENTRY(on_eq_dir_preset_entry_realize) - FUNC_MAP_ENTRY(on_eq_dir_preset_entry_changed) - FUNC_MAP_ENTRY(on_eq_file_preset_entry_realize) - FUNC_MAP_ENTRY(on_eq_file_preset_entry_changed) - FUNC_MAP_ENTRY(on_eq_preset_view_realize) - FUNC_MAP_ENTRY(on_eq_preset_add_clicked) - FUNC_MAP_ENTRY(on_eq_preset_remove_clicked) - FUNC_MAP_ENTRY(on_skin_refresh_button_clicked) - FUNC_MAP_ENTRY(on_proxy_use_toggled) - FUNC_MAP_ENTRY(on_proxy_use_realize) - FUNC_MAP_ENTRY(on_proxy_auth_toggled) - FUNC_MAP_ENTRY(on_proxy_auth_realize) - FUNC_MAP_ENTRY(on_proxy_host_realize) - FUNC_MAP_ENTRY(on_proxy_host_changed) - FUNC_MAP_ENTRY(on_proxy_port_realize) - FUNC_MAP_ENTRY(on_proxy_port_changed) - FUNC_MAP_ENTRY(on_proxy_user_realize) - FUNC_MAP_ENTRY(on_proxy_user_changed) - FUNC_MAP_ENTRY(on_proxy_pass_realize) - FUNC_MAP_ENTRY(on_proxy_pass_changed) - FUNC_MAP_ENTRY(on_chardet_detector_cbox_realize) - FUNC_MAP_ENTRY(on_chardet_detector_cbox_changed) - FUNC_MAP_ENTRY(on_chardet_fallback_realize) - FUNC_MAP_ENTRY(on_chardet_fallback_changed) - FUNC_MAP_ENTRY(on_output_plugin_bufsize_realize) - FUNC_MAP_ENTRY(on_output_plugin_bufsize_value_changed) - FUNC_MAP_ENTRY(on_audio_format_det_cb_toggled) - FUNC_MAP_ENTRY(on_audio_format_det_cb_realize) - FUNC_MAP_ENTRY(on_detect_by_extension_cb_toggled) - FUNC_MAP_ENTRY(on_detect_by_extension_cb_realize) - FUNC_MAP_ENTRY(on_show_filepopup_for_tuple_realize) - FUNC_MAP_ENTRY(on_show_filepopup_for_tuple_toggled) - FUNC_MAP_ENTRY(on_filepopup_for_tuple_settings_clicked) - FUNC_MAP_ENTRY(on_continue_playback_on_startup_realize) - FUNC_MAP_ENTRY(on_continue_playback_on_startup_toggled) - FUNC_MAP_ENTRY(on_software_volume_control_realize) - FUNC_MAP_ENTRY(on_software_volume_control_toggled) - - /* XMMS fileselector option -nenolod */ - FUNC_MAP_ENTRY(on_xmms_style_fileselector_toggled) - FUNC_MAP_ENTRY(on_xmms_style_fileselector_realize) - - /* show window manager decorations */ - FUNC_MAP_ENTRY(on_show_wm_decorations_toggled) - FUNC_MAP_ENTRY(on_show_wm_decorations_realize) - - /* two-way scroller */ - FUNC_MAP_ENTRY(on_twoway_scroller_toggled) - FUNC_MAP_ENTRY(on_twoway_scroller_realize) - - /* colorize */ - FUNC_MAP_ENTRY(on_colorize_button_clicked) - - FUNC_MAP_ENTRY(on_reload_plugins_clicked) -FUNC_MAP_END - void create_colorize_settings(void) { @@ -1907,7 +1751,7 @@ GTK_WIDGET_SET_FLAGS(colorize_close, GTK_CAN_DEFAULT); g_signal_connect((gpointer) red_scale, "value_changed", - G_CALLBACK (on_red_scale_value_changed), + G_CALLBACK(on_red_scale_value_changed), NULL); g_signal_connect((gpointer) green_scale, "value_changed", G_CALLBACK(on_green_scale_value_changed), @@ -2094,200 +1938,1852 @@ void create_prefs_window(void) { - const gchar *glade_file = DATA_DIR "/glade/prefswin.glade"; - - GladeXML *xml; - GtkWidget *widget, *widget2; gchar *aud_version_string; GtkWidget *titlestring_tag_menu, *menu_item; guint i; - - /* load the interface */ - xml = glade_xml_new_or_die(_("Preferences Window"), glade_file, NULL, - NULL); - - - /* connect the signals in the interface */ - glade_xml_signal_autoconnect_map(xml, prefswin_func_map); - - prefswin = glade_xml_get_widget(xml, "prefswin"); - g_object_set_data(G_OBJECT(prefswin), "glade-xml", xml); + + GtkWidget *vbox; + GtkWidget *hbox1; + GtkWidget *scrolledwindow6; + GtkWidget *category_notebook; + GtkWidget *plugin_page_vbox; + GtkWidget *plugin_notebook; + GtkWidget *plugin_input_vbox; + GtkWidget *alignment43; + GtkWidget *input_plugin_list_label; + GtkWidget *scrolledwindow3; + GtkWidget *input_plugin_view; + GtkWidget *input_plugin_button_box; + GtkWidget *input_plugin_prefs; + GtkWidget *input_plugin_info; + GtkWidget *plugin_input_label; + GtkWidget *plugin_general_vbox; + GtkWidget *alignment45; + GtkWidget *label11; + GtkWidget *scrolledwindow5; + GtkWidget *general_plugin_view; + GtkWidget *general_plugin_button_box; + GtkWidget *general_plugin_prefs; + GtkWidget *general_plugin_info; + GtkWidget *plugin_general_label; + GtkWidget *vbox21; + GtkWidget *alignment46; + GtkWidget *label53; + GtkWidget *scrolledwindow7; + GtkWidget *vis_plugin_view; + GtkWidget *hbuttonbox6; + GtkWidget *vis_plugin_prefs; + GtkWidget *vis_plugin_info; + GtkWidget *vis_label; + GtkWidget *vbox25; + GtkWidget *alignment58; + GtkWidget *label64; + GtkWidget *scrolledwindow9; + GtkWidget *effect_plugin_view; + GtkWidget *hbuttonbox9; + GtkWidget *effect_plugin_prefs; + GtkWidget *effect_plugin_info; + GtkWidget *effects_label; + GtkWidget *plugin_label; + GtkWidget *appearance_page_vbox; + GtkWidget *vbox37; + GtkWidget *vbox38; + GtkWidget *hbox12; + GtkWidget *alignment94; + GtkWidget *hbox13; + GtkWidget *label103; + GtkWidget *colorspace_button; + GtkWidget *image11; + GtkWidget *image12; + GtkWidget *alignment95; + GtkWidget *skin_view_scrolled_window; + GtkWidget *vbox39; + GtkWidget *alignment96; + GtkWidget *label104; + GtkWidget *table14; + GtkWidget *alignment97; + GtkWidget *label105; + GtkWidget *alignment98; + GtkWidget *label106; + GtkWidget *fontbutton1; + GtkWidget *fontbutton2; + GtkWidget *alignment99; + GtkWidget *checkbutton11; + GtkWidget *vbox40; + GtkWidget *alignment100; + GtkWidget *label107; + GtkWidget *alignment101; + GtkWidget *playlist_show_pl_numbers; + GtkWidget *alignment102; + GtkWidget *playlist_show_pl_separator; + GtkWidget *alignment103; + GtkWidget *checkbutton14; + GtkWidget *alignment104; + GtkWidget *show_wm_decorations; + GtkWidget *alignment105; + GtkWidget *xmms_style_fileselector_cb1; + GtkWidget *alignment106; + GtkWidget *checkbutton17; + GtkWidget *appearance_label; + GtkWidget *mouse_page_vbox; + GtkWidget *vbox20; + GtkWidget *alignment36; + GtkWidget *label51; + GtkWidget *alignment34; + GtkWidget *table4; + GtkObject *mouse_wheel_volume_adj; + GtkWidget *mouse_wheel_volume; + GtkWidget *label35; + GtkObject *mouse_wheel_scroll_pl_adj; + GtkWidget *mouse_wheel_scroll_pl; + GtkWidget *label34; + GtkWidget *label33; + GtkWidget *label32; + GtkWidget *mouse_label; + GtkWidget *playlist_page_vbox; + GtkWidget *vbox5; + GtkWidget *alignment14; + GtkWidget *label38; + GtkWidget *alignment12; + GtkWidget *playlist_convert_underscore; + GtkWidget *alignment13; + GtkWidget *playlist_convert_twenty; + GtkWidget *alignment88; + GtkWidget *playlist_convert_slash; + GtkWidget *alignment15; + GtkWidget *label39; + GtkWidget *alignment16; + GtkWidget *playlist_use_metadata; + GtkWidget *alignment18; + GtkWidget *playlist_use_metadata_box; + GtkWidget *playlist_metadata_on_load; + GSList *playlist_metadata_on_load_group = NULL; + GtkWidget *playlist_metadata_on_display; + GtkWidget *table10; + GtkWidget *label73; + GtkWidget *combobox1; + GtkWidget *entry1; + GtkWidget *label74; + GtkWidget *alignment19; + GtkWidget *label40; + GtkWidget *alignment20; + GtkWidget *refresh_file_list; + GtkWidget *alignment55; + GtkWidget *label60; + GtkWidget *alignment56; + GtkWidget *table6; + GtkWidget *titlestring_help_button; + GtkWidget *image1; + GtkWidget *titlestring_cbox; + GtkWidget *label62; + GtkWidget *label61; + GtkWidget *alignment85; + GtkWidget *label84; + GtkWidget *alignment86; + GtkWidget *hbox9; + GtkWidget *vbox34; + GtkWidget *checkbutton10; + GtkWidget *image8; + GtkWidget *playlist_label; + GtkWidget *equalizer_page_vbox; + GtkWidget *alignment28; + GtkWidget *vbox22; + GtkWidget *alignment30; + GtkWidget *equalizer_page_label; + GtkWidget *vbox23; + GtkWidget *alignment33; + GtkWidget *table5; + GtkWidget *label58; + GtkWidget *label57; + GtkWidget *eq_file_preset_entry; + GtkWidget *eq_dir_preset_entry; + GtkWidget *equalizer_label; + GtkWidget *connectivity_page_vbox; + GtkWidget *vbox29; + GtkWidget *alignment63; + GtkWidget *connectivity_page_label; + GtkWidget *alignment68; + GtkWidget *vbox30; + GtkWidget *alignment65; + GtkWidget *proxy_use; + GtkWidget *table8; + GtkWidget *proxy_port; + GtkWidget *proxy_host; + GtkWidget *label69; + GtkWidget *label68; + GtkWidget *alignment67; + GtkWidget *proxy_auth; + GtkWidget *table9; + GtkWidget *proxy_pass; + GtkWidget *proxy_user; + GtkWidget *label71; + GtkWidget *label70; + GtkWidget *alignment72; + GtkWidget *hbox6; + GtkWidget *image4; + GtkWidget *label75; + GtkWidget *label95; + GtkWidget *empty_notebook_page; + GtkWidget *label96; + GtkWidget *audio_scrolled_window; + GtkWidget *audio_page_viewport; + GtkWidget *audio_page_vbox; + GtkWidget *alignment74; + GtkWidget *label77; + GtkWidget *alignment73; + GtkWidget *vbox33; + GtkWidget *table11; + GtkWidget *image7; + GtkWidget *label79; + GtkWidget *label82; + GtkObject *output_plugin_bufsize_adj; + GtkWidget *output_plugin_bufsize; + GtkWidget *output_plugin_cbox; + GtkWidget *label78; + GtkWidget *alignment82; + GtkWidget *output_plugin_button_box; + GtkWidget *output_plugin_prefs; + GtkWidget *alignment76; + GtkWidget *hbox7; + GtkWidget *image5; + GtkWidget *label80; + GtkWidget *output_plugin_info; + GtkWidget *alignment77; + GtkWidget *hbox8; + GtkWidget *image6; + GtkWidget *label81; + GtkWidget *alignment78; + GtkWidget *label83; + GtkWidget *alignment84; + GtkWidget *audio_format_det_cb; + GtkWidget *alignment89; + GtkWidget *detect_by_extension_cb; + GtkWidget *alignment83; + GtkWidget *continue_playback_on_startup; + GtkWidget *alignment79; + GtkWidget *playlist_no_advance; + GtkWidget *alignment80; + GtkWidget *pause_between_songs; + GtkWidget *alignment22; + GtkWidget *pause_between_songs_box; + GtkWidget *label41; + GtkObject *pause_between_songs_time_adj; + GtkWidget *pause_between_songs_time; + GtkWidget *label42; + GtkWidget *alignment90; + GtkWidget *label93; + GtkWidget *alignment92; + GtkWidget *enable_src; + GtkWidget *alignment91; + GtkWidget *vbox36; + GtkWidget *table13; + GtkWidget *src_converter_type; + GtkWidget *label94; + GtkWidget *label92; + GtkWidget *image9; + GtkObject *src_rate_adj; + GtkWidget *src_rate; + GtkWidget *label91; + GtkWidget *alignment4; + GtkWidget *label2; + GtkWidget *alignment7; + GtkWidget *software_volume_control; + GtkWidget *hseparator1; + GtkWidget *hbox4; + GtkWidget *audversionlabel; + GtkWidget *prefswin_button_box; + GtkWidget *reload_plugins; + GtkWidget *alignment93; + GtkWidget *hbox11; + GtkWidget *image10; + GtkWidget *label102; + GtkWidget *close; + GtkAccelGroup *accel_group; + GtkTooltips *tooltips; + + tooltips = gtk_tooltips_new (); + + accel_group = gtk_accel_group_new (); + + prefswin = gtk_window_new (GTK_WINDOW_TOPLEVEL); + gtk_container_set_border_width (GTK_CONTAINER (prefswin), 12); + gtk_window_set_title (GTK_WINDOW (prefswin), _("Audacious Preferences")); + gtk_window_set_position (GTK_WINDOW (prefswin), GTK_WIN_POS_CENTER); + gtk_window_set_default_size (GTK_WINDOW (prefswin), 680, 400); + + vbox = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (prefswin), vbox); + + hbox1 = gtk_hbox_new (FALSE, 8); + gtk_box_pack_start (GTK_BOX (vbox), hbox1, TRUE, TRUE, 0); + + scrolledwindow6 = gtk_scrolled_window_new (NULL, NULL); + gtk_box_pack_start (GTK_BOX (hbox1), scrolledwindow6, TRUE, TRUE, 0); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow6), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); + gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow6), GTK_SHADOW_IN); + + category_treeview = gtk_tree_view_new (); + gtk_container_add (GTK_CONTAINER (scrolledwindow6), category_treeview); + gtk_widget_set_size_request (category_treeview, 172, -1); + gtk_tree_view_set_headers_visible (GTK_TREE_VIEW (category_treeview), FALSE); + + category_notebook = gtk_notebook_new (); + gtk_box_pack_start (GTK_BOX (hbox1), category_notebook, TRUE, TRUE, 0); + GTK_WIDGET_UNSET_FLAGS (category_notebook, GTK_CAN_FOCUS); + gtk_notebook_set_show_tabs (GTK_NOTEBOOK (category_notebook), FALSE); + gtk_notebook_set_show_border (GTK_NOTEBOOK (category_notebook), FALSE); + gtk_notebook_set_scrollable (GTK_NOTEBOOK (category_notebook), TRUE); + + plugin_page_vbox = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (category_notebook), plugin_page_vbox); + + plugin_notebook = gtk_notebook_new (); + gtk_box_pack_start (GTK_BOX (plugin_page_vbox), plugin_notebook, TRUE, TRUE, 0); + gtk_notebook_set_show_border (GTK_NOTEBOOK (plugin_notebook), FALSE); + + plugin_input_vbox = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (plugin_notebook), plugin_input_vbox); + gtk_container_set_border_width (GTK_CONTAINER (plugin_input_vbox), 12); + + alignment43 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (plugin_input_vbox), alignment43, FALSE, FALSE, 4); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment43), 0, 6, 0, 0); + + input_plugin_list_label = gtk_label_new_with_mnemonic (_("_Decoder list:")); + gtk_container_add (GTK_CONTAINER (alignment43), input_plugin_list_label); + gtk_label_set_use_markup (GTK_LABEL (input_plugin_list_label), TRUE); + gtk_misc_set_alignment (GTK_MISC (input_plugin_list_label), 0, 0.5); + + scrolledwindow3 = gtk_scrolled_window_new (NULL, NULL); + gtk_box_pack_start (GTK_BOX (plugin_input_vbox), scrolledwindow3, TRUE, TRUE, 0); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow3), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); + gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow3), GTK_SHADOW_IN); + + input_plugin_view = gtk_tree_view_new (); + gtk_container_add (GTK_CONTAINER (scrolledwindow3), input_plugin_view); + gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (input_plugin_view), TRUE); + gtk_tree_view_set_reorderable (GTK_TREE_VIEW (input_plugin_view), TRUE); + + input_plugin_button_box = gtk_hbutton_box_new (); + gtk_box_pack_start (GTK_BOX (plugin_input_vbox), input_plugin_button_box, FALSE, FALSE, 8); + gtk_button_box_set_layout (GTK_BUTTON_BOX (input_plugin_button_box), GTK_BUTTONBOX_START); + gtk_box_set_spacing (GTK_BOX (input_plugin_button_box), 8); + + input_plugin_prefs = gtk_button_new_from_stock ("gtk-preferences"); + gtk_container_add (GTK_CONTAINER (input_plugin_button_box), input_plugin_prefs); + gtk_widget_set_sensitive (input_plugin_prefs, FALSE); + GTK_WIDGET_SET_FLAGS (input_plugin_prefs, GTK_CAN_DEFAULT); + + input_plugin_info = gtk_button_new_from_stock ("gtk-dialog-info"); + gtk_container_add (GTK_CONTAINER (input_plugin_button_box), input_plugin_info); + gtk_widget_set_sensitive (input_plugin_info, FALSE); + GTK_WIDGET_SET_FLAGS (input_plugin_info, GTK_CAN_DEFAULT); + + plugin_input_label = gtk_label_new (_("<span size=\"medium\"><b>Decoders</b></span>")); + gtk_notebook_set_tab_label (GTK_NOTEBOOK (plugin_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (plugin_notebook), 0), plugin_input_label); + gtk_label_set_use_markup (GTK_LABEL (plugin_input_label), TRUE); + gtk_misc_set_alignment (GTK_MISC (plugin_input_label), 0, 0); + + plugin_general_vbox = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (plugin_notebook), plugin_general_vbox); + gtk_container_set_border_width (GTK_CONTAINER (plugin_general_vbox), 12); + + alignment45 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (plugin_general_vbox), alignment45, FALSE, FALSE, 4); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment45), 0, 6, 0, 0); + + label11 = gtk_label_new_with_mnemonic (_("_General plugin list:")); + gtk_container_add (GTK_CONTAINER (alignment45), label11); + gtk_label_set_use_markup (GTK_LABEL (label11), TRUE); + gtk_misc_set_alignment (GTK_MISC (label11), 0, 0.5); + + scrolledwindow5 = gtk_scrolled_window_new (NULL, NULL); + gtk_box_pack_start (GTK_BOX (plugin_general_vbox), scrolledwindow5, TRUE, TRUE, 0); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow5), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); + gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow5), GTK_SHADOW_IN); + + general_plugin_view = gtk_tree_view_new (); + gtk_container_add (GTK_CONTAINER (scrolledwindow5), general_plugin_view); + gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (general_plugin_view), TRUE); + gtk_tree_view_set_reorderable (GTK_TREE_VIEW (general_plugin_view), TRUE); + + general_plugin_button_box = gtk_hbutton_box_new (); + gtk_box_pack_start (GTK_BOX (plugin_general_vbox), general_plugin_button_box, FALSE, FALSE, 8); + gtk_button_box_set_layout (GTK_BUTTON_BOX (general_plugin_button_box), GTK_BUTTONBOX_START); + gtk_box_set_spacing (GTK_BOX (general_plugin_button_box), 8); + + general_plugin_prefs = gtk_button_new_from_stock ("gtk-preferences"); + gtk_container_add (GTK_CONTAINER (general_plugin_button_box), general_plugin_prefs); + gtk_widget_set_sensitive (general_plugin_prefs, FALSE); + GTK_WIDGET_SET_FLAGS (general_plugin_prefs, GTK_CAN_DEFAULT); + + general_plugin_info = gtk_button_new_from_stock ("gtk-dialog-info"); + gtk_container_add (GTK_CONTAINER (general_plugin_button_box), general_plugin_info); + gtk_widget_set_sensitive (general_plugin_info, FALSE); + GTK_WIDGET_SET_FLAGS (general_plugin_info, GTK_CAN_DEFAULT); + + plugin_general_label = gtk_label_new (_("<span size=\"medium\"><b>General</b></span>")); + gtk_notebook_set_tab_label (GTK_NOTEBOOK (plugin_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (plugin_notebook), 1), plugin_general_label); + gtk_label_set_use_markup (GTK_LABEL (plugin_general_label), TRUE); + + vbox21 = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (plugin_notebook), vbox21); + gtk_container_set_border_width (GTK_CONTAINER (vbox21), 12); + + alignment46 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox21), alignment46, FALSE, FALSE, 4); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment46), 0, 6, 0, 0); + + label53 = gtk_label_new_with_mnemonic (_("_Visualization plugin list:")); + gtk_container_add (GTK_CONTAINER (alignment46), label53); + gtk_label_set_use_markup (GTK_LABEL (label53), TRUE); + gtk_misc_set_alignment (GTK_MISC (label53), 0, 0.5); + + scrolledwindow7 = gtk_scrolled_window_new (NULL, NULL); + gtk_box_pack_start (GTK_BOX (vbox21), scrolledwindow7, TRUE, TRUE, 0); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow7), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); + gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow7), GTK_SHADOW_IN); + + vis_plugin_view = gtk_tree_view_new (); + gtk_container_add (GTK_CONTAINER (scrolledwindow7), vis_plugin_view); + gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (vis_plugin_view), TRUE); + gtk_tree_view_set_reorderable (GTK_TREE_VIEW (vis_plugin_view), TRUE); + + hbuttonbox6 = gtk_hbutton_box_new (); + gtk_box_pack_start (GTK_BOX (vbox21), hbuttonbox6, FALSE, FALSE, 8); + gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox6), GTK_BUTTONBOX_START); + gtk_box_set_spacing (GTK_BOX (hbuttonbox6), 8); + + vis_plugin_prefs = gtk_button_new_from_stock ("gtk-preferences"); + gtk_container_add (GTK_CONTAINER (hbuttonbox6), vis_plugin_prefs); + gtk_widget_set_sensitive (vis_plugin_prefs, FALSE); + GTK_WIDGET_SET_FLAGS (vis_plugin_prefs, GTK_CAN_DEFAULT); + + vis_plugin_info = gtk_button_new_from_stock ("gtk-dialog-info"); + gtk_container_add (GTK_CONTAINER (hbuttonbox6), vis_plugin_info); + gtk_widget_set_sensitive (vis_plugin_info, FALSE); + GTK_WIDGET_SET_FLAGS (vis_plugin_info, GTK_CAN_DEFAULT); + + vis_label = gtk_label_new (_("<b>Visualization</b>")); + gtk_notebook_set_tab_label (GTK_NOTEBOOK (plugin_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (plugin_notebook), 2), vis_label); + gtk_label_set_use_markup (GTK_LABEL (vis_label), TRUE); + + vbox25 = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (plugin_notebook), vbox25); + gtk_container_set_border_width (GTK_CONTAINER (vbox25), 12); + + alignment58 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox25), alignment58, FALSE, FALSE, 4); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment58), 0, 6, 0, 0); + + label64 = gtk_label_new_with_mnemonic (_("_Effect plugin list:")); + gtk_container_add (GTK_CONTAINER (alignment58), label64); + gtk_label_set_use_markup (GTK_LABEL (label64), TRUE); + gtk_misc_set_alignment (GTK_MISC (label64), 0, 0.5); + + scrolledwindow9 = gtk_scrolled_window_new (NULL, NULL); + gtk_box_pack_start (GTK_BOX (vbox25), scrolledwindow9, TRUE, TRUE, 0); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow9), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC); + gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (scrolledwindow9), GTK_SHADOW_IN); + + effect_plugin_view = gtk_tree_view_new (); + gtk_container_add (GTK_CONTAINER (scrolledwindow9), effect_plugin_view); + gtk_tree_view_set_rules_hint (GTK_TREE_VIEW (effect_plugin_view), TRUE); + gtk_tree_view_set_reorderable (GTK_TREE_VIEW (effect_plugin_view), TRUE); + + hbuttonbox9 = gtk_hbutton_box_new (); + gtk_box_pack_start (GTK_BOX (vbox25), hbuttonbox9, FALSE, FALSE, 8); + gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox9), GTK_BUTTONBOX_START); + gtk_box_set_spacing (GTK_BOX (hbuttonbox9), 8); + + effect_plugin_prefs = gtk_button_new_from_stock ("gtk-preferences"); + gtk_container_add (GTK_CONTAINER (hbuttonbox9), effect_plugin_prefs); + gtk_widget_set_sensitive (effect_plugin_prefs, FALSE); + GTK_WIDGET_SET_FLAGS (effect_plugin_prefs, GTK_CAN_DEFAULT); + + effect_plugin_info = gtk_button_new_from_stock ("gtk-dialog-info"); + gtk_container_add (GTK_CONTAINER (hbuttonbox9), effect_plugin_info); + gtk_widget_set_sensitive (effect_plugin_info, FALSE); + GTK_WIDGET_SET_FLAGS (effect_plugin_info, GTK_CAN_DEFAULT); + + effects_label = gtk_label_new (_("<b>Effects</b>")); + gtk_notebook_set_tab_label (GTK_NOTEBOOK (plugin_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (plugin_notebook), 3), effects_label); + gtk_label_set_use_markup (GTK_LABEL (effects_label), TRUE); + + plugin_label = gtk_label_new (_("Plugins")); + gtk_notebook_set_tab_label (GTK_NOTEBOOK (category_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (category_notebook), 0), plugin_label); + + appearance_page_vbox = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (category_notebook), appearance_page_vbox); + + vbox37 = gtk_vbox_new (FALSE, 0); + gtk_box_pack_start (GTK_BOX (appearance_page_vbox), vbox37, TRUE, TRUE, 0); + + vbox38 = gtk_vbox_new (FALSE, 0); + gtk_box_pack_start (GTK_BOX (vbox37), vbox38, FALSE, TRUE, 0); + + hbox12 = gtk_hbox_new (FALSE, 0); + gtk_box_pack_start (GTK_BOX (vbox38), hbox12, TRUE, TRUE, 0); + + alignment94 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (hbox12), alignment94, TRUE, TRUE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment94), 0, 4, 0, 0); + + hbox13 = gtk_hbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (alignment94), hbox13); + + label103 = gtk_label_new_with_mnemonic (_("<b>_Skin</b>")); + gtk_box_pack_start (GTK_BOX (hbox13), label103, TRUE, TRUE, 0); + gtk_label_set_use_markup (GTK_LABEL (label103), TRUE); + gtk_misc_set_alignment (GTK_MISC (label103), 0, 0); + + colorspace_button = gtk_button_new (); + gtk_box_pack_start (GTK_BOX (hbox13), colorspace_button, FALSE, FALSE, 0); + + image11 = gtk_image_new_from_stock ("gtk-properties", GTK_ICON_SIZE_BUTTON); + gtk_container_add (GTK_CONTAINER (colorspace_button), image11); + + skin_refresh_button = gtk_button_new (); + gtk_box_pack_start (GTK_BOX (hbox13), skin_refresh_button, FALSE, FALSE, 0); + GTK_WIDGET_UNSET_FLAGS (skin_refresh_button, GTK_CAN_FOCUS); + gtk_tooltips_set_tip (tooltips, skin_refresh_button, _("Refresh skin list"), NULL); + gtk_button_set_relief (GTK_BUTTON (skin_refresh_button), GTK_RELIEF_HALF); + gtk_button_set_focus_on_click (GTK_BUTTON (skin_refresh_button), FALSE); + + image12 = gtk_image_new_from_stock ("gtk-refresh", GTK_ICON_SIZE_BUTTON); + gtk_container_add (GTK_CONTAINER (skin_refresh_button), image12); + + alignment95 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox38), alignment95, TRUE, TRUE, 0); + gtk_widget_set_size_request (alignment95, -1, 172); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment95), 0, 0, 12, 0); + + skin_view_scrolled_window = gtk_scrolled_window_new (NULL, NULL); + gtk_container_add (GTK_CONTAINER (alignment95), skin_view_scrolled_window); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (skin_view_scrolled_window), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS); + gtk_scrolled_window_set_shadow_type (GTK_SCROLLED_WINDOW (skin_view_scrolled_window), GTK_SHADOW_IN); + + skin_view = gtk_tree_view_new (); + gtk_container_add (GTK_CONTAINER (skin_view_scrolled_window), skin_view); + gtk_widget_set_size_request (skin_view, -1, 100); + + vbox39 = gtk_vbox_new (FALSE, 0); + gtk_box_pack_start (GTK_BOX (vbox37), vbox39, FALSE, TRUE, 0); + + alignment96 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox39), alignment96, TRUE, TRUE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment96), 12, 6, 0, 0); + + label104 = gtk_label_new_with_mnemonic (_("<b>_Fonts</b>")); + gtk_container_add (GTK_CONTAINER (alignment96), label104); + gtk_label_set_use_markup (GTK_LABEL (label104), TRUE); + gtk_misc_set_alignment (GTK_MISC (label104), 0, 0.5); + + table14 = gtk_table_new (2, 2, FALSE); + gtk_box_pack_start (GTK_BOX (vbox39), table14, TRUE, TRUE, 0); + gtk_table_set_row_spacings (GTK_TABLE (table14), 8); + gtk_table_set_col_spacings (GTK_TABLE (table14), 2); + + alignment97 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_table_attach (GTK_TABLE (table14), alignment97, 0, 1, 0, 1, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment97), 0, 0, 12, 6); + + label105 = gtk_label_new_with_mnemonic (_("_Player:")); + gtk_container_add (GTK_CONTAINER (alignment97), label105); + gtk_label_set_use_markup (GTK_LABEL (label105), TRUE); + gtk_misc_set_alignment (GTK_MISC (label105), 1, 0.5); + + alignment98 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_table_attach (GTK_TABLE (table14), alignment98, 0, 1, 1, 2, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment98), 0, 0, 12, 6); + + label106 = gtk_label_new_with_mnemonic (_("_Playlist:")); + gtk_container_add (GTK_CONTAINER (alignment98), label106); + gtk_label_set_use_markup (GTK_LABEL (label106), TRUE); + gtk_label_set_justify (GTK_LABEL (label106), GTK_JUSTIFY_RIGHT); + gtk_misc_set_alignment (GTK_MISC (label106), 1, 0.5); + + fontbutton1 = gtk_font_button_new (); + gtk_table_attach (GTK_TABLE (table14), fontbutton1, 1, 2, 0, 1, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + gtk_font_button_set_title (GTK_FONT_BUTTON (fontbutton1), _("Select main player window font:")); + gtk_font_button_set_use_font (GTK_FONT_BUTTON (fontbutton1), TRUE); + gtk_font_button_set_use_size (GTK_FONT_BUTTON (fontbutton1), TRUE); + + fontbutton2 = gtk_font_button_new (); + gtk_table_attach (GTK_TABLE (table14), fontbutton2, 1, 2, 1, 2, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + gtk_font_button_set_title (GTK_FONT_BUTTON (fontbutton2), _("Select playlist font:")); + gtk_font_button_set_use_font (GTK_FONT_BUTTON (fontbutton2), TRUE); + gtk_font_button_set_use_size (GTK_FONT_BUTTON (fontbutton2), TRUE); + + alignment99 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox39), alignment99, TRUE, TRUE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment99), 4, 0, 12, 0); + + checkbutton11 = gtk_check_button_new_with_mnemonic (_("Use Bitmap fonts if available")); + gtk_container_add (GTK_CONTAINER (alignment99), checkbutton11); + gtk_tooltips_set_tip (tooltips, checkbutton11, _("Use bitmap fonts if they are available. Bitmap fonts do not support Unicode strings."), NULL); + + vbox40 = gtk_vbox_new (FALSE, 0); + gtk_box_pack_start (GTK_BOX (vbox37), vbox40, FALSE, TRUE, 0); + + alignment100 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox40), alignment100, TRUE, TRUE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment100), 12, 6, 0, 0); + + label107 = gtk_label_new_with_mnemonic (_("<b>_Miscellaneous</b>")); + gtk_container_add (GTK_CONTAINER (alignment100), label107); + gtk_label_set_use_markup (GTK_LABEL (label107), TRUE); + gtk_misc_set_alignment (GTK_MISC (label107), 0, 0.5); + + alignment101 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox40), alignment101, TRUE, TRUE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment101), 2, 0, 12, 0); + + playlist_show_pl_numbers = gtk_check_button_new_with_mnemonic (_("Show track numbers in playlist")); + gtk_container_add (GTK_CONTAINER (alignment101), playlist_show_pl_numbers); + + alignment102 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox40), alignment102, TRUE, TRUE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment102), 0, 0, 12, 0); + + playlist_show_pl_separator = gtk_check_button_new_with_mnemonic (_("Show separators in playlist")); + gtk_container_add (GTK_CONTAINER (alignment102), playlist_show_pl_separator); + + alignment103 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox40), alignment103, TRUE, TRUE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment103), 0, 0, 12, 0); + + checkbutton14 = gtk_check_button_new_with_mnemonic (_("Use custom cursors")); + gtk_container_add (GTK_CONTAINER (alignment103), checkbutton14); + + alignment104 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox40), alignment104, TRUE, TRUE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment104), 0, 0, 12, 0); + + show_wm_decorations = gtk_check_button_new_with_mnemonic (_("Show window manager decoration")); + gtk_container_add (GTK_CONTAINER (alignment104), show_wm_decorations); + gtk_tooltips_set_tip (tooltips, show_wm_decorations, _("This enables the window manager to show decorations for windows."), NULL); + + alignment105 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox40), alignment105, TRUE, TRUE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment105), 0, 0, 12, 0); + + xmms_style_fileselector_cb1 = gtk_check_button_new_with_mnemonic (_("Use XMMS-style file selector instead of the default selector")); + gtk_container_add (GTK_CONTAINER (alignment105), xmms_style_fileselector_cb1); + gtk_tooltips_set_tip (tooltips, xmms_style_fileselector_cb1, _("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)."), NULL); + + alignment106 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox40), alignment106, TRUE, TRUE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment106), 0, 0, 12, 0); + + checkbutton17 = gtk_check_button_new_with_mnemonic (_("Use two-way text scroller")); + gtk_container_add (GTK_CONTAINER (alignment106), checkbutton17); + gtk_tooltips_set_tip (tooltips, checkbutton17, _("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."), NULL); + + appearance_label = gtk_label_new (_("Appearance")); + gtk_notebook_set_tab_label (GTK_NOTEBOOK (category_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (category_notebook), 1), appearance_label); + + mouse_page_vbox = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (category_notebook), mouse_page_vbox); + + vbox20 = gtk_vbox_new (FALSE, 0); + gtk_box_pack_start (GTK_BOX (mouse_page_vbox), vbox20, TRUE, TRUE, 0); + + alignment36 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox20), alignment36, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment36), 0, 12, 0, 0); + + label51 = gtk_label_new (_("<b>Mouse wheel</b>")); + gtk_container_add (GTK_CONTAINER (alignment36), label51); + gtk_label_set_use_markup (GTK_LABEL (label51), TRUE); + gtk_misc_set_alignment (GTK_MISC (label51), 0, 0); + + alignment34 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox20), alignment34, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment34), 0, 0, 12, 0); + + table4 = gtk_table_new (2, 3, FALSE); + gtk_container_add (GTK_CONTAINER (alignment34), table4); + gtk_table_set_row_spacings (GTK_TABLE (table4), 6); + + mouse_wheel_volume_adj = gtk_adjustment_new (5, 0, 100, 1, 10, 10); + mouse_wheel_volume = gtk_spin_button_new (GTK_ADJUSTMENT (mouse_wheel_volume_adj), 1, 0); + gtk_table_attach (GTK_TABLE (table4), mouse_wheel_volume, 1, 2, 0, 1, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 4, 0); + gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (mouse_wheel_volume), TRUE); + + label35 = gtk_label_new (_("lines")); + gtk_table_attach (GTK_TABLE (table4), label35, 2, 3, 1, 2, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_misc_set_alignment (GTK_MISC (label35), 0, 0.5); + gtk_misc_set_padding (GTK_MISC (label35), 4, 0); + + mouse_wheel_scroll_pl_adj = gtk_adjustment_new (1, 0, 100, 1, 10, 10); + mouse_wheel_scroll_pl = gtk_spin_button_new (GTK_ADJUSTMENT (mouse_wheel_scroll_pl_adj), 1, 0); + gtk_table_attach (GTK_TABLE (table4), mouse_wheel_scroll_pl, 1, 2, 1, 2, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 4, 0); + + label34 = gtk_label_new (_("Scrolls playlist by")); + gtk_table_attach (GTK_TABLE (table4), label34, 0, 1, 1, 2, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_misc_set_alignment (GTK_MISC (label34), 0, 0.5); + gtk_misc_set_padding (GTK_MISC (label34), 4, 0); + + label33 = gtk_label_new (_("percent")); + gtk_table_attach (GTK_TABLE (table4), label33, 2, 3, 0, 1, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_misc_set_alignment (GTK_MISC (label33), 0, 0.5); + gtk_misc_set_padding (GTK_MISC (label33), 4, 0); + + label32 = gtk_label_new (_("Changes volume by")); + gtk_table_attach (GTK_TABLE (table4), label32, 0, 1, 0, 1, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_misc_set_alignment (GTK_MISC (label32), 0, 0.5); + gtk_misc_set_padding (GTK_MISC (label32), 4, 0); + + mouse_label = gtk_label_new (_("Mouse")); + gtk_notebook_set_tab_label (GTK_NOTEBOOK (category_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (category_notebook), 2), mouse_label); + + playlist_page_vbox = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (category_notebook), playlist_page_vbox); + + vbox5 = gtk_vbox_new (FALSE, 0); + gtk_box_pack_start (GTK_BOX (playlist_page_vbox), vbox5, TRUE, TRUE, 0); + + alignment14 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox5), alignment14, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment14), 0, 12, 0, 0); + + label38 = gtk_label_new (_("<b>Filename</b>")); + gtk_container_add (GTK_CONTAINER (alignment14), label38); + gtk_label_set_use_markup (GTK_LABEL (label38), TRUE); + gtk_misc_set_alignment (GTK_MISC (label38), 0, 0.5); + + alignment12 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox5), alignment12, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment12), 0, 0, 12, 0); + + playlist_convert_underscore = gtk_check_button_new_with_mnemonic (_("Convert underscores to blanks")); + gtk_container_add (GTK_CONTAINER (alignment12), playlist_convert_underscore); + + alignment13 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox5), alignment13, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment13), 0, 0, 12, 0); + + playlist_convert_twenty = gtk_check_button_new_with_mnemonic (_("Convert %20 to blanks")); + gtk_container_add (GTK_CONTAINER (alignment13), playlist_convert_twenty); + + alignment88 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox5), alignment88, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment88), 0, 0, 12, 0); + + playlist_convert_slash = gtk_check_button_new_with_mnemonic (_("Convert backslash '\\' to forward slash '/'")); + gtk_container_add (GTK_CONTAINER (alignment88), playlist_convert_slash); + + alignment15 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox5), alignment15, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment15), 12, 12, 0, 0); + + label39 = gtk_label_new (_("<b>Metadata</b>")); + gtk_container_add (GTK_CONTAINER (alignment15), label39); + gtk_label_set_use_markup (GTK_LABEL (label39), TRUE); + gtk_misc_set_alignment (GTK_MISC (label39), 0, 0.5); + + alignment16 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox5), alignment16, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment16), 0, 0, 12, 0); + + playlist_use_metadata = gtk_check_button_new_with_mnemonic (_("Load metadata from playlists and files")); + gtk_container_add (GTK_CONTAINER (alignment16), playlist_use_metadata); + gtk_tooltips_set_tip (tooltips, playlist_use_metadata, _("Load metadata (tag information) from music files."), NULL); + + alignment18 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox5), alignment18, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment18), 0, 0, 24, 0); + + playlist_use_metadata_box = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (alignment18), playlist_use_metadata_box); + + playlist_metadata_on_load = gtk_radio_button_new_with_mnemonic (NULL, _("On load")); + gtk_box_pack_start (GTK_BOX (playlist_use_metadata_box), playlist_metadata_on_load, FALSE, FALSE, 0); + gtk_tooltips_set_tip (tooltips, playlist_metadata_on_load, _("Load metadata when adding the file to the playlist or opening it"), NULL); + gtk_radio_button_set_group (GTK_RADIO_BUTTON (playlist_metadata_on_load), playlist_metadata_on_load_group); + playlist_metadata_on_load_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (playlist_metadata_on_load)); + + playlist_metadata_on_display = gtk_radio_button_new_with_mnemonic (NULL, _("On display")); + gtk_box_pack_start (GTK_BOX (playlist_use_metadata_box), playlist_metadata_on_display, FALSE, FALSE, 0); + gtk_tooltips_set_tip (tooltips, playlist_metadata_on_display, _("Load metadata on demand when displaying the file in the playlist. You may need to set \"Detect file formats on demand\" in Audio page for full benefit."), NULL); + gtk_radio_button_set_group (GTK_RADIO_BUTTON (playlist_metadata_on_display), playlist_metadata_on_load_group); + playlist_metadata_on_load_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (playlist_metadata_on_display)); + + table10 = gtk_table_new (2, 2, FALSE); + gtk_box_pack_start (GTK_BOX (playlist_use_metadata_box), table10, TRUE, TRUE, 0); + + label73 = gtk_label_new (_("Auto character encoding detector for:")); + gtk_table_attach (GTK_TABLE (table10), label73, 0, 1, 0, 1, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_label_set_justify (GTK_LABEL (label73), GTK_JUSTIFY_RIGHT); + gtk_misc_set_alignment (GTK_MISC (label73), 1, 0.5); + + combobox1 = gtk_combo_box_new_text (); + gtk_table_attach (GTK_TABLE (table10), combobox1, 1, 2, 0, 1, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + + entry1 = gtk_entry_new (); + gtk_table_attach (GTK_TABLE (table10), entry1, 1, 2, 1, 2, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + gtk_tooltips_set_tip (tooltips, entry1, _("List of character encodings used for fall back conversion of metadata. If automatic character encoding detector failed or has been disabled, encodings in this list would be treated as candidates of the encoding of metadata, and fall back conversion from these encodings to UTF-8 would be attempted."), NULL); + + label74 = gtk_label_new (_("Fallback character encodings:")); + gtk_table_attach (GTK_TABLE (table10), label74, 0, 1, 1, 2, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_label_set_justify (GTK_LABEL (label74), GTK_JUSTIFY_RIGHT); + gtk_misc_set_alignment (GTK_MISC (label74), 1, 0.5); + + alignment19 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox5), alignment19, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment19), 12, 12, 0, 0); + + label40 = gtk_label_new (_("<b>File Dialog</b>")); + gtk_container_add (GTK_CONTAINER (alignment19), label40); + gtk_label_set_use_markup (GTK_LABEL (label40), TRUE); + gtk_misc_set_alignment (GTK_MISC (label40), 0, 0.5); + + alignment20 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox5), alignment20, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment20), 0, 0, 12, 0); + + refresh_file_list = gtk_check_button_new_with_mnemonic (_("Always refresh directory when opening file dialog")); + gtk_container_add (GTK_CONTAINER (alignment20), refresh_file_list); + gtk_tooltips_set_tip (tooltips, refresh_file_list, _("Always refresh the file dialog (this will slow opening the dialog on large directories, and Gnome VFS should handle automatically)."), NULL); + + alignment55 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox5), alignment55, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment55), 12, 12, 0, 0); + + label60 = gtk_label_new (_("<b>Song Display</b>")); + gtk_container_add (GTK_CONTAINER (alignment55), label60); + gtk_label_set_use_markup (GTK_LABEL (label60), TRUE); + gtk_misc_set_alignment (GTK_MISC (label60), 0, 0.5); + + alignment56 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox5), alignment56, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment56), 0, 0, 12, 0); + + table6 = gtk_table_new (2, 3, FALSE); + gtk_container_add (GTK_CONTAINER (alignment56), table6); + gtk_table_set_row_spacings (GTK_TABLE (table6), 4); + gtk_table_set_col_spacings (GTK_TABLE (table6), 12); + + titlestring_help_button = gtk_button_new (); + gtk_table_attach (GTK_TABLE (table6), titlestring_help_button, 2, 3, 1, 2, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + GTK_WIDGET_UNSET_FLAGS (titlestring_help_button, GTK_CAN_FOCUS); + gtk_tooltips_set_tip (tooltips, titlestring_help_button, _("Show information about titlestring format"), NULL); + gtk_button_set_relief (GTK_BUTTON (titlestring_help_button), GTK_RELIEF_HALF); + gtk_button_set_focus_on_click (GTK_BUTTON (titlestring_help_button), FALSE); + + image1 = gtk_image_new_from_stock ("gtk-index", GTK_ICON_SIZE_BUTTON); + gtk_container_add (GTK_CONTAINER (titlestring_help_button), image1); + + titlestring_cbox = gtk_combo_box_new_text (); + gtk_table_attach (GTK_TABLE (table6), titlestring_cbox, 1, 3, 0, 1, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + gtk_combo_box_append_text (GTK_COMBO_BOX (titlestring_cbox), _("TITLE")); + gtk_combo_box_append_text (GTK_COMBO_BOX (titlestring_cbox), _("ARTIST - TITLE")); + gtk_combo_box_append_text (GTK_COMBO_BOX (titlestring_cbox), _("ARTIST - ALBUM - TITLE")); + gtk_combo_box_append_text (GTK_COMBO_BOX (titlestring_cbox), _("ARTIST - ALBUM - TRACK. TITLE")); + gtk_combo_box_append_text (GTK_COMBO_BOX (titlestring_cbox), _("ARTIST [ ALBUM ] - TRACK. TITLE")); + gtk_combo_box_append_text (GTK_COMBO_BOX (titlestring_cbox), _("ALBUM - TITLE")); + gtk_combo_box_append_text (GTK_COMBO_BOX (titlestring_cbox), _("Custom")); + + titlestring_entry = gtk_entry_new (); + gtk_table_attach (GTK_TABLE (table6), titlestring_entry, 1, 2, 1, 2, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + + label62 = gtk_label_new (_("Custom string:")); + gtk_table_attach (GTK_TABLE (table6), label62, 0, 1, 1, 2, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_label_set_justify (GTK_LABEL (label62), GTK_JUSTIFY_RIGHT); + gtk_misc_set_alignment (GTK_MISC (label62), 1, 0.5); + + label61 = gtk_label_new (_("Title format:")); + gtk_table_attach (GTK_TABLE (table6), label61, 0, 1, 0, 1, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_label_set_justify (GTK_LABEL (label61), GTK_JUSTIFY_RIGHT); + gtk_misc_set_alignment (GTK_MISC (label61), 1, 0.5); + + alignment85 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox5), alignment85, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment85), 12, 12, 0, 0); + + label84 = gtk_label_new (_("<b>Popup Information</b>")); + gtk_container_add (GTK_CONTAINER (alignment85), label84); + gtk_label_set_use_markup (GTK_LABEL (label84), TRUE); + gtk_misc_set_alignment (GTK_MISC (label84), 0, 0.5); + + alignment86 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox5), alignment86, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment86), 0, 0, 12, 0); + + hbox9 = gtk_hbox_new (FALSE, 12); + gtk_container_add (GTK_CONTAINER (alignment86), hbox9); + + vbox34 = gtk_vbox_new (FALSE, 0); + gtk_box_pack_start (GTK_BOX (hbox9), vbox34, TRUE, TRUE, 0); + + checkbutton10 = gtk_check_button_new_with_mnemonic (_("Show popup information for playlist entries")); + gtk_box_pack_start (GTK_BOX (vbox34), checkbutton10, TRUE, FALSE, 0); + 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); + + filepopup_for_tuple_settings_button = gtk_button_new (); + gtk_box_pack_start (GTK_BOX (hbox9), filepopup_for_tuple_settings_button, FALSE, FALSE, 0); + GTK_WIDGET_UNSET_FLAGS (filepopup_for_tuple_settings_button, GTK_CAN_FOCUS); + gtk_tooltips_set_tip (tooltips, filepopup_for_tuple_settings_button, _("Edit settings for popup information"), NULL); + gtk_button_set_relief (GTK_BUTTON (filepopup_for_tuple_settings_button), GTK_RELIEF_HALF); + + image8 = gtk_image_new_from_stock ("gtk-properties", GTK_ICON_SIZE_BUTTON); + gtk_container_add (GTK_CONTAINER (filepopup_for_tuple_settings_button), image8); + + playlist_label = gtk_label_new (_("Playlist")); + gtk_notebook_set_tab_label (GTK_NOTEBOOK (category_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (category_notebook), 3), playlist_label); + + equalizer_page_vbox = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (category_notebook), equalizer_page_vbox); + + alignment28 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (equalizer_page_vbox), alignment28, TRUE, TRUE, 0); + + vbox22 = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (alignment28), vbox22); + + alignment30 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox22), alignment30, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment30), 0, 12, 0, 0); + + equalizer_page_label = gtk_label_new (_("<b>Presets</b>")); + gtk_container_add (GTK_CONTAINER (alignment30), equalizer_page_label); + gtk_label_set_use_markup (GTK_LABEL (equalizer_page_label), TRUE); + gtk_misc_set_alignment (GTK_MISC (equalizer_page_label), 0, 0.5); + + vbox23 = gtk_vbox_new (FALSE, 0); + gtk_box_pack_start (GTK_BOX (vbox22), vbox23, TRUE, TRUE, 0); + + alignment33 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox23), alignment33, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment33), 0, 12, 0, 0); + + table5 = gtk_table_new (2, 2, FALSE); + gtk_container_add (GTK_CONTAINER (alignment33), table5); + gtk_table_set_row_spacings (GTK_TABLE (table5), 6); + gtk_table_set_col_spacings (GTK_TABLE (table5), 6); + + label58 = gtk_label_new (_("File preset extension:")); + gtk_table_attach (GTK_TABLE (table5), label58, 0, 1, 1, 2, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_misc_set_alignment (GTK_MISC (label58), 0, 0.5); + + label57 = gtk_label_new (_("Directory preset file:")); + gtk_table_attach (GTK_TABLE (table5), label57, 0, 1, 0, 1, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_misc_set_alignment (GTK_MISC (label57), 0, 0.5); + + eq_file_preset_entry = gtk_entry_new (); + gtk_table_attach (GTK_TABLE (table5), eq_file_preset_entry, 1, 2, 1, 2, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + + eq_dir_preset_entry = gtk_entry_new (); + gtk_table_attach (GTK_TABLE (table5), eq_dir_preset_entry, 1, 2, 0, 1, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + + equalizer_label = gtk_label_new (_("Equalizer")); + gtk_notebook_set_tab_label (GTK_NOTEBOOK (category_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (category_notebook), 4), equalizer_label); + + connectivity_page_vbox = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (category_notebook), connectivity_page_vbox); + + vbox29 = gtk_vbox_new (FALSE, 0); + gtk_box_pack_start (GTK_BOX (connectivity_page_vbox), vbox29, TRUE, TRUE, 0); + + alignment63 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox29), alignment63, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment63), 0, 12, 0, 0); + + connectivity_page_label = gtk_label_new (_("<b>Proxy Configuration</b>")); + gtk_container_add (GTK_CONTAINER (alignment63), connectivity_page_label); + gtk_label_set_use_markup (GTK_LABEL (connectivity_page_label), TRUE); + gtk_misc_set_alignment (GTK_MISC (connectivity_page_label), 0, 0.5); + + alignment68 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox29), alignment68, TRUE, TRUE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment68), 0, 0, 12, 0); + + vbox30 = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (alignment68), vbox30); + + alignment65 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox30), alignment65, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment65), 0, 12, 0, 0); + + proxy_use = gtk_check_button_new_with_mnemonic (_("Enable proxy usage")); + gtk_container_add (GTK_CONTAINER (alignment65), proxy_use); + + table8 = gtk_table_new (2, 2, FALSE); + gtk_box_pack_start (GTK_BOX (vbox30), table8, FALSE, FALSE, 0); + gtk_table_set_row_spacings (GTK_TABLE (table8), 6); + gtk_table_set_col_spacings (GTK_TABLE (table8), 6); + + proxy_port = gtk_entry_new (); + gtk_table_attach (GTK_TABLE (table8), proxy_port, 1, 2, 1, 2, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + + proxy_host = gtk_entry_new (); + gtk_table_attach (GTK_TABLE (table8), proxy_host, 1, 2, 0, 1, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + + label69 = gtk_label_new (_("Proxy port:")); + gtk_table_attach (GTK_TABLE (table8), label69, 0, 1, 1, 2, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_misc_set_alignment (GTK_MISC (label69), 0, 0.5); + + label68 = gtk_label_new (_("Proxy hostname:")); + gtk_table_attach (GTK_TABLE (table8), label68, 0, 1, 0, 1, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_misc_set_alignment (GTK_MISC (label68), 0, 0); + + alignment67 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox30), alignment67, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment67), 12, 12, 0, 0); + + proxy_auth = gtk_check_button_new_with_mnemonic (_("Use authentication with proxy")); + gtk_container_add (GTK_CONTAINER (alignment67), proxy_auth); + + table9 = gtk_table_new (2, 2, FALSE); + gtk_box_pack_start (GTK_BOX (vbox30), table9, FALSE, FALSE, 0); + gtk_table_set_row_spacings (GTK_TABLE (table9), 6); + gtk_table_set_col_spacings (GTK_TABLE (table9), 6); + + proxy_pass = gtk_entry_new (); + gtk_table_attach (GTK_TABLE (table9), proxy_pass, 1, 2, 1, 2, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + gtk_entry_set_visibility (GTK_ENTRY (proxy_pass), FALSE); + + proxy_user = gtk_entry_new (); + gtk_table_attach (GTK_TABLE (table9), proxy_user, 1, 2, 0, 1, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + + label71 = gtk_label_new (_("Proxy password:")); + gtk_table_attach (GTK_TABLE (table9), label71, 0, 1, 1, 2, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_misc_set_alignment (GTK_MISC (label71), 0, 0.5); + + label70 = gtk_label_new (_("Proxy username:")); + gtk_table_attach (GTK_TABLE (table9), label70, 0, 1, 0, 1, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_misc_set_alignment (GTK_MISC (label70), 0, 0); + + alignment72 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (vbox30), alignment72, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment72), 6, 0, 0, 0); + + hbox6 = gtk_hbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (alignment72), hbox6); + + image4 = gtk_image_new_from_stock ("gtk-dialog-warning", GTK_ICON_SIZE_BUTTON); + gtk_box_pack_start (GTK_BOX (hbox6), image4, FALSE, FALSE, 0); + gtk_misc_set_padding (GTK_MISC (image4), 3, 0); + + label75 = gtk_label_new (_("<span size=\"small\">Changing these settings will require a restart of Audacious.</span>")); + gtk_box_pack_start (GTK_BOX (hbox6), label75, FALSE, FALSE, 0); + gtk_label_set_use_markup (GTK_LABEL (label75), TRUE); + + label95 = gtk_label_new (""); + gtk_notebook_set_tab_label (GTK_NOTEBOOK (category_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (category_notebook), 5), label95); + + empty_notebook_page = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (category_notebook), empty_notebook_page); + + label96 = gtk_label_new (""); + gtk_notebook_set_tab_label (GTK_NOTEBOOK (category_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (category_notebook), 6), label96); + + audio_scrolled_window = gtk_scrolled_window_new (NULL, NULL); + gtk_container_add (GTK_CONTAINER (empty_notebook_page), audio_scrolled_window); + gtk_notebook_set_tab_label_packing (GTK_NOTEBOOK (category_notebook), audio_scrolled_window, + TRUE, TRUE, GTK_PACK_START); + gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (audio_scrolled_window), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS); + + audio_page_viewport = gtk_viewport_new (NULL, NULL); + gtk_container_add (GTK_CONTAINER (audio_scrolled_window), audio_page_viewport); + gtk_widget_set_events (audio_page_viewport, GDK_POINTER_MOTION_MASK | GDK_POINTER_MOTION_HINT_MASK | GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK); + gtk_viewport_set_shadow_type (GTK_VIEWPORT (audio_page_viewport), GTK_SHADOW_NONE); + + audio_page_vbox = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (audio_page_viewport), audio_page_vbox); + + alignment74 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment74, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment74), 0, 12, 0, 0); + + label77 = gtk_label_new (_("<b>Audio System</b>")); + gtk_container_add (GTK_CONTAINER (alignment74), label77); + gtk_label_set_use_markup (GTK_LABEL (label77), TRUE); + gtk_misc_set_alignment (GTK_MISC (label77), 0, 0.5); + + alignment73 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment73, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment73), 0, 6, 12, 0); + + vbox33 = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (alignment73), vbox33); + + table11 = gtk_table_new (3, 2, FALSE); + gtk_box_pack_start (GTK_BOX (vbox33), table11, FALSE, FALSE, 0); + gtk_table_set_row_spacings (GTK_TABLE (table11), 6); + gtk_table_set_col_spacings (GTK_TABLE (table11), 6); + + image7 = gtk_image_new_from_stock ("gtk-info", GTK_ICON_SIZE_BUTTON); + gtk_table_attach (GTK_TABLE (table11), image7, 0, 1, 2, 3, + (GtkAttachOptions) (0), + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); + gtk_misc_set_alignment (GTK_MISC (image7), 1, 0); + + label79 = gtk_label_new (_("Buffer size:")); + gtk_table_attach (GTK_TABLE (table11), label79, 0, 1, 1, 2, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + gtk_misc_set_alignment (GTK_MISC (label79), 1, 0.5); + + 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>")); + gtk_table_attach (GTK_TABLE (table11), label82, 1, 2, 2, 3, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_label_set_use_markup (GTK_LABEL (label82), TRUE); + gtk_label_set_line_wrap (GTK_LABEL (label82), TRUE); + gtk_misc_set_alignment (GTK_MISC (label82), 0, 0.5); + + output_plugin_bufsize_adj = gtk_adjustment_new (0, 0, 600000, 100, 1000, 1000); + output_plugin_bufsize = gtk_spin_button_new (GTK_ADJUSTMENT (output_plugin_bufsize_adj), 1, 0); + gtk_table_attach (GTK_TABLE (table11), output_plugin_bufsize, 1, 2, 1, 2, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + + output_plugin_cbox = gtk_combo_box_new_text (); + gtk_table_attach (GTK_TABLE (table11), output_plugin_cbox, 1, 2, 0, 1, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + + label78 = gtk_label_new (_("Current output plugin:")); + gtk_table_attach (GTK_TABLE (table11), label78, 0, 1, 0, 1, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_misc_set_alignment (GTK_MISC (label78), 0, 0.5); + + alignment82 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment82, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment82), 0, 0, 12, 0); + + output_plugin_button_box = gtk_hbutton_box_new (); + gtk_container_add (GTK_CONTAINER (alignment82), output_plugin_button_box); + gtk_button_box_set_layout (GTK_BUTTON_BOX (output_plugin_button_box), GTK_BUTTONBOX_START); + gtk_box_set_spacing (GTK_BOX (output_plugin_button_box), 8); + + output_plugin_prefs = gtk_button_new (); + gtk_container_add (GTK_CONTAINER (output_plugin_button_box), output_plugin_prefs); + gtk_widget_set_sensitive (output_plugin_prefs, FALSE); + GTK_WIDGET_SET_FLAGS (output_plugin_prefs, GTK_CAN_DEFAULT); + + alignment76 = gtk_alignment_new (0.5, 0.5, 0, 0); + gtk_container_add (GTK_CONTAINER (output_plugin_prefs), alignment76); + + hbox7 = gtk_hbox_new (FALSE, 2); + gtk_container_add (GTK_CONTAINER (alignment76), hbox7); + + image5 = gtk_image_new_from_stock ("gtk-preferences", GTK_ICON_SIZE_BUTTON); + gtk_box_pack_start (GTK_BOX (hbox7), image5, FALSE, FALSE, 0); + + label80 = gtk_label_new_with_mnemonic (_("Output Plugin Preferences")); + gtk_box_pack_start (GTK_BOX (hbox7), label80, FALSE, FALSE, 0); + + output_plugin_info = gtk_button_new (); + gtk_container_add (GTK_CONTAINER (output_plugin_button_box), output_plugin_info); + gtk_widget_set_sensitive (output_plugin_info, FALSE); + GTK_WIDGET_SET_FLAGS (output_plugin_info, GTK_CAN_DEFAULT); + + alignment77 = gtk_alignment_new (0.5, 0.5, 0, 0); + gtk_container_add (GTK_CONTAINER (output_plugin_info), alignment77); + + hbox8 = gtk_hbox_new (FALSE, 2); + gtk_container_add (GTK_CONTAINER (alignment77), hbox8); + + image6 = gtk_image_new_from_stock ("gtk-about", GTK_ICON_SIZE_BUTTON); + gtk_box_pack_start (GTK_BOX (hbox8), image6, FALSE, FALSE, 0); + + label81 = gtk_label_new_with_mnemonic (_("Output Plugin Information")); + gtk_box_pack_start (GTK_BOX (hbox8), label81, FALSE, FALSE, 0); + + alignment78 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment78, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment78), 12, 12, 0, 0); + + label83 = gtk_label_new (_("<b>Format Detection</b>")); + gtk_container_add (GTK_CONTAINER (alignment78), label83); + gtk_label_set_use_markup (GTK_LABEL (label83), TRUE); + gtk_misc_set_alignment (GTK_MISC (label83), 0, 0.5); + + alignment84 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment84, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment84), 0, 0, 12, 0); + + audio_format_det_cb = gtk_check_button_new_with_mnemonic (_("Detect file formats on demand, instead of immediately.")); + gtk_container_add (GTK_CONTAINER (alignment84), audio_format_det_cb); + gtk_tooltips_set_tip (tooltips, audio_format_det_cb, _("When checked, Audacious will detect file formats on demand. This can result in a messier playlist, but delivers a major speed benefit."), NULL); + + alignment89 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment89, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment89), 0, 0, 12, 0); + + detect_by_extension_cb = gtk_check_button_new_with_mnemonic (_("Detect file formats by extension.")); + gtk_container_add (GTK_CONTAINER (alignment89), detect_by_extension_cb); + gtk_tooltips_set_tip (tooltips, detect_by_extension_cb, _("When checked, Audacious will detect file formats based by extension. Only files with extensions of supported formats will be loaded."), NULL); + + alignment19 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment19, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment19), 12, 12, 0, 0); + + label40 = gtk_label_new (_("<b>Playback</b>")); + gtk_container_add (GTK_CONTAINER (alignment19), label40); + gtk_label_set_use_markup (GTK_LABEL (label40), TRUE); + gtk_misc_set_alignment (GTK_MISC (label40), 0, 0.5); + + alignment83 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment83, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment83), 0, 0, 12, 0); + + continue_playback_on_startup = gtk_check_button_new_with_mnemonic (_("Continue playback on startup")); + gtk_container_add (GTK_CONTAINER (alignment83), continue_playback_on_startup); + gtk_tooltips_set_tip (tooltips, continue_playback_on_startup, _("When Audacious starts, automatically begin playing from the point where we stopped before."), NULL); + + alignment79 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment79, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment79), 0, 0, 12, 0); + + playlist_no_advance = gtk_check_button_new_with_mnemonic (_("Don't advance in the playlist")); + gtk_container_add (GTK_CONTAINER (alignment79), playlist_no_advance); + gtk_tooltips_set_tip (tooltips, playlist_no_advance, _("When finished playing a song, don't automatically advance to the next."), NULL); + + alignment80 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment80, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment80), 0, 0, 12, 0); + + pause_between_songs = gtk_check_button_new_with_mnemonic (_("Pause between songs")); + gtk_container_add (GTK_CONTAINER (alignment80), pause_between_songs); + + alignment22 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment22, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment22), 0, 0, 45, 0); + + pause_between_songs_box = gtk_hbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (alignment22), pause_between_songs_box); + + label41 = gtk_label_new (_("Pause for")); + gtk_box_pack_start (GTK_BOX (pause_between_songs_box), label41, FALSE, FALSE, 0); + gtk_misc_set_padding (GTK_MISC (label41), 4, 0); + + pause_between_songs_time_adj = gtk_adjustment_new (2, 0, 100, 1, 10, 10); + pause_between_songs_time = gtk_spin_button_new (GTK_ADJUSTMENT (pause_between_songs_time_adj), 1, 0); + gtk_box_pack_start (GTK_BOX (pause_between_songs_box), pause_between_songs_time, FALSE, FALSE, 0); + + label42 = gtk_label_new (_("seconds")); + gtk_box_pack_start (GTK_BOX (pause_between_songs_box), label42, FALSE, FALSE, 0); + gtk_misc_set_padding (GTK_MISC (label42), 4, 0); + + alignment90 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment90, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment90), 12, 12, 0, 0); + + label93 = gtk_label_new (_("<b>Sampling Rate Converter</b>")); + gtk_container_add (GTK_CONTAINER (alignment90), label93); + gtk_label_set_use_markup (GTK_LABEL (label93), TRUE); + gtk_misc_set_alignment (GTK_MISC (label93), 0, 0.5); + + alignment92 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment92, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment92), 0, 0, 12, 0); + + enable_src = gtk_check_button_new_with_mnemonic (_("Enable Sampling Rate Converter")); + gtk_container_add (GTK_CONTAINER (alignment92), enable_src); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (enable_src), TRUE); + + alignment91 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment91, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment91), 0, 6, 12, 0); + + vbox36 = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (alignment91), vbox36); + + table13 = gtk_table_new (3, 2, FALSE); + gtk_box_pack_start (GTK_BOX (vbox36), table13, FALSE, FALSE, 0); + gtk_table_set_row_spacings (GTK_TABLE (table13), 6); + gtk_table_set_col_spacings (GTK_TABLE (table13), 6); + + src_converter_type = gtk_combo_box_new_text (); + gtk_table_attach (GTK_TABLE (table13), src_converter_type, 1, 2, 1, 2, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_combo_box_append_text (GTK_COMBO_BOX (src_converter_type), _("Best Sinc Interpolation")); + gtk_combo_box_append_text (GTK_COMBO_BOX (src_converter_type), _("Medium Sinc Interpolation")); + gtk_combo_box_append_text (GTK_COMBO_BOX (src_converter_type), _("Fastest Sinc Interpolation")); + gtk_combo_box_append_text (GTK_COMBO_BOX (src_converter_type), _("ZOH Interpolation")); + gtk_combo_box_append_text (GTK_COMBO_BOX (src_converter_type), _("Linear Interpolation")); + + label94 = gtk_label_new (_("Interpolation Engine:")); + gtk_table_attach (GTK_TABLE (table13), label94, 0, 1, 1, 2, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_misc_set_alignment (GTK_MISC (label94), 0, 0.5); + + 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>")); + gtk_table_attach (GTK_TABLE (table13), label92, 1, 2, 2, 3, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_label_set_use_markup (GTK_LABEL (label92), TRUE); + gtk_label_set_line_wrap (GTK_LABEL (label92), TRUE); + gtk_misc_set_alignment (GTK_MISC (label92), 0, 0.5); + + image9 = gtk_image_new_from_stock ("gtk-info", GTK_ICON_SIZE_BUTTON); + gtk_table_attach (GTK_TABLE (table13), image9, 0, 1, 2, 3, + (GtkAttachOptions) (0), + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0); + gtk_misc_set_alignment (GTK_MISC (image9), 1, 0); + + src_rate_adj = gtk_adjustment_new (96000, 1000, 768000, 1000, 1000, 1000); + src_rate = gtk_spin_button_new (GTK_ADJUSTMENT (src_rate_adj), 1, 0); + gtk_table_attach (GTK_TABLE (table13), src_rate, 1, 2, 0, 1, + (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), + (GtkAttachOptions) (0), 0, 0); + + label91 = gtk_label_new (_("Sampling Rate [Hz]:")); + gtk_table_attach (GTK_TABLE (table13), label91, 0, 1, 0, 1, + (GtkAttachOptions) (0), + (GtkAttachOptions) (0), 0, 0); + gtk_misc_set_alignment (GTK_MISC (label91), 0, 0.5); + + alignment4 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment4, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment4), 12, 12, 0, 0); + + label2 = gtk_label_new (_("<b>Volume Control</b>")); + gtk_container_add (GTK_CONTAINER (alignment4), label2); + gtk_label_set_use_markup (GTK_LABEL (label2), TRUE); + gtk_misc_set_alignment (GTK_MISC (label2), 0, 0.5); + + alignment7 = gtk_alignment_new (0.5, 0.5, 1, 1); + gtk_box_pack_start (GTK_BOX (audio_page_vbox), alignment7, FALSE, FALSE, 0); + gtk_alignment_set_padding (GTK_ALIGNMENT (alignment7), 0, 0, 12, 0); + + software_volume_control = gtk_check_button_new_with_mnemonic (_("Use software volume control")); + gtk_container_add (GTK_CONTAINER (alignment7), software_volume_control); + 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); + + empty_notebook_page = gtk_vbox_new (FALSE, 0); + gtk_container_add (GTK_CONTAINER (category_notebook), empty_notebook_page); + + hseparator1 = gtk_hseparator_new (); + gtk_box_pack_start (GTK_BOX (vbox), hseparator1, FALSE, FALSE, 6); + + hbox4 = gtk_hbox_new (FALSE, 0); + gtk_box_pack_start (GTK_BOX (vbox), hbox4, FALSE, FALSE, 0); + + audversionlabel = gtk_label_new (""); + gtk_box_pack_start (GTK_BOX (hbox4), audversionlabel, FALSE, FALSE, 0); + gtk_label_set_use_markup (GTK_LABEL (audversionlabel), TRUE); + + prefswin_button_box = gtk_hbutton_box_new (); + gtk_box_pack_start (GTK_BOX (hbox4), prefswin_button_box, TRUE, TRUE, 0); + gtk_button_box_set_layout (GTK_BUTTON_BOX (prefswin_button_box), GTK_BUTTONBOX_END); + gtk_box_set_spacing (GTK_BOX (prefswin_button_box), 6); + + reload_plugins = gtk_button_new (); + gtk_container_add (GTK_CONTAINER (prefswin_button_box), reload_plugins); + GTK_WIDGET_SET_FLAGS (reload_plugins, GTK_CAN_DEFAULT); + + alignment93 = gtk_alignment_new (0.5, 0.5, 0, 0); + gtk_container_add (GTK_CONTAINER (reload_plugins), alignment93); + + hbox11 = gtk_hbox_new (FALSE, 2); + gtk_container_add (GTK_CONTAINER (alignment93), hbox11); + + image10 = gtk_image_new_from_stock ("gtk-refresh", GTK_ICON_SIZE_BUTTON); + gtk_box_pack_start (GTK_BOX (hbox11), image10, FALSE, FALSE, 0); + + label102 = gtk_label_new_with_mnemonic (_("Reload Plugins")); + gtk_box_pack_start (GTK_BOX (hbox11), label102, FALSE, FALSE, 0); + + close = gtk_button_new_from_stock ("gtk-close"); + gtk_container_add (GTK_CONTAINER (prefswin_button_box), close); + GTK_WIDGET_SET_FLAGS (close, GTK_CAN_DEFAULT); + gtk_widget_add_accelerator (close, "clicked", accel_group, + GDK_Escape, (GdkModifierType) 0, + GTK_ACCEL_VISIBLE); + + + gtk_label_set_mnemonic_widget (GTK_LABEL (input_plugin_list_label), category_notebook); + gtk_label_set_mnemonic_widget (GTK_LABEL (label11), category_notebook); + gtk_label_set_mnemonic_widget (GTK_LABEL (label53), category_notebook); + gtk_label_set_mnemonic_widget (GTK_LABEL (label64), category_notebook); + gtk_label_set_mnemonic_widget (GTK_LABEL (label103), category_notebook); + gtk_label_set_mnemonic_widget (GTK_LABEL (label104), category_notebook); + gtk_label_set_mnemonic_widget (GTK_LABEL (label105), fontbutton1); + gtk_label_set_mnemonic_widget (GTK_LABEL (label106), fontbutton2); + gtk_label_set_mnemonic_widget (GTK_LABEL (label107), category_notebook); + + gtk_window_add_accel_group (GTK_WINDOW (prefswin), accel_group); + + /* connect signals */ + g_signal_connect(G_OBJECT(prefswin), "delete_event", + G_CALLBACK(gtk_widget_hide_on_delete), + NULL); + g_signal_connect_after(G_OBJECT(input_plugin_view), "realize", + G_CALLBACK(on_input_plugin_view_realize), + NULL); + g_signal_connect_after(G_OBJECT(general_plugin_view), "realize", + G_CALLBACK(on_general_plugin_view_realize), + NULL); + g_signal_connect_after(G_OBJECT(vis_plugin_view), "realize", + G_CALLBACK(on_vis_plugin_view_realize), + NULL); + g_signal_connect_after(G_OBJECT(effect_plugin_view), "realize", + G_CALLBACK(on_effect_plugin_view_realize), + NULL); + g_signal_connect(G_OBJECT(colorspace_button), "clicked", + G_CALLBACK(on_colorize_button_clicked), + NULL); + g_signal_connect_swapped(G_OBJECT(skin_refresh_button), "clicked", + G_CALLBACK(on_skin_refresh_button_clicked), + prefswin); + g_signal_connect_after(G_OBJECT(skin_view), "realize", + G_CALLBACK(on_skin_view_realize), + NULL); + g_signal_connect_after(G_OBJECT(fontbutton1), "realize", + G_CALLBACK(on_mainwin_font_button_realize), + NULL); + g_signal_connect(G_OBJECT(fontbutton1), "font_set", + G_CALLBACK(on_mainwin_font_button_font_set), + NULL); + g_signal_connect_after(G_OBJECT(fontbutton2), "realize", + G_CALLBACK(on_playlist_font_button_realize), + NULL); + g_signal_connect(G_OBJECT(fontbutton2), "font_set", + G_CALLBACK(on_playlist_font_button_font_set), + NULL); + g_signal_connect(G_OBJECT(checkbutton11), "toggled", + G_CALLBACK(on_use_bitmap_fonts_toggled), + NULL); + g_signal_connect_after(G_OBJECT(checkbutton11), "realize", + G_CALLBACK(on_use_bitmap_fonts_realize), + NULL); + g_signal_connect(G_OBJECT(playlist_show_pl_numbers), "toggled", + G_CALLBACK(on_playlist_show_pl_numbers_toggled), + NULL); + g_signal_connect_after(G_OBJECT(playlist_show_pl_numbers), "realize", + G_CALLBACK(on_playlist_show_pl_numbers_realize), + NULL); + g_signal_connect(G_OBJECT(playlist_show_pl_separator), "toggled", + G_CALLBACK(on_playlist_show_pl_separator_toggled), + NULL); + g_signal_connect_after(G_OBJECT(playlist_show_pl_separator), "realize", + G_CALLBACK(on_playlist_show_pl_separator_realize), + NULL); + g_signal_connect(G_OBJECT(checkbutton14), "toggled", + G_CALLBACK(on_custom_cursors_toggled), + NULL); + g_signal_connect_after(G_OBJECT(checkbutton14), "realize", + G_CALLBACK(on_custom_cursors_realize), + NULL); + g_signal_connect(G_OBJECT(show_wm_decorations), "toggled", + G_CALLBACK(on_show_wm_decorations_toggled), + NULL); + g_signal_connect(G_OBJECT(show_wm_decorations), "realize", + G_CALLBACK(on_show_wm_decorations_realize), + NULL); + g_signal_connect(G_OBJECT(xmms_style_fileselector_cb1), "toggled", + G_CALLBACK(on_xmms_style_fileselector_toggled), + NULL); + g_signal_connect(G_OBJECT(xmms_style_fileselector_cb1), "realize", + G_CALLBACK(on_xmms_style_fileselector_realize), + NULL); + g_signal_connect(G_OBJECT(checkbutton17), "toggled", + G_CALLBACK(on_twoway_scroller_toggled), + NULL); + g_signal_connect(G_OBJECT(checkbutton17), "realize", + G_CALLBACK(on_twoway_scroller_realize), + NULL); + g_signal_connect(G_OBJECT(mouse_wheel_volume), "value_changed", + G_CALLBACK(on_mouse_wheel_volume_changed), + NULL); + g_signal_connect_after(G_OBJECT(mouse_wheel_volume), "realize", + G_CALLBACK(on_mouse_wheel_volume_realize), + NULL); + g_signal_connect(G_OBJECT(mouse_wheel_scroll_pl), "value_changed", + G_CALLBACK(on_mouse_wheel_scroll_pl_changed), + NULL); + g_signal_connect_after(G_OBJECT(mouse_wheel_scroll_pl), "realize", + G_CALLBACK(on_mouse_wheel_scroll_pl_realize), + NULL); + g_signal_connect(G_OBJECT(playlist_convert_underscore), "toggled", + G_CALLBACK(on_playlist_convert_underscore_toggled), + NULL); + g_signal_connect_after(G_OBJECT(playlist_convert_underscore), "realize", + G_CALLBACK(on_playlist_convert_underscore_realize), + NULL); + g_signal_connect(G_OBJECT(playlist_convert_twenty), "toggled", + G_CALLBACK(on_playlist_convert_twenty_toggled), + NULL); + g_signal_connect_after(G_OBJECT(playlist_convert_twenty), "realize", + G_CALLBACK(on_playlist_convert_twenty_realize), + NULL); + g_signal_connect(G_OBJECT(playlist_convert_slash), "toggled", + G_CALLBACK(on_playlist_convert_slash_toggled), + NULL); + g_signal_connect_after(G_OBJECT(playlist_convert_slash), "realize", + G_CALLBACK(on_playlist_convert_slash_realize), + NULL); + g_signal_connect(G_OBJECT(playlist_metadata_on_load), "toggled", + G_CALLBACK(on_pl_metadata_on_load_toggled), + NULL); + g_signal_connect_after(G_OBJECT(playlist_metadata_on_load), "realize", + G_CALLBACK(on_pl_metadata_on_load_realize), + NULL); + g_signal_connect(G_OBJECT(playlist_metadata_on_display), "toggled", + G_CALLBACK(on_pl_metadata_on_display_toggled), + NULL); + g_signal_connect_after(G_OBJECT(playlist_metadata_on_display), "realize", + G_CALLBACK(on_pl_metadata_on_display_realize), + NULL); + g_signal_connect_after(G_OBJECT(combobox1), "realize", + G_CALLBACK(on_chardet_detector_cbox_realize), + NULL); + g_signal_connect(G_OBJECT(entry1), "changed", + G_CALLBACK(on_chardet_fallback_changed), + NULL); + g_signal_connect_after(G_OBJECT(entry1), "realize", + G_CALLBACK(on_chardet_fallback_realize), + NULL); + g_signal_connect(G_OBJECT(refresh_file_list), "toggled", + G_CALLBACK(on_refresh_file_list_toggled), + NULL); + g_signal_connect_after(G_OBJECT(refresh_file_list), "realize", + G_CALLBACK(on_refresh_file_list_realize), + NULL); + g_signal_connect(G_OBJECT(titlestring_entry), "changed", + G_CALLBACK(on_titlestring_entry_changed), + NULL); + g_signal_connect_after(G_OBJECT(titlestring_entry), "realize", + G_CALLBACK(on_titlestring_entry_realize), + NULL); + g_signal_connect(G_OBJECT(checkbutton10), "toggled", + G_CALLBACK(on_show_filepopup_for_tuple_toggled), + NULL); + g_signal_connect_after(G_OBJECT(checkbutton10), "realize", + G_CALLBACK(on_show_filepopup_for_tuple_realize), + NULL); + g_signal_connect(G_OBJECT(filepopup_for_tuple_settings_button), "clicked", + G_CALLBACK(on_filepopup_for_tuple_settings_clicked), + NULL); + g_signal_connect(G_OBJECT(eq_file_preset_entry), "changed", + G_CALLBACK(on_eq_file_preset_entry_changed), + NULL); + g_signal_connect(G_OBJECT(eq_file_preset_entry), "realize", + G_CALLBACK(on_eq_file_preset_entry_realize), + NULL); + g_signal_connect(G_OBJECT(eq_dir_preset_entry), "changed", + G_CALLBACK(on_eq_dir_preset_entry_changed), + NULL); + g_signal_connect(G_OBJECT(eq_dir_preset_entry), "realize", + G_CALLBACK(on_eq_dir_preset_entry_realize), + NULL); + g_signal_connect(G_OBJECT(proxy_use), "toggled", + G_CALLBACK(on_proxy_use_toggled), + NULL); + g_signal_connect(G_OBJECT(proxy_use), "realize", + G_CALLBACK(on_proxy_use_realize), + NULL); + g_signal_connect(G_OBJECT(proxy_port), "changed", + G_CALLBACK(on_proxy_port_changed), + NULL); + g_signal_connect(G_OBJECT(proxy_port), "realize", + G_CALLBACK(on_proxy_port_realize), + NULL); + g_signal_connect(G_OBJECT(proxy_host), "changed", + G_CALLBACK(on_proxy_host_changed), + NULL); + g_signal_connect(G_OBJECT(proxy_host), "realize", + G_CALLBACK(on_proxy_host_realize), + NULL); + g_signal_connect(G_OBJECT(proxy_auth), "toggled", + G_CALLBACK(on_proxy_auth_toggled), + NULL); + g_signal_connect(G_OBJECT(proxy_auth), "realize", + G_CALLBACK(on_proxy_auth_realize), + NULL); + g_signal_connect(G_OBJECT(proxy_pass), "changed", + G_CALLBACK(on_proxy_pass_changed), + NULL); + g_signal_connect(G_OBJECT(proxy_pass), "realize", + G_CALLBACK(on_proxy_pass_realize), + NULL); + g_signal_connect(G_OBJECT(proxy_user), "changed", + G_CALLBACK(on_proxy_user_changed), + NULL); + g_signal_connect(G_OBJECT(proxy_user), "realize", + G_CALLBACK(on_proxy_user_realize), + NULL); + g_signal_connect(G_OBJECT(output_plugin_bufsize), "value_changed", + G_CALLBACK(on_output_plugin_bufsize_value_changed), + NULL); + g_signal_connect_after(G_OBJECT(output_plugin_bufsize), "realize", + G_CALLBACK(on_output_plugin_bufsize_realize), + NULL); + g_signal_connect_after(G_OBJECT(output_plugin_cbox), "realize", + G_CALLBACK(on_output_plugin_cbox_realize), + NULL); + g_signal_connect(G_OBJECT(audio_format_det_cb), "toggled", + G_CALLBACK(on_audio_format_det_cb_toggled), + NULL); + g_signal_connect(G_OBJECT(audio_format_det_cb), "realize", + G_CALLBACK(on_audio_format_det_cb_realize), + NULL); + g_signal_connect(G_OBJECT(detect_by_extension_cb), "toggled", + G_CALLBACK(on_detect_by_extension_cb_toggled), + NULL); + g_signal_connect(G_OBJECT(detect_by_extension_cb), "realize", + G_CALLBACK(on_detect_by_extension_cb_realize), + NULL); + g_signal_connect(G_OBJECT(continue_playback_on_startup), "toggled", + G_CALLBACK(on_continue_playback_on_startup_toggled), + NULL); + g_signal_connect(G_OBJECT(continue_playback_on_startup), "realize", + G_CALLBACK(on_continue_playback_on_startup_realize), + NULL); + g_signal_connect(G_OBJECT(playlist_no_advance), "toggled", + G_CALLBACK(on_playlist_no_advance_toggled), + NULL); + g_signal_connect_after(G_OBJECT(playlist_no_advance), "realize", + G_CALLBACK(on_playlist_no_advance_realize), + NULL); + g_signal_connect(G_OBJECT(pause_between_songs_time), "value_changed", + G_CALLBACK(on_pause_between_songs_time_changed), + NULL); + g_signal_connect_after(G_OBJECT(pause_between_songs_time), "realize", + G_CALLBACK(on_pause_between_songs_time_realize), + NULL); + g_signal_connect(G_OBJECT(enable_src), "toggled", + G_CALLBACK(on_enable_src_toggled), + NULL); + g_signal_connect(G_OBJECT(enable_src), "realize", + G_CALLBACK(on_enable_src_realize), + NULL); + g_signal_connect(G_OBJECT(src_converter_type), "changed", + G_CALLBACK(on_src_converter_type_changed), + NULL); + g_signal_connect_after(G_OBJECT(src_converter_type), "realize", + G_CALLBACK(on_src_converter_type_realize), + NULL); + g_signal_connect(G_OBJECT(src_rate), "value_changed", + G_CALLBACK(on_src_rate_value_changed), + NULL); + g_signal_connect(G_OBJECT(src_rate), "realize", + G_CALLBACK(on_src_rate_realize), + NULL); + g_signal_connect(G_OBJECT(software_volume_control), "toggled", + G_CALLBACK(on_software_volume_control_toggled), + NULL); + g_signal_connect(G_OBJECT(software_volume_control), "realize", + G_CALLBACK(on_software_volume_control_realize), + NULL); + g_signal_connect(G_OBJECT(reload_plugins), "clicked", + G_CALLBACK(on_reload_plugins_clicked), + NULL); + g_signal_connect_swapped(G_OBJECT(close), "clicked", + G_CALLBACK(gtk_widget_hide), + GTK_OBJECT (prefswin)); /* create category view */ - widget = glade_xml_get_widget(xml, "category_view"); - widget2 = glade_xml_get_widget(xml, "category_notebook"); - g_signal_connect_after(G_OBJECT(widget), "realize", - G_CALLBACK(on_category_view_realize), - widget2); - - category_treeview = GTK_WIDGET(widget); - category_notebook = GTK_WIDGET(widget2); + g_signal_connect_after(G_OBJECT(category_treeview), "realize", + G_CALLBACK(on_category_treeview_realize), + category_notebook); /* plugin->input page */ - - widget = glade_xml_get_widget(xml, "input_plugin_view"); - widget2 = glade_xml_get_widget(xml, "input_plugin_prefs"); - g_object_set_data(G_OBJECT(widget), "plugin_type" , GINT_TO_POINTER(PLUGIN_VIEW_TYPE_INPUT)); - g_signal_connect(G_OBJECT(widget), "row-activated", + g_object_set_data(G_OBJECT(input_plugin_view), "plugin_type" , GINT_TO_POINTER(PLUGIN_VIEW_TYPE_INPUT)); + g_signal_connect(G_OBJECT(input_plugin_view), "row-activated", G_CALLBACK(plugin_treeview_open_prefs), NULL); - g_signal_connect(G_OBJECT(widget), "cursor-changed", + g_signal_connect(G_OBJECT(input_plugin_view), "cursor-changed", G_CALLBACK(plugin_treeview_enable_prefs), - widget2); - - g_signal_connect_swapped(G_OBJECT(widget2), "clicked", + input_plugin_prefs); + + g_signal_connect_swapped(G_OBJECT(input_plugin_prefs), "clicked", G_CALLBACK(plugin_treeview_open_prefs), - widget); - widget2 = glade_xml_get_widget(xml, "input_plugin_info"); - g_signal_connect(G_OBJECT(widget), "cursor-changed", + input_plugin_view); + + g_signal_connect(G_OBJECT(input_plugin_view), "cursor-changed", G_CALLBACK(plugin_treeview_enable_info), - widget2); - g_signal_connect_swapped(G_OBJECT(widget2), "clicked", + input_plugin_info); + g_signal_connect_swapped(G_OBJECT(input_plugin_info), "clicked", G_CALLBACK(plugin_treeview_open_info), - widget); + input_plugin_view); /* plugin->output page */ - widget = glade_xml_get_widget(xml, "output_plugin_cbox"); - - widget2 = glade_xml_get_widget(xml, "output_plugin_prefs"); - g_signal_connect(G_OBJECT(widget), "changed", + g_signal_connect(G_OBJECT(output_plugin_cbox), "changed", G_CALLBACK(output_plugin_enable_prefs), - widget2); - g_signal_connect_swapped(G_OBJECT(widget2), "clicked", + output_plugin_prefs); + g_signal_connect_swapped(G_OBJECT(output_plugin_prefs), "clicked", G_CALLBACK(output_plugin_open_prefs), - widget); - - widget2 = glade_xml_get_widget(xml, "output_plugin_info"); - g_signal_connect(G_OBJECT(widget), "changed", + output_plugin_cbox); + + g_signal_connect(G_OBJECT(output_plugin_cbox), "changed", G_CALLBACK(output_plugin_enable_info), - widget2); - g_signal_connect_swapped(G_OBJECT(widget2), "clicked", + output_plugin_info); + g_signal_connect_swapped(G_OBJECT(output_plugin_info), "clicked", G_CALLBACK(output_plugin_open_info), - widget); + output_plugin_cbox); /* plugin->general page */ - widget = glade_xml_get_widget(xml, "general_plugin_view"); - g_object_set_data(G_OBJECT(widget), "plugin_type" , GINT_TO_POINTER(PLUGIN_VIEW_TYPE_GENERAL)); - g_signal_connect(G_OBJECT(widget), "row-activated", + g_object_set_data(G_OBJECT(general_plugin_view), "plugin_type" , GINT_TO_POINTER(PLUGIN_VIEW_TYPE_GENERAL)); + g_signal_connect(G_OBJECT(general_plugin_view), "row-activated", G_CALLBACK(plugin_treeview_open_prefs), NULL); - widget2 = glade_xml_get_widget(xml, "general_plugin_prefs"); - g_signal_connect(G_OBJECT(widget), "cursor-changed", + g_signal_connect(G_OBJECT(general_plugin_view), "cursor-changed", G_CALLBACK(plugin_treeview_enable_prefs), - widget2); - - g_signal_connect_swapped(G_OBJECT(widget2), "clicked", + general_plugin_prefs); + + g_signal_connect_swapped(G_OBJECT(general_plugin_prefs), "clicked", G_CALLBACK(plugin_treeview_open_prefs), - widget); - - widget2 = glade_xml_get_widget(xml, "general_plugin_info"); - g_signal_connect(G_OBJECT(widget), "cursor-changed", + general_plugin_view); + + g_signal_connect(G_OBJECT(general_plugin_view), "cursor-changed", G_CALLBACK(plugin_treeview_enable_info), - widget2); - g_signal_connect_swapped(G_OBJECT(widget2), "clicked", + general_plugin_info); + g_signal_connect_swapped(G_OBJECT(general_plugin_info), "clicked", G_CALLBACK(plugin_treeview_open_info), - widget); + general_plugin_view); /* plugin->vis page */ - widget = glade_xml_get_widget(xml, "vis_plugin_view"); - widget2 = glade_xml_get_widget(xml, "vis_plugin_prefs"); - - g_object_set_data(G_OBJECT(widget), "plugin_type" , GINT_TO_POINTER(PLUGIN_VIEW_TYPE_VIS)); - g_signal_connect(G_OBJECT(widget), "row-activated", + g_object_set_data(G_OBJECT(vis_plugin_view), "plugin_type" , GINT_TO_POINTER(PLUGIN_VIEW_TYPE_VIS)); + g_signal_connect(G_OBJECT(vis_plugin_view), "row-activated", G_CALLBACK(plugin_treeview_open_prefs), NULL); - g_signal_connect_swapped(G_OBJECT(widget2), "clicked", + g_signal_connect_swapped(G_OBJECT(vis_plugin_prefs), "clicked", G_CALLBACK(plugin_treeview_open_prefs), - widget); - g_signal_connect(G_OBJECT(widget), "cursor-changed", - G_CALLBACK(plugin_treeview_enable_prefs), widget2); - - - widget2 = glade_xml_get_widget(xml, "vis_plugin_info"); - g_signal_connect(G_OBJECT(widget), "cursor-changed", - G_CALLBACK(plugin_treeview_enable_info), widget2); - g_signal_connect_swapped(G_OBJECT(widget2), "clicked", + vis_plugin_view); + g_signal_connect(G_OBJECT(vis_plugin_view), "cursor-changed", + G_CALLBACK(plugin_treeview_enable_prefs), vis_plugin_prefs); + + g_signal_connect(G_OBJECT(vis_plugin_view), "cursor-changed", + G_CALLBACK(plugin_treeview_enable_info), vis_plugin_info); + g_signal_connect_swapped(G_OBJECT(vis_plugin_info), "clicked", G_CALLBACK(plugin_treeview_open_info), - widget); + vis_plugin_view); /* plugin->effects page */ - widget = glade_xml_get_widget(xml, "effect_plugin_view"); - widget2 = glade_xml_get_widget(xml, "effect_plugin_prefs"); - - g_object_set_data(G_OBJECT(widget), "plugin_type" , GINT_TO_POINTER(PLUGIN_VIEW_TYPE_EFFECT)); - g_signal_connect(G_OBJECT(widget), "row-activated", + g_object_set_data(G_OBJECT(effect_plugin_view), "plugin_type" , GINT_TO_POINTER(PLUGIN_VIEW_TYPE_EFFECT)); + g_signal_connect(G_OBJECT(effect_plugin_view), "row-activated", G_CALLBACK(plugin_treeview_open_prefs), NULL); - g_signal_connect_swapped(G_OBJECT(widget2), "clicked", + g_signal_connect_swapped(G_OBJECT(effect_plugin_prefs), "clicked", G_CALLBACK(plugin_treeview_open_prefs), - widget); - g_signal_connect(G_OBJECT(widget), "cursor-changed", - G_CALLBACK(plugin_treeview_enable_prefs), widget2); - - - widget2 = glade_xml_get_widget(xml, "effect_plugin_info"); - g_signal_connect(G_OBJECT(widget), "cursor-changed", - G_CALLBACK(plugin_treeview_enable_info), widget2); - g_signal_connect_swapped(G_OBJECT(widget2), "clicked", + effect_plugin_view); + g_signal_connect(G_OBJECT(effect_plugin_view), "cursor-changed", + G_CALLBACK(plugin_treeview_enable_prefs), effect_plugin_prefs); + + g_signal_connect(G_OBJECT(effect_plugin_view), "cursor-changed", + G_CALLBACK(plugin_treeview_enable_info), effect_plugin_info); + g_signal_connect_swapped(G_OBJECT(effect_plugin_info), "clicked", G_CALLBACK(plugin_treeview_open_info), - widget); + effect_plugin_view); /* playlist page */ - widget = glade_xml_get_widget(xml, "pause_between_songs_box"); - widget2 = glade_xml_get_widget(xml, "pause_between_songs"); - g_signal_connect_after(G_OBJECT(widget2), "realize", + g_signal_connect_after(G_OBJECT(pause_between_songs), "realize", G_CALLBACK(on_pause_between_songs_realize), - widget); - g_signal_connect(G_OBJECT(widget2), "toggled", + pause_between_songs_box); + g_signal_connect(G_OBJECT(pause_between_songs), "toggled", G_CALLBACK(on_pause_between_songs_toggled), - widget); - - widget = glade_xml_get_widget(xml, "playlist_use_metadata_box"); - widget2 = glade_xml_get_widget(xml, "playlist_use_metadata"); - g_signal_connect_after(G_OBJECT(widget2), "realize", + pause_between_songs_box); + + g_signal_connect_after(G_OBJECT(playlist_use_metadata), "realize", G_CALLBACK(on_use_pl_metadata_realize), - widget); - g_signal_connect(G_OBJECT(widget2), "toggled", + playlist_use_metadata_box); + g_signal_connect(G_OBJECT(playlist_use_metadata), "toggled", G_CALLBACK(on_use_pl_metadata_toggled), - widget); - - widget = glade_xml_get_widget(xml, "skin_view"); - g_signal_connect(widget, "drag-data-received", + playlist_use_metadata_box); + + g_signal_connect(skin_view, "drag-data-received", G_CALLBACK(on_skin_view_drag_data_received), NULL); - bmp_drag_dest_set(widget); + bmp_drag_dest_set(skin_view); g_signal_connect(mainwin, "drag-data-received", G_CALLBACK(mainwin_drag_data_received), - widget); - - widget = glade_xml_get_widget(xml, "skin_refresh_button"); - g_signal_connect(widget, "clicked", + skin_view); + + g_signal_connect(skin_refresh_button, "clicked", G_CALLBACK(on_skin_refresh_button_clicked), NULL); - widget = glade_xml_get_widget(xml, "playlist_font_button"); g_signal_connect(mainwin, "drag-data-received", G_CALLBACK(mainwin_drag_data_received), - widget); - - widget = glade_xml_get_widget(xml, "titlestring_cbox"); - widget2 = glade_xml_get_widget(xml, "titlestring_entry"); - g_signal_connect(widget, "realize", + fontbutton2); + + g_signal_connect(titlestring_cbox, "realize", G_CALLBACK(on_titlestring_cbox_realize), - widget2); - g_signal_connect(widget, "changed", + titlestring_entry); + g_signal_connect(titlestring_cbox, "changed", G_CALLBACK(on_titlestring_cbox_changed), - widget2); + titlestring_entry); /* FIXME: move this into a function */ /* create tag menu */ @@ -2300,27 +3796,24 @@ GINT_TO_POINTER(i)); }; gtk_widget_show_all(titlestring_tag_menu); - - widget = glade_xml_get_widget(xml, "titlestring_help_button"); - widget2 = glade_xml_get_widget(xml, "titlestring_cbox"); - - g_signal_connect(widget2, "changed", + + g_signal_connect(titlestring_cbox, "changed", G_CALLBACK(on_titlestring_cbox_changed), - widget); - g_signal_connect(widget, "clicked", + titlestring_help_button); + g_signal_connect(titlestring_help_button, "clicked", G_CALLBACK(on_titlestring_help_button_clicked), titlestring_tag_menu); /* audacious version label */ - widget = glade_xml_get_widget(xml, "audversionlabel"); aud_version_string = g_strdup_printf("<span size='small'>%s (%s) (%s@%s)</span>", "Audacious " PACKAGE_VERSION , svn_stamp , g_get_user_name() , g_get_host_name() ); - gtk_label_set_markup( GTK_LABEL(widget) , aud_version_string ); + gtk_label_set_markup( GTK_LABEL(audversionlabel) , aud_version_string ); g_free(aud_version_string); + gtk_widget_show_all(vbox); /* Create window for filepopup settings */ create_filepopup_settings(); @@ -2335,14 +3828,7 @@ if ( !skinlist_filled ) { - GladeXML *xml; - GtkWidget *widget, *widget2; - - xml = prefswin_get_xml(); - - widget = glade_xml_get_widget(xml, "skin_view"); - widget2 = glade_xml_get_widget(xml, "skin_refresh_button"); - skin_view_update(GTK_TREE_VIEW(widget), GTK_WIDGET(widget2)); + skin_view_update(GTK_TREE_VIEW(skin_view), GTK_WIDGET(skin_refresh_button)); skinlist_filled = TRUE; } }