Mercurial > audlegacy
view Plugins/Input/sid/xs_interface.c @ 825:7b903bd39180 trunk
[svn] Ask the decoder whether this is a FLAC file, instead of depending on file magic.
author | chainsaw |
---|---|
date | Sun, 12 Mar 2006 14:07:38 -0800 |
parents | 1b82a9932b60 |
children | 8bdcd65a57b7 |
line wrap: on
line source
/* * DO NOT EDIT THIS FILE - it is generated by Glade. */ #ifdef HAVE_CONFIG_H # include <config.h> #endif #include <sys/types.h> #include <sys/stat.h> #include <unistd.h> #include <string.h> #include <gdk/gdkkeysyms.h> #include <gtk/gtk.h> #include "xs_genui.h" #include "xs_interface.h" #include "xs_glade.h" GtkWidget* create_xs_configwin (void) { GtkWidget *xs_configwin; GtkWidget *vbox1; GtkWidget *cfg_notebook; GtkWidget *vbox6; GtkWidget *hbox2; GtkWidget *frame4; GtkWidget *vbox9; GSList *resolution_group = NULL; GtkWidget *cfg_res_8bit; GtkWidget *cfg_res_16bit; GtkWidget *frame5; GtkWidget *vbox10; GSList *channels_group = NULL; GtkWidget *cfg_chn_mono; GtkWidget *cfg_chn_stereo; GtkWidget *cfg_chn_autopan; GtkWidget *frame8; GtkWidget *hbox4; GtkWidget *cfg_samplerate_menu; GtkWidget *cfg_samplerate_menu_menu; GtkWidget *glade_menuitem; GtkWidget *label8; GtkWidget *vseparator1; GtkObject *cfg_samplerate_adj; GtkWidget *cfg_samplerate; GtkWidget *label54; GtkWidget *cfg_oversample_grp; GtkWidget *vbox27; GtkWidget *cfg_oversample; GtkWidget *hbox16; GtkWidget *cfg_oversample_label1; GtkObject *cfg_oversample_factor_adj; GtkWidget *cfg_oversample_factor; GtkWidget *cfg_oversample_label2; GtkWidget *label1; GtkWidget *vbox2; GtkWidget *frame26; GtkWidget *vbox26; GSList *emulator_group = NULL; GtkWidget *cfg_emu_sidplay1; GtkWidget *cfg_emu_sidplay2; GtkWidget *frame1; GtkWidget *vbox5; GSList *memorymode_group = NULL; GtkWidget *cfg_emu_mem_real; GtkWidget *cfg_emu_mem_banksw; GtkWidget *cfg_emu_mem_transrom; GtkWidget *cfg_emu_mem_playsid; GtkWidget *label2; GtkWidget *vbox29; GtkWidget *hbox1; GtkWidget *frame2; GtkWidget *vbox4; GtkWidget *cfg_emu_clock_force; GSList *speed_group = NULL; GtkWidget *cfg_emu_clock_pal; GtkWidget *cfg_emu_clock_ntsc; GtkWidget *frame3; GtkWidget *vbox3; GtkWidget *cfg_emu_sid_force; GSList *waveforms_group = NULL; GtkWidget *cfg_emu_mos6581; GtkWidget *cfg_emu_mos8580; GtkWidget *cfg_sidplay2_grp; GtkWidget *vbox30; GtkWidget *cfg_emu_sidplay2_opt; GSList *emutype_group = NULL; GtkWidget *cfg_emu_sidplay2_resid; GtkWidget *cfg_emu_sidplay2_hardsid; GtkWidget *label48; GtkWidget *vbox25; GtkWidget *cfg_emu_filters; GtkWidget *cfg_filters_notebook; GtkWidget *cfg_box_sidplay1; GtkWidget *cfg_frm_fs; GtkWidget *cfg_emu_filt_fs; GtkWidget *cfg_frm_fm; GtkWidget *cfg_emu_filt_fm; GtkWidget *cfg_frm_ft; GtkWidget *cfg_emu_filt_ft; GtkWidget *vbox17; GtkWidget *cfg_filter_reset; GtkWidget *cfg_filter_sync; GtkWidget *label55; GtkWidget *cfg_box_sidplay2; GtkWidget *vbox36; GtkWidget *cfg_filter2_reset; GtkWidget *cfg_filter2_sync; GtkWidget *label56; GtkWidget *label24; GtkWidget *vbox20; GtkWidget *frame29; GtkWidget *vbox32; GtkWidget *cfg_mintime_enable; GtkWidget *hbox18; GtkWidget *cfg_mintime_label1; GtkObject *cfg_mintime_adj; GtkWidget *cfg_mintime; GtkWidget *cfg_mintime_label2; GtkWidget *frame21; GtkWidget *vbox21; GtkWidget *cfg_maxtime_enable; GtkWidget *cfg_maxtime_unknown; GtkWidget *hbox14; GtkWidget *cfg_maxtime_label1; GtkObject *cfg_maxtime_adj; GtkWidget *cfg_maxtime; GtkWidget *cfg_maxtime_label2; GtkWidget *frame18; GtkWidget *vbox18; GtkWidget *cfg_sld_enable; GtkWidget *hbox13; GtkWidget *cfg_sld_label1; GtkWidget *cfg_sld_dbpath; GtkWidget *cfg_sld_dbbrowse; GtkWidget *label26; GtkWidget *vbox33; GtkWidget *frame7; GtkWidget *vbox8; GtkWidget *cfg_stil_enable; GtkWidget *hbox3; GtkWidget *cfg_stil_label1; GtkWidget *alignment2; GtkWidget *cfg_stil_dbpath; GtkWidget *alignment1; GtkWidget *cfg_stil_browse; GtkWidget *hbox17; GtkWidget *cfg_hvsc_label1; GtkWidget *alignment6; GtkWidget *cfg_hvsc_path; GtkWidget *alignment7; GtkWidget *cfg_hvsc_browse; GtkWidget *frame16; GtkWidget *vbox16; GtkWidget *cfg_ftitle_override; GtkWidget *cfg_ftitle_format; GtkWidget *hbox9; GtkWidget *cfg_ftitle_desc1; GtkWidget *cfg_ftitle_desc2; GtkWidget *label23; GtkWidget *vbox19; GtkWidget *frame28; GtkWidget *vbox31; GSList *subtune_group = NULL; GtkWidget *cfg_subctrl_none; GtkWidget *cfg_subctrl_seek; GtkWidget *cfg_subctrl_popup; GtkWidget *cfg_subctrl_patch; GtkWidget *frame31; GtkWidget *vbox35; GtkWidget *cfg_subauto_enable; GtkWidget *cfg_subauto_min_only; GtkWidget *hbox20; GtkWidget *label52; GtkObject *cfg_subauto_mintime_adj; GtkWidget *cfg_subauto_mintime; GtkWidget *label53; GtkWidget *frame22; GtkWidget *vbox22; GtkWidget *cfg_detectmagic; GtkWidget *label3; GtkWidget *hbuttonbox1; GtkWidget *cfg_ok; GtkWidget *cfg_cancel; GtkTooltips *tooltips; tooltips = gtk_tooltips_new (); xs_configwin = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_type_hint (GTK_WINDOW(xs_configwin), GDK_WINDOW_TYPE_HINT_DIALOG); gtk_widget_set_name (xs_configwin, "xs_configwin"); gtk_object_set_data (GTK_OBJECT (xs_configwin), "xs_configwin", xs_configwin); gtk_window_set_title (GTK_WINDOW (xs_configwin), "XMMS-SID configuration"); gtk_window_set_policy (GTK_WINDOW (xs_configwin), FALSE, FALSE, FALSE); vbox1 = gtk_vbox_new (FALSE, 0); gtk_widget_set_name (vbox1, "vbox1"); gtk_widget_ref (vbox1); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox1", vbox1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox1); gtk_container_add (GTK_CONTAINER (xs_configwin), vbox1); gtk_container_set_border_width (GTK_CONTAINER (vbox1), 8); cfg_notebook = gtk_notebook_new (); gtk_widget_set_name (cfg_notebook, "cfg_notebook"); gtk_widget_ref (cfg_notebook); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_notebook", cfg_notebook, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_notebook); gtk_box_pack_start (GTK_BOX (vbox1), cfg_notebook, TRUE, TRUE, 0); gtk_notebook_set_show_border (GTK_NOTEBOOK (cfg_notebook), FALSE); vbox6 = gtk_vbox_new (FALSE, 0); gtk_widget_set_name (vbox6, "vbox6"); gtk_widget_ref (vbox6); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox6", vbox6, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox6); gtk_container_add (GTK_CONTAINER (cfg_notebook), vbox6); hbox2 = gtk_hbox_new (FALSE, 0); gtk_widget_set_name (hbox2, "hbox2"); gtk_widget_ref (hbox2); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "hbox2", hbox2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (hbox2); gtk_box_pack_start (GTK_BOX (vbox6), hbox2, FALSE, TRUE, 0); frame4 = gtk_frame_new ("Resolution:"); gtk_widget_set_name (frame4, "frame4"); gtk_widget_ref (frame4); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "frame4", frame4, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame4); gtk_box_pack_start (GTK_BOX (hbox2), frame4, TRUE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame4), 4); vbox9 = gtk_vbox_new (FALSE, 2); gtk_widget_set_name (vbox9, "vbox9"); gtk_widget_ref (vbox9); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox9", vbox9, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox9); gtk_container_add (GTK_CONTAINER (frame4), vbox9); gtk_container_set_border_width (GTK_CONTAINER (vbox9), 2); cfg_res_8bit = gtk_radio_button_new_with_label (resolution_group, "8-bit"); resolution_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_res_8bit)); gtk_widget_set_name (cfg_res_8bit, "cfg_res_8bit"); gtk_widget_ref (cfg_res_8bit); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_res_8bit", cfg_res_8bit, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_res_8bit); gtk_box_pack_start (GTK_BOX (vbox9), cfg_res_8bit, FALSE, FALSE, 0); cfg_res_16bit = gtk_radio_button_new_with_label (resolution_group, "16-bit"); resolution_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_res_16bit)); gtk_widget_set_name (cfg_res_16bit, "cfg_res_16bit"); gtk_widget_ref (cfg_res_16bit); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_res_16bit", cfg_res_16bit, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_res_16bit); gtk_box_pack_start (GTK_BOX (vbox9), cfg_res_16bit, FALSE, FALSE, 0); frame5 = gtk_frame_new ("Channels:"); gtk_widget_set_name (frame5, "frame5"); gtk_widget_ref (frame5); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "frame5", frame5, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame5); gtk_box_pack_start (GTK_BOX (hbox2), frame5, TRUE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame5), 4); vbox10 = gtk_vbox_new (FALSE, 2); gtk_widget_set_name (vbox10, "vbox10"); gtk_widget_ref (vbox10); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox10", vbox10, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox10); gtk_container_add (GTK_CONTAINER (frame5), vbox10); gtk_container_set_border_width (GTK_CONTAINER (vbox10), 2); cfg_chn_mono = gtk_radio_button_new_with_label (channels_group, "Mono"); channels_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_chn_mono)); gtk_widget_set_name (cfg_chn_mono, "cfg_chn_mono"); gtk_widget_ref (cfg_chn_mono); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_chn_mono", cfg_chn_mono, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_chn_mono); gtk_box_pack_start (GTK_BOX (vbox10), cfg_chn_mono, FALSE, FALSE, 0); cfg_chn_stereo = gtk_radio_button_new_with_label (channels_group, "Stereo"); channels_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_chn_stereo)); gtk_widget_set_name (cfg_chn_stereo, "cfg_chn_stereo"); gtk_widget_ref (cfg_chn_stereo); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_chn_stereo", cfg_chn_stereo, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_chn_stereo); gtk_box_pack_start (GTK_BOX (vbox10), cfg_chn_stereo, FALSE, FALSE, 0); cfg_chn_autopan = gtk_radio_button_new_with_label (channels_group, "Autopanning"); channels_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_chn_autopan)); gtk_widget_set_name (cfg_chn_autopan, "cfg_chn_autopan"); gtk_widget_ref (cfg_chn_autopan); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_chn_autopan", cfg_chn_autopan, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_chn_autopan); gtk_box_pack_start (GTK_BOX (vbox10), cfg_chn_autopan, FALSE, FALSE, 0); frame8 = gtk_frame_new ("Samplerate:"); gtk_widget_set_name (frame8, "frame8"); gtk_widget_ref (frame8); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "frame8", frame8, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame8); gtk_box_pack_start (GTK_BOX (vbox6), frame8, FALSE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame8), 4); hbox4 = gtk_hbox_new (FALSE, 0); gtk_widget_set_name (hbox4, "hbox4"); gtk_widget_ref (hbox4); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "hbox4", hbox4, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (hbox4); gtk_container_add (GTK_CONTAINER (frame8), hbox4); gtk_container_set_border_width (GTK_CONTAINER (hbox4), 4); cfg_samplerate_menu = gtk_option_menu_new (); gtk_widget_set_name (cfg_samplerate_menu, "cfg_samplerate_menu"); gtk_widget_ref (cfg_samplerate_menu); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_samplerate_menu", cfg_samplerate_menu, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_samplerate_menu); gtk_box_pack_start (GTK_BOX (hbox4), cfg_samplerate_menu, FALSE, FALSE, 0); cfg_samplerate_menu_menu = gtk_menu_new (); glade_menuitem = gtk_menu_item_new_with_label ("8000"); gtk_widget_show (glade_menuitem); gtk_menu_append (GTK_MENU (cfg_samplerate_menu_menu), glade_menuitem); glade_menuitem = gtk_menu_item_new_with_label ("11025"); gtk_widget_show (glade_menuitem); gtk_menu_append (GTK_MENU (cfg_samplerate_menu_menu), glade_menuitem); glade_menuitem = gtk_menu_item_new_with_label ("22050"); gtk_widget_show (glade_menuitem); gtk_menu_append (GTK_MENU (cfg_samplerate_menu_menu), glade_menuitem); glade_menuitem = gtk_menu_item_new_with_label ("44100"); gtk_widget_show (glade_menuitem); gtk_menu_append (GTK_MENU (cfg_samplerate_menu_menu), glade_menuitem); glade_menuitem = gtk_menu_item_new_with_label ("48000"); gtk_widget_show (glade_menuitem); gtk_menu_append (GTK_MENU (cfg_samplerate_menu_menu), glade_menuitem); glade_menuitem = gtk_menu_item_new_with_label ("64000"); gtk_widget_show (glade_menuitem); gtk_menu_append (GTK_MENU (cfg_samplerate_menu_menu), glade_menuitem); glade_menuitem = gtk_menu_item_new_with_label ("96000"); gtk_widget_show (glade_menuitem); gtk_menu_append (GTK_MENU (cfg_samplerate_menu_menu), glade_menuitem); gtk_option_menu_set_menu (GTK_OPTION_MENU (cfg_samplerate_menu), cfg_samplerate_menu_menu); gtk_option_menu_set_history (GTK_OPTION_MENU (cfg_samplerate_menu), 3); label8 = gtk_label_new ("Hz"); gtk_widget_set_name (label8, "label8"); gtk_widget_ref (label8); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "label8", label8, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label8); gtk_box_pack_start (GTK_BOX (hbox4), label8, FALSE, TRUE, 4); vseparator1 = gtk_vseparator_new (); gtk_widget_set_name (vseparator1, "vseparator1"); gtk_widget_ref (vseparator1); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vseparator1", vseparator1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vseparator1); gtk_box_pack_start (GTK_BOX (hbox4), vseparator1, TRUE, TRUE, 0); cfg_samplerate_adj = gtk_adjustment_new (44100, 8000, 128000, 1, 10, 10); cfg_samplerate = gtk_spin_button_new (GTK_ADJUSTMENT (cfg_samplerate_adj), 8000, 0); gtk_widget_set_name (cfg_samplerate, "cfg_samplerate"); gtk_widget_ref (cfg_samplerate); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_samplerate", cfg_samplerate, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_samplerate); gtk_box_pack_start (GTK_BOX (hbox4), cfg_samplerate, TRUE, TRUE, 0); gtk_spin_button_set_numeric (GTK_SPIN_BUTTON (cfg_samplerate), TRUE); label54 = gtk_label_new ("Hz"); gtk_widget_set_name (label54, "label54"); gtk_widget_ref (label54); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "label54", label54, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label54); gtk_box_pack_start (GTK_BOX (hbox4), label54, FALSE, TRUE, 0); cfg_oversample_grp = gtk_frame_new ("Oversampling:"); gtk_widget_set_name (cfg_oversample_grp, "cfg_oversample_grp"); gtk_widget_ref (cfg_oversample_grp); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_oversample_grp", cfg_oversample_grp, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_oversample_grp); gtk_box_pack_start (GTK_BOX (vbox6), cfg_oversample_grp, FALSE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (cfg_oversample_grp), 4); vbox27 = gtk_vbox_new (FALSE, 2); gtk_widget_set_name (vbox27, "vbox27"); gtk_widget_ref (vbox27); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox27", vbox27, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox27); gtk_container_add (GTK_CONTAINER (cfg_oversample_grp), vbox27); gtk_container_set_border_width (GTK_CONTAINER (vbox27), 2); cfg_oversample = gtk_check_button_new_with_label ("Use oversampling"); gtk_widget_set_name (cfg_oversample, "cfg_oversample"); gtk_widget_ref (cfg_oversample); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_oversample", cfg_oversample, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_oversample); gtk_box_pack_start (GTK_BOX (vbox27), cfg_oversample, FALSE, FALSE, 0); hbox16 = gtk_hbox_new (FALSE, 4); gtk_widget_set_name (hbox16, "hbox16"); gtk_widget_ref (hbox16); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "hbox16", hbox16, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (hbox16); gtk_box_pack_start (GTK_BOX (vbox27), hbox16, FALSE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (hbox16), 2); cfg_oversample_label1 = gtk_label_new ("Factor:"); gtk_widget_set_name (cfg_oversample_label1, "cfg_oversample_label1"); gtk_widget_ref (cfg_oversample_label1); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_oversample_label1", cfg_oversample_label1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_oversample_label1); gtk_box_pack_start (GTK_BOX (hbox16), cfg_oversample_label1, FALSE, FALSE, 0); cfg_oversample_factor_adj = gtk_adjustment_new (2, 2, 8, 1, 1, 1); cfg_oversample_factor = gtk_spin_button_new (GTK_ADJUSTMENT (cfg_oversample_factor_adj), 1, 0); gtk_widget_set_name (cfg_oversample_factor, "cfg_oversample_factor"); gtk_widget_ref (cfg_oversample_factor); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_oversample_factor", cfg_oversample_factor, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_oversample_factor); gtk_box_pack_start (GTK_BOX (hbox16), cfg_oversample_factor, FALSE, TRUE, 0); cfg_oversample_label2 = gtk_label_new ("Large factors require more CPU-power"); gtk_widget_set_name (cfg_oversample_label2, "cfg_oversample_label2"); gtk_widget_ref (cfg_oversample_label2); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_oversample_label2", cfg_oversample_label2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_oversample_label2); gtk_box_pack_start (GTK_BOX (hbox16), cfg_oversample_label2, FALSE, FALSE, 0); label1 = gtk_label_new ("Audio"); gtk_widget_set_name (label1, "label1"); gtk_widget_ref (label1); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "label1", label1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label1); gtk_notebook_set_tab_label (GTK_NOTEBOOK (cfg_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (cfg_notebook), 0), label1); vbox2 = gtk_vbox_new (FALSE, 0); gtk_widget_set_name (vbox2, "vbox2"); gtk_widget_ref (vbox2); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox2", vbox2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox2); gtk_container_add (GTK_CONTAINER (cfg_notebook), vbox2); frame26 = gtk_frame_new ("Emulation library selection: "); gtk_widget_set_name (frame26, "frame26"); gtk_widget_ref (frame26); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "frame26", frame26, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame26); gtk_box_pack_start (GTK_BOX (vbox2), frame26, FALSE, FALSE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame26), 4); vbox26 = gtk_vbox_new (FALSE, 2); gtk_widget_set_name (vbox26, "vbox26"); gtk_widget_ref (vbox26); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox26", vbox26, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox26); gtk_container_add (GTK_CONTAINER (frame26), vbox26); gtk_container_set_border_width (GTK_CONTAINER (vbox26), 2); cfg_emu_sidplay1 = gtk_radio_button_new_with_label (emulator_group, "SIDPlay 1 (frame-based)"); emulator_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_sidplay1)); gtk_widget_set_name (cfg_emu_sidplay1, "cfg_emu_sidplay1"); gtk_widget_ref (cfg_emu_sidplay1); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_sidplay1", cfg_emu_sidplay1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_sidplay1); gtk_box_pack_start (GTK_BOX (vbox26), cfg_emu_sidplay1, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_emu_sidplay1, "Use libSIDPlay 1.x emulation, faster but not so accurate. Good in most cases, though.", NULL); cfg_emu_sidplay2 = gtk_radio_button_new_with_label (emulator_group, "SIDPlay 2 (cycle-based)"); emulator_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_sidplay2)); gtk_widget_set_name (cfg_emu_sidplay2, "cfg_emu_sidplay2"); gtk_widget_ref (cfg_emu_sidplay2); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_sidplay2", cfg_emu_sidplay2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_sidplay2); gtk_box_pack_start (GTK_BOX (vbox26), cfg_emu_sidplay2, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_emu_sidplay2, "Use libSIDPlay 2.x emulation, which requires powerful CPU due to more exact emulation.", NULL); frame1 = gtk_frame_new ("Memory mode:"); gtk_widget_set_name (frame1, "frame1"); gtk_widget_ref (frame1); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "frame1", frame1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame1); gtk_box_pack_start (GTK_BOX (vbox2), frame1, FALSE, FALSE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame1), 4); vbox5 = gtk_vbox_new (FALSE, 2); gtk_widget_set_name (vbox5, "vbox5"); gtk_widget_ref (vbox5); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox5", vbox5, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox5); gtk_container_add (GTK_CONTAINER (frame1), vbox5); gtk_container_set_border_width (GTK_CONTAINER (vbox5), 2); cfg_emu_mem_real = gtk_radio_button_new_with_label (memorymode_group, "Real C64 (SIDPlay 2 only)"); memorymode_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_mem_real)); gtk_widget_set_name (cfg_emu_mem_real, "cfg_emu_mem_real"); gtk_widget_ref (cfg_emu_mem_real); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_mem_real", cfg_emu_mem_real, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_mem_real); gtk_box_pack_start (GTK_BOX (vbox5), cfg_emu_mem_real, FALSE, FALSE, 0); cfg_emu_mem_banksw = gtk_radio_button_new_with_label (memorymode_group, "Bank switching"); memorymode_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_mem_banksw)); gtk_widget_set_name (cfg_emu_mem_banksw, "cfg_emu_mem_banksw"); gtk_widget_ref (cfg_emu_mem_banksw); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_mem_banksw", cfg_emu_mem_banksw, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_mem_banksw); gtk_box_pack_start (GTK_BOX (vbox5), cfg_emu_mem_banksw, FALSE, FALSE, 0); cfg_emu_mem_transrom = gtk_radio_button_new_with_label (memorymode_group, "Transparent ROM"); memorymode_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_mem_transrom)); gtk_widget_set_name (cfg_emu_mem_transrom, "cfg_emu_mem_transrom"); gtk_widget_ref (cfg_emu_mem_transrom); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_mem_transrom", cfg_emu_mem_transrom, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_mem_transrom); gtk_box_pack_start (GTK_BOX (vbox5), cfg_emu_mem_transrom, FALSE, FALSE, 0); cfg_emu_mem_playsid = gtk_radio_button_new_with_label (memorymode_group, "PlaySID environment"); memorymode_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_mem_playsid)); gtk_widget_set_name (cfg_emu_mem_playsid, "cfg_emu_mem_playsid"); gtk_widget_ref (cfg_emu_mem_playsid); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_mem_playsid", cfg_emu_mem_playsid, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_mem_playsid); gtk_box_pack_start (GTK_BOX (vbox5), cfg_emu_mem_playsid, FALSE, FALSE, 0); label2 = gtk_label_new ("Emu#1"); gtk_widget_set_name (label2, "label2"); gtk_widget_ref (label2); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "label2", label2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label2); gtk_notebook_set_tab_label (GTK_NOTEBOOK (cfg_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (cfg_notebook), 1), label2); vbox29 = gtk_vbox_new (FALSE, 0); gtk_widget_set_name (vbox29, "vbox29"); gtk_widget_ref (vbox29); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox29", vbox29, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox29); gtk_container_add (GTK_CONTAINER (cfg_notebook), vbox29); hbox1 = gtk_hbox_new (FALSE, 0); gtk_widget_set_name (hbox1, "hbox1"); gtk_widget_ref (hbox1); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "hbox1", hbox1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (hbox1); gtk_box_pack_start (GTK_BOX (vbox29), hbox1, FALSE, TRUE, 0); frame2 = gtk_frame_new ("Clock speed:"); gtk_widget_set_name (frame2, "frame2"); gtk_widget_ref (frame2); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "frame2", frame2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame2); gtk_box_pack_start (GTK_BOX (hbox1), frame2, TRUE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame2), 4); vbox4 = gtk_vbox_new (FALSE, 2); gtk_widget_set_name (vbox4, "vbox4"); gtk_widget_ref (vbox4); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox4", vbox4, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox4); gtk_container_add (GTK_CONTAINER (frame2), vbox4); gtk_container_set_border_width (GTK_CONTAINER (vbox4), 2); cfg_emu_clock_force = gtk_check_button_new_with_label ("Force speed"); gtk_widget_set_name (cfg_emu_clock_force, "cfg_emu_clock_force"); gtk_widget_ref (cfg_emu_clock_force); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_clock_force", cfg_emu_clock_force, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_clock_force); gtk_box_pack_start (GTK_BOX (vbox4), cfg_emu_clock_force, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_emu_clock_force, "If enabled, this option \"forces\" the emulation engine to use the selected clock speed/frequency. Otherwise the speed is determined from played file itself.", NULL); cfg_emu_clock_pal = gtk_radio_button_new_with_label (speed_group, "PAL (50 Hz)"); speed_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_clock_pal)); gtk_widget_set_name (cfg_emu_clock_pal, "cfg_emu_clock_pal"); gtk_widget_ref (cfg_emu_clock_pal); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_clock_pal", cfg_emu_clock_pal, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_clock_pal); gtk_box_pack_start (GTK_BOX (vbox4), cfg_emu_clock_pal, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_emu_clock_pal, "PAL is the european TV standard, which uses 50Hz vertical refresh frequency. Largest % of SID-tunes have been made for PAL computers.", NULL); cfg_emu_clock_ntsc = gtk_radio_button_new_with_label (speed_group, "NTSC (60 Hz)"); speed_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_clock_ntsc)); gtk_widget_set_name (cfg_emu_clock_ntsc, "cfg_emu_clock_ntsc"); gtk_widget_ref (cfg_emu_clock_ntsc); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_clock_ntsc", cfg_emu_clock_ntsc, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_clock_ntsc); gtk_box_pack_start (GTK_BOX (vbox4), cfg_emu_clock_ntsc, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_emu_clock_ntsc, "NTSC is the TV standard with 60Hz vertical refresh rate (and other features that differ from PAL). It is mainly used in United States, Japan and certain other countries.", NULL); frame3 = gtk_frame_new ("SID model: "); gtk_widget_set_name (frame3, "frame3"); gtk_widget_ref (frame3); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "frame3", frame3, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame3); gtk_box_pack_start (GTK_BOX (hbox1), frame3, TRUE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame3), 4); vbox3 = gtk_vbox_new (FALSE, 2); gtk_widget_set_name (vbox3, "vbox3"); gtk_widget_ref (vbox3); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox3", vbox3, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox3); gtk_container_add (GTK_CONTAINER (frame3), vbox3); gtk_container_set_border_width (GTK_CONTAINER (vbox3), 2); cfg_emu_sid_force = gtk_check_button_new_with_label ("Force model"); gtk_widget_set_name (cfg_emu_sid_force, "cfg_emu_sid_force"); gtk_widget_ref (cfg_emu_sid_force); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_sid_force", cfg_emu_sid_force, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_sid_force); gtk_box_pack_start (GTK_BOX (vbox3), cfg_emu_sid_force, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_emu_sid_force, "If enabled, this option \"forces\" the emulation engine to use the selected SID-chip model. Otherwise the preferred SID model is determined from the file (if PSIDv2NG type) or if not available, this setting is used.", NULL); cfg_emu_mos6581 = gtk_radio_button_new_with_label (waveforms_group, "MOS 6581"); waveforms_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_mos6581)); gtk_widget_set_name (cfg_emu_mos6581, "cfg_emu_mos6581"); gtk_widget_ref (cfg_emu_mos6581); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_mos6581", cfg_emu_mos6581, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_mos6581); gtk_box_pack_start (GTK_BOX (vbox3), cfg_emu_mos6581, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_emu_mos6581, "MOS/CSG 6581 is the earlier major version of SID chip. It differs from 8580 in few ways, having much fuller filter (which, due to design error, is never same between two different SID-chips) and has the \"volume adjustment bug\", which enables playing of digital samples.", NULL); cfg_emu_mos8580 = gtk_radio_button_new_with_label (waveforms_group, "MOS 8580"); waveforms_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_mos8580)); gtk_widget_set_name (cfg_emu_mos8580, "cfg_emu_mos8580"); gtk_widget_ref (cfg_emu_mos8580); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_mos8580", cfg_emu_mos8580, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_mos8580); gtk_box_pack_start (GTK_BOX (vbox3), cfg_emu_mos8580, FALSE, FALSE, 0); cfg_sidplay2_grp = gtk_frame_new ("SIDPlay 2 options: "); gtk_widget_set_name (cfg_sidplay2_grp, "cfg_sidplay2_grp"); gtk_widget_ref (cfg_sidplay2_grp); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_sidplay2_grp", cfg_sidplay2_grp, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_sidplay2_grp); gtk_box_pack_start (GTK_BOX (vbox29), cfg_sidplay2_grp, FALSE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (cfg_sidplay2_grp), 4); vbox30 = gtk_vbox_new (FALSE, 2); gtk_widget_set_name (vbox30, "vbox30"); gtk_widget_ref (vbox30); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox30", vbox30, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox30); gtk_container_add (GTK_CONTAINER (cfg_sidplay2_grp), vbox30); gtk_container_set_border_width (GTK_CONTAINER (vbox30), 2); cfg_emu_sidplay2_opt = gtk_check_button_new_with_label ("Optimization mode (faster, inaccurate)"); gtk_widget_set_name (cfg_emu_sidplay2_opt, "cfg_emu_sidplay2_opt"); gtk_widget_ref (cfg_emu_sidplay2_opt); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_sidplay2_opt", cfg_emu_sidplay2_opt, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_sidplay2_opt); gtk_box_pack_start (GTK_BOX (vbox30), cfg_emu_sidplay2_opt, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_emu_sidplay2_opt, "This setting can be used to enable libSIDPlay2's \"optimization mode\", which in downgrades the emulation from cycle-exact to something similar to frame-exact. The result is lower CPU usage, but worse accuracy.", NULL); cfg_emu_sidplay2_resid = gtk_radio_button_new_with_label (emutype_group, "reSID-emulation"); emutype_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_sidplay2_resid)); gtk_widget_set_name (cfg_emu_sidplay2_resid, "cfg_emu_sidplay2_resid"); gtk_widget_ref (cfg_emu_sidplay2_resid); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_sidplay2_resid", cfg_emu_sidplay2_resid, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_sidplay2_resid); gtk_box_pack_start (GTK_BOX (vbox30), cfg_emu_sidplay2_resid, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_emu_sidplay2_resid, "reSID is the software SID-chip simulator based on SID reverse-engineering, created by Dag Lem. It is probably the closest thing to real SID available as software-only emulation.", NULL); cfg_emu_sidplay2_hardsid = gtk_radio_button_new_with_label (emutype_group, "HardSID"); emutype_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_emu_sidplay2_hardsid)); gtk_widget_set_name (cfg_emu_sidplay2_hardsid, "cfg_emu_sidplay2_hardsid"); gtk_widget_ref (cfg_emu_sidplay2_hardsid); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_sidplay2_hardsid", cfg_emu_sidplay2_hardsid, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_sidplay2_hardsid); gtk_box_pack_start (GTK_BOX (vbox30), cfg_emu_sidplay2_hardsid, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_emu_sidplay2_hardsid, "HardSID is a EISA/PCI card for PC-compatibles, which can be fitted with a real SID-chip. Software can be used to control the HardSID and combined with software emulation of rest of C64 via libSIDPlay2 HardSID can be used to achieve \"near 100%\" similarity to real C64. For more information, see http://www.hardsid.com/", NULL); label48 = gtk_label_new ("Emu#2"); gtk_widget_set_name (label48, "label48"); gtk_widget_ref (label48); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "label48", label48, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label48); gtk_notebook_set_tab_label (GTK_NOTEBOOK (cfg_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (cfg_notebook), 2), label48); vbox25 = gtk_vbox_new (FALSE, 2); gtk_widget_set_name (vbox25, "vbox25"); gtk_widget_ref (vbox25); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox25", vbox25, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox25); gtk_container_add (GTK_CONTAINER (cfg_notebook), vbox25); gtk_container_set_border_width (GTK_CONTAINER (vbox25), 4); cfg_emu_filters = gtk_check_button_new_with_label ("Emulate filters"); gtk_widget_set_name (cfg_emu_filters, "cfg_emu_filters"); gtk_widget_ref (cfg_emu_filters); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_filters", cfg_emu_filters, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_filters); gtk_box_pack_start (GTK_BOX (vbox25), cfg_emu_filters, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_emu_filters, "This option enables emulation of SID filter. The filter is an essential part of SID's sound capacity, but accurate emulation of it may require quite much CPU power. However, if filter emulation is disabled, tunes won't sound authentic at all if they utilize the filter.", NULL); cfg_filters_notebook = gtk_notebook_new (); gtk_widget_set_name (cfg_filters_notebook, "cfg_filters_notebook"); gtk_widget_ref (cfg_filters_notebook); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_filters_notebook", cfg_filters_notebook, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_filters_notebook); gtk_box_pack_start (GTK_BOX (vbox25), cfg_filters_notebook, TRUE, TRUE, 0); cfg_box_sidplay1 = gtk_hbox_new (FALSE, 0); gtk_widget_set_name (cfg_box_sidplay1, "cfg_box_sidplay1"); gtk_widget_ref (cfg_box_sidplay1); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_box_sidplay1", cfg_box_sidplay1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_box_sidplay1); gtk_container_add (GTK_CONTAINER (cfg_filters_notebook), cfg_box_sidplay1); gtk_container_set_border_width (GTK_CONTAINER (cfg_box_sidplay1), 4); cfg_frm_fs = gtk_frame_new ("FS"); gtk_widget_set_name (cfg_frm_fs, "cfg_frm_fs"); gtk_widget_ref (cfg_frm_fs); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_frm_fs", cfg_frm_fs, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_frm_fs); gtk_box_pack_start (GTK_BOX (cfg_box_sidplay1), cfg_frm_fs, FALSE, TRUE, 0); gtk_widget_set_usize (cfg_frm_fs, 45, -2); gtk_container_set_border_width (GTK_CONTAINER (cfg_frm_fs), 2); cfg_emu_filt_fs = gtk_vscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, 0, 1000, 1, 100, 0))); gtk_widget_set_name (cfg_emu_filt_fs, "cfg_emu_filt_fs"); gtk_widget_ref (cfg_emu_filt_fs); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_filt_fs", cfg_emu_filt_fs, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_filt_fs); gtk_container_add (GTK_CONTAINER (cfg_frm_fs), cfg_emu_filt_fs); gtk_scale_set_digits (GTK_SCALE (cfg_emu_filt_fs), 2); cfg_frm_fm = gtk_frame_new ("FM"); gtk_widget_set_name (cfg_frm_fm, "cfg_frm_fm"); gtk_widget_ref (cfg_frm_fm); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_frm_fm", cfg_frm_fm, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_frm_fm); gtk_box_pack_start (GTK_BOX (cfg_box_sidplay1), cfg_frm_fm, FALSE, TRUE, 0); gtk_widget_set_usize (cfg_frm_fm, 45, -2); gtk_container_set_border_width (GTK_CONTAINER (cfg_frm_fm), 2); cfg_emu_filt_fm = gtk_vscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, 0, 100, 1, 10, 0))); gtk_widget_set_name (cfg_emu_filt_fm, "cfg_emu_filt_fm"); gtk_widget_ref (cfg_emu_filt_fm); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_filt_fm", cfg_emu_filt_fm, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_filt_fm); gtk_container_add (GTK_CONTAINER (cfg_frm_fm), cfg_emu_filt_fm); gtk_scale_set_digits (GTK_SCALE (cfg_emu_filt_fm), 2); cfg_frm_ft = gtk_frame_new ("FT"); gtk_widget_set_name (cfg_frm_ft, "cfg_frm_ft"); gtk_widget_ref (cfg_frm_ft); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_frm_ft", cfg_frm_ft, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_frm_ft); gtk_box_pack_start (GTK_BOX (cfg_box_sidplay1), cfg_frm_ft, FALSE, TRUE, 0); gtk_widget_set_usize (cfg_frm_ft, 45, -2); gtk_container_set_border_width (GTK_CONTAINER (cfg_frm_ft), 2); cfg_emu_filt_ft = gtk_vscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, 0, 1, 0.01, 0.1, 0))); gtk_widget_set_name (cfg_emu_filt_ft, "cfg_emu_filt_ft"); gtk_widget_ref (cfg_emu_filt_ft); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_emu_filt_ft", cfg_emu_filt_ft, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_emu_filt_ft); gtk_container_add (GTK_CONTAINER (cfg_frm_ft), cfg_emu_filt_ft); gtk_scale_set_digits (GTK_SCALE (cfg_emu_filt_ft), 2); vbox17 = gtk_vbox_new (FALSE, 8); gtk_widget_set_name (vbox17, "vbox17"); gtk_widget_ref (vbox17); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox17", vbox17, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox17); gtk_box_pack_start (GTK_BOX (cfg_box_sidplay1), vbox17, TRUE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (vbox17), 4); cfg_filter_reset = gtk_button_new_with_label ("Reset values"); gtk_widget_set_name (cfg_filter_reset, "cfg_filter_reset"); gtk_widget_ref (cfg_filter_reset); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_filter_reset", cfg_filter_reset, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_filter_reset); gtk_box_pack_start (GTK_BOX (vbox17), cfg_filter_reset, FALSE, FALSE, 0); cfg_filter_sync = gtk_button_new_with_label ("Synchronize from\nSIDPlay2"); gtk_widget_set_name (cfg_filter_sync, "cfg_filter_sync"); gtk_widget_ref (cfg_filter_sync); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_filter_sync", cfg_filter_sync, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_filter_sync); gtk_box_pack_start (GTK_BOX (vbox17), cfg_filter_sync, FALSE, FALSE, 0); label55 = gtk_label_new ("SIDPlay1"); gtk_widget_set_name (label55, "label55"); gtk_widget_ref (label55); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "label55", label55, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label55); gtk_notebook_set_tab_label (GTK_NOTEBOOK (cfg_filters_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (cfg_filters_notebook), 0), label55); cfg_box_sidplay2 = gtk_hbox_new (FALSE, 0); gtk_widget_set_name (cfg_box_sidplay2, "cfg_box_sidplay2"); gtk_widget_ref (cfg_box_sidplay2); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_box_sidplay2", cfg_box_sidplay2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_box_sidplay2); gtk_container_add (GTK_CONTAINER (cfg_filters_notebook), cfg_box_sidplay2); gtk_container_set_border_width (GTK_CONTAINER (cfg_box_sidplay2), 4); vbox36 = gtk_vbox_new (FALSE, 8); gtk_widget_set_name (vbox36, "vbox36"); gtk_widget_ref (vbox36); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox36", vbox36, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox36); gtk_box_pack_start (GTK_BOX (cfg_box_sidplay2), vbox36, FALSE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (vbox36), 4); cfg_filter2_reset = gtk_button_new_with_label ("Reset values"); gtk_widget_set_name (cfg_filter2_reset, "cfg_filter2_reset"); gtk_widget_ref (cfg_filter2_reset); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_filter2_reset", cfg_filter2_reset, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_filter2_reset); gtk_box_pack_start (GTK_BOX (vbox36), cfg_filter2_reset, FALSE, FALSE, 0); cfg_filter2_sync = gtk_button_new_with_label ("Synchronize from\nSIDPlay1"); gtk_widget_set_name (cfg_filter2_sync, "cfg_filter2_sync"); gtk_widget_ref (cfg_filter2_sync); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_filter2_sync", cfg_filter2_sync, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_filter2_sync); gtk_box_pack_start (GTK_BOX (vbox36), cfg_filter2_sync, FALSE, FALSE, 0); label56 = gtk_label_new ("SIDPlay2"); gtk_widget_set_name (label56, "label56"); gtk_widget_ref (label56); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "label56", label56, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label56); gtk_notebook_set_tab_label (GTK_NOTEBOOK (cfg_filters_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (cfg_filters_notebook), 1), label56); label24 = gtk_label_new ("Filters"); gtk_widget_set_name (label24, "label24"); gtk_widget_ref (label24); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "label24", label24, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label24); gtk_notebook_set_tab_label (GTK_NOTEBOOK (cfg_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (cfg_notebook), 3), label24); vbox20 = gtk_vbox_new (FALSE, 0); gtk_widget_set_name (vbox20, "vbox20"); gtk_widget_ref (vbox20); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox20", vbox20, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox20); gtk_container_add (GTK_CONTAINER (cfg_notebook), vbox20); frame29 = gtk_frame_new ("Minimum playtime: "); gtk_widget_set_name (frame29, "frame29"); gtk_widget_ref (frame29); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "frame29", frame29, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame29); gtk_box_pack_start (GTK_BOX (vbox20), frame29, FALSE, FALSE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame29), 4); vbox32 = gtk_vbox_new (FALSE, 2); gtk_widget_set_name (vbox32, "vbox32"); gtk_widget_ref (vbox32); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox32", vbox32, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox32); gtk_container_add (GTK_CONTAINER (frame29), vbox32); gtk_container_set_border_width (GTK_CONTAINER (vbox32), 2); cfg_mintime_enable = gtk_check_button_new_with_label ("Play at least for specified time"); gtk_widget_set_name (cfg_mintime_enable, "cfg_mintime_enable"); gtk_widget_ref (cfg_mintime_enable); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_mintime_enable", cfg_mintime_enable, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_mintime_enable); gtk_box_pack_start (GTK_BOX (vbox32), cfg_mintime_enable, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_mintime_enable, "If enabled, the tune is played at least for the specified time, adding silence to the end if necessary.", NULL); hbox18 = gtk_hbox_new (FALSE, 2); gtk_widget_set_name (hbox18, "hbox18"); gtk_widget_ref (hbox18); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "hbox18", hbox18, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (hbox18); gtk_box_pack_start (GTK_BOX (vbox32), hbox18, FALSE, TRUE, 2); cfg_mintime_label1 = gtk_label_new ("Playtime: "); gtk_widget_set_name (cfg_mintime_label1, "cfg_mintime_label1"); gtk_widget_ref (cfg_mintime_label1); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_mintime_label1", cfg_mintime_label1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_mintime_label1); gtk_box_pack_start (GTK_BOX (hbox18), cfg_mintime_label1, FALSE, FALSE, 0); gtk_misc_set_alignment (GTK_MISC (cfg_mintime_label1), 0, 0.5); cfg_mintime_adj = gtk_adjustment_new (15, 1, 32767, 1, 60, 60); cfg_mintime = gtk_spin_button_new (GTK_ADJUSTMENT (cfg_mintime_adj), 1, 0); gtk_widget_set_name (cfg_mintime, "cfg_mintime"); gtk_widget_ref (cfg_mintime); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_mintime", cfg_mintime, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_mintime); gtk_box_pack_start (GTK_BOX (hbox18), cfg_mintime, FALSE, TRUE, 0); cfg_mintime_label2 = gtk_label_new ("seconds"); gtk_widget_set_name (cfg_mintime_label2, "cfg_mintime_label2"); gtk_widget_ref (cfg_mintime_label2); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_mintime_label2", cfg_mintime_label2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_mintime_label2); gtk_box_pack_start (GTK_BOX (hbox18), cfg_mintime_label2, FALSE, FALSE, 0); gtk_misc_set_alignment (GTK_MISC (cfg_mintime_label2), 0, 0.5); frame21 = gtk_frame_new ("Maximum playtime: "); gtk_widget_set_name (frame21, "frame21"); gtk_widget_ref (frame21); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "frame21", frame21, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame21); gtk_box_pack_start (GTK_BOX (vbox20), frame21, FALSE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame21), 4); vbox21 = gtk_vbox_new (FALSE, 2); gtk_widget_set_name (vbox21, "vbox21"); gtk_widget_ref (vbox21); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox21", vbox21, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox21); gtk_container_add (GTK_CONTAINER (frame21), vbox21); gtk_container_set_border_width (GTK_CONTAINER (vbox21), 2); cfg_maxtime_enable = gtk_check_button_new_with_label ("Play for specified time maximum"); gtk_widget_set_name (cfg_maxtime_enable, "cfg_maxtime_enable"); gtk_widget_ref (cfg_maxtime_enable); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_maxtime_enable", cfg_maxtime_enable, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_maxtime_enable); gtk_box_pack_start (GTK_BOX (vbox21), cfg_maxtime_enable, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_maxtime_enable, "If enabled, tune is played until specified duration is reached (aka maximum playtime).", NULL); cfg_maxtime_unknown = gtk_check_button_new_with_label ("Only when song length is unknown"); gtk_widget_set_name (cfg_maxtime_unknown, "cfg_maxtime_unknown"); gtk_widget_ref (cfg_maxtime_unknown); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_maxtime_unknown", cfg_maxtime_unknown, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_maxtime_unknown); gtk_box_pack_start (GTK_BOX (vbox21), cfg_maxtime_unknown, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_maxtime_unknown, "If enabled, the maximum playtime is applied only if song/tune length is not known.", NULL); hbox14 = gtk_hbox_new (FALSE, 2); gtk_widget_set_name (hbox14, "hbox14"); gtk_widget_ref (hbox14); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "hbox14", hbox14, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (hbox14); gtk_box_pack_start (GTK_BOX (vbox21), hbox14, FALSE, TRUE, 2); cfg_maxtime_label1 = gtk_label_new ("Playtime: "); gtk_widget_set_name (cfg_maxtime_label1, "cfg_maxtime_label1"); gtk_widget_ref (cfg_maxtime_label1); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_maxtime_label1", cfg_maxtime_label1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_maxtime_label1); gtk_box_pack_start (GTK_BOX (hbox14), cfg_maxtime_label1, FALSE, FALSE, 0); gtk_misc_set_alignment (GTK_MISC (cfg_maxtime_label1), 0, 0.5); cfg_maxtime_adj = gtk_adjustment_new (150, 1, 32767, 1, 60, 60); cfg_maxtime = gtk_spin_button_new (GTK_ADJUSTMENT (cfg_maxtime_adj), 1, 0); gtk_widget_set_name (cfg_maxtime, "cfg_maxtime"); gtk_widget_ref (cfg_maxtime); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_maxtime", cfg_maxtime, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_maxtime); gtk_box_pack_start (GTK_BOX (hbox14), cfg_maxtime, FALSE, TRUE, 0); cfg_maxtime_label2 = gtk_label_new ("seconds"); gtk_widget_set_name (cfg_maxtime_label2, "cfg_maxtime_label2"); gtk_widget_ref (cfg_maxtime_label2); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_maxtime_label2", cfg_maxtime_label2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_maxtime_label2); gtk_box_pack_start (GTK_BOX (hbox14), cfg_maxtime_label2, FALSE, FALSE, 0); gtk_misc_set_alignment (GTK_MISC (cfg_maxtime_label2), 0, 0.5); frame18 = gtk_frame_new ("Song length database: "); gtk_widget_set_name (frame18, "frame18"); gtk_widget_ref (frame18); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "frame18", frame18, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame18); gtk_box_pack_start (GTK_BOX (vbox20), frame18, FALSE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame18), 4); vbox18 = gtk_vbox_new (FALSE, 2); gtk_widget_set_name (vbox18, "vbox18"); gtk_widget_ref (vbox18); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox18", vbox18, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox18); gtk_container_add (GTK_CONTAINER (frame18), vbox18); gtk_container_set_border_width (GTK_CONTAINER (vbox18), 2); cfg_sld_enable = gtk_check_button_new_with_label ("Use XSIDPLAY-compatible database"); gtk_widget_set_name (cfg_sld_enable, "cfg_sld_enable"); gtk_widget_ref (cfg_sld_enable); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_sld_enable", cfg_sld_enable, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_sld_enable); gtk_box_pack_start (GTK_BOX (vbox18), cfg_sld_enable, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_sld_enable, "This option enables using of XSIDPLAY compatible song length database. (Refer to XMMS-SID documentation for more information)", NULL); hbox13 = gtk_hbox_new (FALSE, 4); gtk_widget_set_name (hbox13, "hbox13"); gtk_widget_ref (hbox13); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "hbox13", hbox13, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (hbox13); gtk_box_pack_start (GTK_BOX (vbox18), hbox13, FALSE, TRUE, 0); cfg_sld_label1 = gtk_label_new ("DB-file: "); gtk_widget_set_name (cfg_sld_label1, "cfg_sld_label1"); gtk_widget_ref (cfg_sld_label1); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_sld_label1", cfg_sld_label1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_sld_label1); gtk_box_pack_start (GTK_BOX (hbox13), cfg_sld_label1, FALSE, TRUE, 0); cfg_sld_dbpath = gtk_entry_new (); gtk_widget_set_name (cfg_sld_dbpath, "cfg_sld_dbpath"); gtk_widget_ref (cfg_sld_dbpath); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_sld_dbpath", cfg_sld_dbpath, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_sld_dbpath); gtk_box_pack_start (GTK_BOX (hbox13), cfg_sld_dbpath, TRUE, TRUE, 0); gtk_tooltips_set_tip (tooltips, cfg_sld_dbpath, "Database path and filename", NULL); cfg_sld_dbbrowse = gtk_button_new_with_label ("Browse"); gtk_widget_set_name (cfg_sld_dbbrowse, "cfg_sld_dbbrowse"); gtk_widget_ref (cfg_sld_dbbrowse); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_sld_dbbrowse", cfg_sld_dbbrowse, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_sld_dbbrowse); gtk_box_pack_start (GTK_BOX (hbox13), cfg_sld_dbbrowse, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_sld_dbbrowse, "Browse for song length-database file", NULL); label26 = gtk_label_new ("Songlength"); gtk_widget_set_name (label26, "label26"); gtk_widget_ref (label26); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "label26", label26, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label26); gtk_notebook_set_tab_label (GTK_NOTEBOOK (cfg_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (cfg_notebook), 4), label26); vbox33 = gtk_vbox_new (FALSE, 0); gtk_widget_set_name (vbox33, "vbox33"); gtk_widget_ref (vbox33); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox33", vbox33, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox33); gtk_container_add (GTK_CONTAINER (cfg_notebook), vbox33); frame7 = gtk_frame_new ("SID Tune Information List (STIL) database: "); gtk_widget_set_name (frame7, "frame7"); gtk_widget_ref (frame7); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "frame7", frame7, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame7); gtk_box_pack_start (GTK_BOX (vbox33), frame7, FALSE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame7), 4); vbox8 = gtk_vbox_new (FALSE, 2); gtk_widget_set_name (vbox8, "vbox8"); gtk_widget_ref (vbox8); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox8", vbox8, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox8); gtk_container_add (GTK_CONTAINER (frame7), vbox8); gtk_container_set_border_width (GTK_CONTAINER (vbox8), 2); cfg_stil_enable = gtk_check_button_new_with_label ("Use STIL database"); gtk_widget_set_name (cfg_stil_enable, "cfg_stil_enable"); gtk_widget_ref (cfg_stil_enable); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_stil_enable", cfg_stil_enable, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_stil_enable); gtk_box_pack_start (GTK_BOX (vbox8), cfg_stil_enable, TRUE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_stil_enable, "If this option is enabled (and the database & HVSC settings below are correctly set), XMMS-SID will use and display additional information from STIL database when HVSC SIDs are played.", NULL); hbox3 = gtk_hbox_new (FALSE, 0); gtk_widget_set_name (hbox3, "hbox3"); gtk_widget_ref (hbox3); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "hbox3", hbox3, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (hbox3); gtk_box_pack_start (GTK_BOX (vbox8), hbox3, TRUE, TRUE, 0); cfg_stil_label1 = gtk_label_new ("STIL file:"); gtk_widget_set_name (cfg_stil_label1, "cfg_stil_label1"); gtk_widget_ref (cfg_stil_label1); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_stil_label1", cfg_stil_label1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_stil_label1); gtk_box_pack_start (GTK_BOX (hbox3), cfg_stil_label1, FALSE, FALSE, 0); gtk_misc_set_padding (GTK_MISC (cfg_stil_label1), 4, 0); alignment2 = gtk_alignment_new (0.5, 0.5, 1, 1); gtk_widget_set_name (alignment2, "alignment2"); gtk_widget_ref (alignment2); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "alignment2", alignment2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (alignment2); gtk_box_pack_start (GTK_BOX (hbox3), alignment2, TRUE, TRUE, 4); cfg_stil_dbpath = gtk_entry_new (); gtk_widget_set_name (cfg_stil_dbpath, "cfg_stil_dbpath"); gtk_widget_ref (cfg_stil_dbpath); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_stil_dbpath", cfg_stil_dbpath, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_stil_dbpath); gtk_container_add (GTK_CONTAINER (alignment2), cfg_stil_dbpath); gtk_tooltips_set_tip (tooltips, cfg_stil_dbpath, "Path and filename of STIL database file (STIL.txt), usually found from HVSC's DOCUMENTS-subdirectory.", NULL); alignment1 = gtk_alignment_new (0.5, 0.5, 1, 0.300001); gtk_widget_set_name (alignment1, "alignment1"); gtk_widget_ref (alignment1); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "alignment1", alignment1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (alignment1); gtk_box_pack_end (GTK_BOX (hbox3), alignment1, FALSE, FALSE, 0); gtk_container_set_border_width (GTK_CONTAINER (alignment1), 4); cfg_stil_browse = gtk_button_new_with_label ("Browse"); gtk_widget_set_name (cfg_stil_browse, "cfg_stil_browse"); gtk_widget_ref (cfg_stil_browse); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_stil_browse", cfg_stil_browse, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_stil_browse); gtk_container_add (GTK_CONTAINER (alignment1), cfg_stil_browse); gtk_tooltips_set_tip (tooltips, cfg_stil_browse, "Browse for STIL-database file", NULL); hbox17 = gtk_hbox_new (FALSE, 0); gtk_widget_set_name (hbox17, "hbox17"); gtk_widget_ref (hbox17); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "hbox17", hbox17, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (hbox17); gtk_box_pack_start (GTK_BOX (vbox8), hbox17, TRUE, TRUE, 0); cfg_hvsc_label1 = gtk_label_new ("HVSC path:"); gtk_widget_set_name (cfg_hvsc_label1, "cfg_hvsc_label1"); gtk_widget_ref (cfg_hvsc_label1); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_hvsc_label1", cfg_hvsc_label1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_hvsc_label1); gtk_box_pack_start (GTK_BOX (hbox17), cfg_hvsc_label1, FALSE, FALSE, 0); gtk_misc_set_padding (GTK_MISC (cfg_hvsc_label1), 4, 0); alignment6 = gtk_alignment_new (0.5, 0.5, 1, 1); gtk_widget_set_name (alignment6, "alignment6"); gtk_widget_ref (alignment6); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "alignment6", alignment6, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (alignment6); gtk_box_pack_start (GTK_BOX (hbox17), alignment6, TRUE, TRUE, 4); cfg_hvsc_path = gtk_entry_new (); gtk_widget_set_name (cfg_hvsc_path, "cfg_hvsc_path"); gtk_widget_ref (cfg_hvsc_path); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_hvsc_path", cfg_hvsc_path, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_hvsc_path); gtk_container_add (GTK_CONTAINER (alignment6), cfg_hvsc_path); gtk_tooltips_set_tip (tooltips, cfg_hvsc_path, "Path to base-directory of your High Voltage SID Collection (HVSC), for example /media/C64Music/", NULL); alignment7 = gtk_alignment_new (0.5, 0.5, 1, 0.300001); gtk_widget_set_name (alignment7, "alignment7"); gtk_widget_ref (alignment7); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "alignment7", alignment7, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (alignment7); gtk_box_pack_end (GTK_BOX (hbox17), alignment7, FALSE, FALSE, 0); gtk_container_set_border_width (GTK_CONTAINER (alignment7), 4); cfg_hvsc_browse = gtk_button_new_with_label ("Browse"); gtk_widget_set_name (cfg_hvsc_browse, "cfg_hvsc_browse"); gtk_widget_ref (cfg_hvsc_browse); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_hvsc_browse", cfg_hvsc_browse, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_hvsc_browse); gtk_container_add (GTK_CONTAINER (alignment7), cfg_hvsc_browse); gtk_tooltips_set_tip (tooltips, cfg_hvsc_browse, "Browse for HVSC path", NULL); frame16 = gtk_frame_new ("Song name/title format: "); gtk_widget_set_name (frame16, "frame16"); gtk_widget_ref (frame16); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "frame16", frame16, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame16); gtk_box_pack_start (GTK_BOX (vbox33), frame16, FALSE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame16), 4); vbox16 = gtk_vbox_new (FALSE, 2); gtk_widget_set_name (vbox16, "vbox16"); gtk_widget_ref (vbox16); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox16", vbox16, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox16); gtk_container_add (GTK_CONTAINER (frame16), vbox16); gtk_container_set_border_width (GTK_CONTAINER (vbox16), 2); cfg_ftitle_override = gtk_check_button_new_with_label ("Override generic XMMS titles"); gtk_widget_set_name (cfg_ftitle_override, "cfg_ftitle_override"); gtk_widget_ref (cfg_ftitle_override); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_ftitle_override", cfg_ftitle_override, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_ftitle_override); gtk_box_pack_start (GTK_BOX (vbox16), cfg_ftitle_override, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_ftitle_override, "XMMS v1.2.5 and later support generic titlestring formatting (see XMMS preferences). This option can be enabled to override those generic titles with XMMS-SID specific ones. Formatting mnemonics are explained briefly below.", NULL); cfg_ftitle_format = gtk_entry_new (); gtk_widget_set_name (cfg_ftitle_format, "cfg_ftitle_format"); gtk_widget_ref (cfg_ftitle_format); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_ftitle_format", cfg_ftitle_format, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_ftitle_format); gtk_box_pack_start (GTK_BOX (vbox16), cfg_ftitle_format, FALSE, FALSE, 2); hbox9 = gtk_hbox_new (TRUE, 0); gtk_widget_set_name (hbox9, "hbox9"); gtk_widget_ref (hbox9); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "hbox9", hbox9, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (hbox9); gtk_box_pack_start (GTK_BOX (vbox16), hbox9, FALSE, FALSE, 2); cfg_ftitle_desc1 = gtk_label_new ("%p - Performer/composer\n%t - Song name (title)\n%c - Copyright\n%s - File type\n%m - SID model"); gtk_widget_set_name (cfg_ftitle_desc1, "cfg_ftitle_desc1"); gtk_widget_ref (cfg_ftitle_desc1); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_ftitle_desc1", cfg_ftitle_desc1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_ftitle_desc1); gtk_box_pack_start (GTK_BOX (hbox9), cfg_ftitle_desc1, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (cfg_ftitle_desc1), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment (GTK_MISC (cfg_ftitle_desc1), 0.04, 0.5); cfg_ftitle_desc2 = gtk_label_new ("%n - Subtune\n%N - Number of subtunes\n%f - Filename\n%F - File path\n%e - File extension"); gtk_widget_set_name (cfg_ftitle_desc2, "cfg_ftitle_desc2"); gtk_widget_ref (cfg_ftitle_desc2); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_ftitle_desc2", cfg_ftitle_desc2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_ftitle_desc2); gtk_box_pack_start (GTK_BOX (hbox9), cfg_ftitle_desc2, FALSE, FALSE, 0); gtk_label_set_justify (GTK_LABEL (cfg_ftitle_desc2), GTK_JUSTIFY_LEFT); gtk_misc_set_alignment (GTK_MISC (cfg_ftitle_desc2), 0.04, 0.5); label23 = gtk_label_new ("Title"); gtk_widget_set_name (label23, "label23"); gtk_widget_ref (label23); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "label23", label23, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label23); gtk_notebook_set_tab_label (GTK_NOTEBOOK (cfg_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (cfg_notebook), 5), label23); vbox19 = gtk_vbox_new (FALSE, 0); gtk_widget_set_name (vbox19, "vbox19"); gtk_widget_ref (vbox19); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox19", vbox19, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox19); gtk_container_add (GTK_CONTAINER (cfg_notebook), vbox19); frame28 = gtk_frame_new ("Sub-tune control: "); gtk_widget_set_name (frame28, "frame28"); gtk_widget_ref (frame28); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "frame28", frame28, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame28); gtk_box_pack_start (GTK_BOX (vbox19), frame28, FALSE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame28), 4); vbox31 = gtk_vbox_new (FALSE, 2); gtk_widget_set_name (vbox31, "vbox31"); gtk_widget_ref (vbox31); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox31", vbox31, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox31); gtk_container_add (GTK_CONTAINER (frame28), vbox31); gtk_container_set_border_width (GTK_CONTAINER (vbox31), 2); cfg_subctrl_none = gtk_radio_button_new_with_label (subtune_group, "Disabled"); subtune_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_subctrl_none)); gtk_widget_set_name (cfg_subctrl_none, "cfg_subctrl_none"); gtk_widget_ref (cfg_subctrl_none); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_subctrl_none", cfg_subctrl_none, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_subctrl_none); gtk_box_pack_start (GTK_BOX (vbox31), cfg_subctrl_none, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_subctrl_none, "No sub-tune control.", NULL); cfg_subctrl_seek = gtk_radio_button_new_with_label (subtune_group, "Seek back/forward changes sub-tune"); subtune_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_subctrl_seek)); gtk_widget_set_name (cfg_subctrl_seek, "cfg_subctrl_seek"); gtk_widget_ref (cfg_subctrl_seek); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_subctrl_seek", cfg_subctrl_seek, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_subctrl_seek); gtk_box_pack_start (GTK_BOX (vbox31), cfg_subctrl_seek, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_subctrl_seek, "Seeking backwards/forwards selects previous/next sub-tune, similar to selector used in XMMS-SidPlay.", NULL); cfg_subctrl_popup = gtk_radio_button_new_with_label (subtune_group, "Pop-up via seekbar (UADE-style)"); subtune_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_subctrl_popup)); gtk_widget_set_name (cfg_subctrl_popup, "cfg_subctrl_popup"); gtk_widget_ref (cfg_subctrl_popup); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_subctrl_popup", cfg_subctrl_popup, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_subctrl_popup); gtk_box_pack_start (GTK_BOX (vbox31), cfg_subctrl_popup, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_subctrl_popup, "By pressing the seekbar a sub-tune control window pops up, in style of UADE (Unix Amiga Delitracker Emulator)", NULL); cfg_subctrl_patch = gtk_radio_button_new_with_label (subtune_group, "Song-position patch"); subtune_group = gtk_radio_button_group (GTK_RADIO_BUTTON (cfg_subctrl_patch)); gtk_widget_set_name (cfg_subctrl_patch, "cfg_subctrl_patch"); gtk_widget_ref (cfg_subctrl_patch); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_subctrl_patch", cfg_subctrl_patch, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_subctrl_patch); gtk_box_pack_start (GTK_BOX (vbox31), cfg_subctrl_patch, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_subctrl_patch, "Seekbar works as a sub-tune selector (Best option if you have patched your XMMS with the song-position patch.)", NULL); frame31 = gtk_frame_new ("Automatic sub-tune changes: "); gtk_widget_set_name (frame31, "frame31"); gtk_widget_ref (frame31); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "frame31", frame31, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame31); gtk_box_pack_start (GTK_BOX (vbox19), frame31, FALSE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame31), 4); vbox35 = gtk_vbox_new (FALSE, 2); gtk_widget_set_name (vbox35, "vbox35"); gtk_widget_ref (vbox35); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox35", vbox35, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox35); gtk_container_add (GTK_CONTAINER (frame31), vbox35); gtk_container_set_border_width (GTK_CONTAINER (vbox35), 2); cfg_subauto_enable = gtk_check_button_new_with_label ("Go through all sub-tunes in file"); gtk_widget_set_name (cfg_subauto_enable, "cfg_subauto_enable"); gtk_widget_ref (cfg_subauto_enable); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_subauto_enable", cfg_subauto_enable, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_subauto_enable); gtk_box_pack_start (GTK_BOX (vbox35), cfg_subauto_enable, FALSE, FALSE, 0); cfg_subauto_min_only = gtk_check_button_new_with_label ("Only tunes with specified minimum length "); gtk_widget_set_name (cfg_subauto_min_only, "cfg_subauto_min_only"); gtk_widget_ref (cfg_subauto_min_only); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_subauto_min_only", cfg_subauto_min_only, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_subauto_min_only); gtk_box_pack_start (GTK_BOX (vbox35), cfg_subauto_min_only, FALSE, FALSE, 0); hbox20 = gtk_hbox_new (FALSE, 2); gtk_widget_set_name (hbox20, "hbox20"); gtk_widget_ref (hbox20); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "hbox20", hbox20, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (hbox20); gtk_box_pack_start (GTK_BOX (vbox35), hbox20, TRUE, TRUE, 0); label52 = gtk_label_new ("Playtime: "); gtk_widget_set_name (label52, "label52"); gtk_widget_ref (label52); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "label52", label52, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label52); gtk_box_pack_start (GTK_BOX (hbox20), label52, FALSE, FALSE, 0); gtk_misc_set_alignment (GTK_MISC (label52), 0, 0.5); cfg_subauto_mintime_adj = gtk_adjustment_new (15, 1, 32767, 1, 60, 60); cfg_subauto_mintime = gtk_spin_button_new (GTK_ADJUSTMENT (cfg_subauto_mintime_adj), 1, 0); gtk_widget_set_name (cfg_subauto_mintime, "cfg_subauto_mintime"); gtk_widget_ref (cfg_subauto_mintime); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_subauto_mintime", cfg_subauto_mintime, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_subauto_mintime); gtk_box_pack_start (GTK_BOX (hbox20), cfg_subauto_mintime, FALSE, TRUE, 0); label53 = gtk_label_new ("seconds"); gtk_widget_set_name (label53, "label53"); gtk_widget_ref (label53); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "label53", label53, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label53); gtk_box_pack_start (GTK_BOX (hbox20), label53, FALSE, FALSE, 0); gtk_misc_set_alignment (GTK_MISC (label53), 0, 0.5); frame22 = gtk_frame_new ("Miscellaneous options: "); gtk_widget_set_name (frame22, "frame22"); gtk_widget_ref (frame22); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "frame22", frame22, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame22); gtk_box_pack_start (GTK_BOX (vbox19), frame22, FALSE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame22), 4); vbox22 = gtk_vbox_new (FALSE, 0); gtk_widget_set_name (vbox22, "vbox22"); gtk_widget_ref (vbox22); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "vbox22", vbox22, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox22); gtk_container_add (GTK_CONTAINER (frame22), vbox22); gtk_container_set_border_width (GTK_CONTAINER (vbox22), 2); cfg_detectmagic = gtk_check_button_new_with_label ("Detect file by contents (slower)"); gtk_widget_set_name (cfg_detectmagic, "cfg_detectmagic"); gtk_widget_ref (cfg_detectmagic); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_detectmagic", cfg_detectmagic, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_detectmagic); gtk_box_pack_start (GTK_BOX (vbox22), cfg_detectmagic, FALSE, FALSE, 0); gtk_tooltips_set_tip (tooltips, cfg_detectmagic, "Determine if file is a SID-tune by checking the file contents. If NOT selected, filetype is determined by checking filename extension (.sid, .dat, ...)", NULL); label3 = gtk_label_new ("Misc"); gtk_widget_set_name (label3, "label3"); gtk_widget_ref (label3); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "label3", label3, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label3); gtk_notebook_set_tab_label (GTK_NOTEBOOK (cfg_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (cfg_notebook), 6), label3); hbuttonbox1 = gtk_hbutton_box_new (); gtk_widget_set_name (hbuttonbox1, "hbuttonbox1"); gtk_widget_ref (hbuttonbox1); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "hbuttonbox1", hbuttonbox1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (hbuttonbox1); gtk_box_pack_end (GTK_BOX (vbox1), hbuttonbox1, FALSE, FALSE, 0); gtk_container_set_border_width (GTK_CONTAINER (hbuttonbox1), 4); gtk_button_box_set_layout (GTK_BUTTON_BOX (hbuttonbox1), GTK_BUTTONBOX_END); gtk_button_box_set_child_size (GTK_BUTTON_BOX (hbuttonbox1), 85, 30); cfg_ok = gtk_button_new_with_label ("OK"); gtk_widget_set_name (cfg_ok, "cfg_ok"); gtk_widget_ref (cfg_ok); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_ok", cfg_ok, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_ok); gtk_container_add (GTK_CONTAINER (hbuttonbox1), cfg_ok); GTK_WIDGET_SET_FLAGS (cfg_ok, GTK_CAN_DEFAULT); gtk_tooltips_set_tip (tooltips, cfg_ok, "Accept and update changes", NULL); cfg_cancel = gtk_button_new_with_label ("Cancel"); gtk_widget_set_name (cfg_cancel, "cfg_cancel"); gtk_widget_ref (cfg_cancel); gtk_object_set_data_full (GTK_OBJECT (xs_configwin), "cfg_cancel", cfg_cancel, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (cfg_cancel); gtk_container_add (GTK_CONTAINER (hbuttonbox1), cfg_cancel); GTK_WIDGET_SET_FLAGS (cfg_cancel, GTK_CAN_DEFAULT); gtk_tooltips_set_tip (tooltips, cfg_cancel, "Cancel any changes", NULL); gtk_signal_connect (GTK_OBJECT (cfg_samplerate_menu), "clicked", GTK_SIGNAL_FUNC (xs_cfg_samplerate_menu_clicked), NULL); gtk_signal_connect (GTK_OBJECT (cfg_oversample), "toggled", GTK_SIGNAL_FUNC (xs_cfg_oversample_toggled), NULL); gtk_signal_connect (GTK_OBJECT (cfg_emu_sidplay1), "toggled", GTK_SIGNAL_FUNC (xs_cfg_emu_sidplay1_toggled), NULL); gtk_signal_connect (GTK_OBJECT (cfg_emu_sidplay2), "toggled", GTK_SIGNAL_FUNC (xs_cfg_emu_sidplay2_toggled), NULL); gtk_signal_connect (GTK_OBJECT (cfg_emu_filters), "toggled", GTK_SIGNAL_FUNC (xs_cfg_emu_filters_toggled), NULL); gtk_signal_connect (GTK_OBJECT (cfg_filter_reset), "clicked", GTK_SIGNAL_FUNC (xs_cfg_filter_reset), NULL); gtk_signal_connect (GTK_OBJECT (cfg_filter_sync), "clicked", GTK_SIGNAL_FUNC (xs_cfg_filter_sync_clicked), NULL); gtk_signal_connect (GTK_OBJECT (cfg_filter2_reset), "clicked", GTK_SIGNAL_FUNC (xs_cfg_filter2_reset), NULL); gtk_signal_connect (GTK_OBJECT (cfg_filter2_sync), "clicked", GTK_SIGNAL_FUNC (xs_cfg_filter2_sync_clicked), NULL); gtk_signal_connect (GTK_OBJECT (cfg_mintime_enable), "toggled", GTK_SIGNAL_FUNC (xs_cfg_mintime_enable_toggled), NULL); gtk_signal_connect (GTK_OBJECT (cfg_mintime), "changed", GTK_SIGNAL_FUNC (xs_cfg_mintime_changed), NULL); gtk_signal_connect (GTK_OBJECT (cfg_maxtime_enable), "toggled", GTK_SIGNAL_FUNC (xs_cfg_maxtime_enable_toggled), NULL); gtk_signal_connect (GTK_OBJECT (cfg_maxtime), "changed", GTK_SIGNAL_FUNC (xs_cfg_maxtime_changed), NULL); gtk_signal_connect (GTK_OBJECT (cfg_sld_enable), "toggled", GTK_SIGNAL_FUNC (xs_cfg_sld_enable_toggled), NULL); gtk_signal_connect (GTK_OBJECT (cfg_sld_dbbrowse), "clicked", GTK_SIGNAL_FUNC (xs_cfg_sld_dbbrowse), NULL); gtk_signal_connect (GTK_OBJECT (cfg_stil_enable), "toggled", GTK_SIGNAL_FUNC (xs_cfg_stil_enable_toggled), NULL); gtk_signal_connect (GTK_OBJECT (cfg_stil_browse), "clicked", GTK_SIGNAL_FUNC (xs_cfg_stil_browse), NULL); gtk_signal_connect (GTK_OBJECT (cfg_hvsc_browse), "clicked", GTK_SIGNAL_FUNC (xs_cfg_hvsc_browse), NULL); gtk_signal_connect (GTK_OBJECT (cfg_ftitle_override), "toggled", GTK_SIGNAL_FUNC (xs_cfg_ftitle_override_toggled), NULL); gtk_signal_connect (GTK_OBJECT (cfg_subauto_enable), "toggled", GTK_SIGNAL_FUNC (xs_cfg_subauto_enable_toggled), NULL); gtk_signal_connect (GTK_OBJECT (cfg_subauto_min_only), "toggled", GTK_SIGNAL_FUNC (xs_cfg_subauto_min_only_toggled), NULL); gtk_signal_connect (GTK_OBJECT (cfg_ok), "clicked", GTK_SIGNAL_FUNC (xs_cfg_ok), NULL); gtk_signal_connect (GTK_OBJECT (cfg_cancel), "clicked", GTK_SIGNAL_FUNC (xs_cfg_cancel), NULL); gtk_object_set_data (GTK_OBJECT (xs_configwin), "tooltips", tooltips); return xs_configwin; } GtkWidget* create_xs_fileinfowin (void) { GtkWidget *xs_fileinfowin; GtkWidget *vbox14; GtkWidget *alignment8; GtkWidget *frame30; GtkWidget *hbox19; GtkWidget *fileinfo_subctrl_prev; GtkWidget *fileinfo_subctrl_adj; GtkWidget *fileinfo_subctrl_next; GtkWidget *frame14; GtkWidget *table1; GtkWidget *label16; GtkWidget *label17; GtkWidget *label18; GtkWidget *label19; GtkWidget *fileinfo_filename; GtkWidget *fileinfo_songname; GtkWidget *fileinfo_composer; GtkWidget *fileinfo_copyright; GtkWidget *frame15; GtkWidget *vbox15; GtkWidget *fileinfo_sub_tune; GtkWidget *fileinfo_sub_tune_menu; GtkWidget *table2; GtkWidget *label41; GtkWidget *fileinfo_sub_author; GtkWidget *label50; GtkWidget *fileinfo_sub_name; GtkWidget *label51; GtkWidget *entry1; GtkWidget *scrolledwindow2; GtkWidget *fileinfo_sub_info; GtkWidget *button2; xs_fileinfowin = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_window_set_type_hint (GTK_WINDOW(xs_fileinfowin), GDK_WINDOW_TYPE_HINT_DIALOG); gtk_widget_set_name (xs_fileinfowin, "xs_fileinfowin"); gtk_object_set_data (GTK_OBJECT (xs_fileinfowin), "xs_fileinfowin", xs_fileinfowin); gtk_widget_set_usize (xs_fileinfowin, 400, -2); gtk_window_set_title (GTK_WINDOW (xs_fileinfowin), "XMMS-SID Fileinfo"); gtk_window_set_position (GTK_WINDOW (xs_fileinfowin), GTK_WIN_POS_MOUSE); vbox14 = gtk_vbox_new (FALSE, 0); gtk_widget_set_name (vbox14, "vbox14"); gtk_widget_ref (vbox14); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "vbox14", vbox14, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox14); gtk_container_add (GTK_CONTAINER (xs_fileinfowin), vbox14); alignment8 = gtk_alignment_new (0.5, 0.5, 0.1, 1); gtk_widget_set_name (alignment8, "alignment8"); gtk_widget_ref (alignment8); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "alignment8", alignment8, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (alignment8); gtk_box_pack_start (GTK_BOX (vbox14), alignment8, FALSE, FALSE, 0); frame30 = gtk_frame_new (NULL); gtk_widget_set_name (frame30, "frame30"); gtk_widget_ref (frame30); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "frame30", frame30, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame30); gtk_container_add (GTK_CONTAINER (alignment8), frame30); gtk_container_set_border_width (GTK_CONTAINER (frame30), 2); gtk_frame_set_shadow_type (GTK_FRAME (frame30), GTK_SHADOW_OUT); hbox19 = gtk_hbox_new (FALSE, 0); gtk_widget_set_name (hbox19, "hbox19"); gtk_widget_ref (hbox19); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "hbox19", hbox19, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (hbox19); gtk_container_add (GTK_CONTAINER (frame30), hbox19); gtk_container_set_border_width (GTK_CONTAINER (hbox19), 4); fileinfo_subctrl_prev = gtk_button_new_with_label (" < "); gtk_widget_set_name (fileinfo_subctrl_prev, "fileinfo_subctrl_prev"); gtk_widget_ref (fileinfo_subctrl_prev); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "fileinfo_subctrl_prev", fileinfo_subctrl_prev, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (fileinfo_subctrl_prev); gtk_box_pack_start (GTK_BOX (hbox19), fileinfo_subctrl_prev, FALSE, FALSE, 0); fileinfo_subctrl_adj = gtk_hscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, 0, 0, 0, 0, 0))); gtk_widget_set_name (fileinfo_subctrl_adj, "fileinfo_subctrl_adj"); gtk_widget_ref (fileinfo_subctrl_adj); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "fileinfo_subctrl_adj", fileinfo_subctrl_adj, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (fileinfo_subctrl_adj); gtk_box_pack_start (GTK_BOX (hbox19), fileinfo_subctrl_adj, TRUE, TRUE, 0); gtk_scale_set_digits (GTK_SCALE (fileinfo_subctrl_adj), 0); gtk_range_set_update_policy (GTK_RANGE (fileinfo_subctrl_adj), GTK_UPDATE_DELAYED); fileinfo_subctrl_next = gtk_button_new_with_label (" > "); gtk_widget_set_name (fileinfo_subctrl_next, "fileinfo_subctrl_next"); gtk_widget_ref (fileinfo_subctrl_next); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "fileinfo_subctrl_next", fileinfo_subctrl_next, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (fileinfo_subctrl_next); gtk_box_pack_start (GTK_BOX (hbox19), fileinfo_subctrl_next, FALSE, FALSE, 0); frame14 = gtk_frame_new ("Song Information:"); gtk_widget_set_name (frame14, "frame14"); gtk_widget_ref (frame14); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "frame14", frame14, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame14); gtk_box_pack_start (GTK_BOX (vbox14), frame14, FALSE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame14), 4); table1 = gtk_table_new (4, 2, FALSE); gtk_widget_set_name (table1, "table1"); gtk_widget_ref (table1); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "table1", table1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (table1); gtk_container_add (GTK_CONTAINER (frame14), table1); gtk_container_set_border_width (GTK_CONTAINER (table1), 4); gtk_table_set_row_spacings (GTK_TABLE (table1), 2); gtk_table_set_col_spacings (GTK_TABLE (table1), 4); label16 = gtk_label_new ("Filename:"); gtk_widget_set_name (label16, "label16"); gtk_widget_ref (label16); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "label16", label16, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label16); gtk_table_attach (GTK_TABLE (table1), label16, 0, 1, 0, 1, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); label17 = gtk_label_new ("Songname:"); gtk_widget_set_name (label17, "label17"); gtk_widget_ref (label17); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "label17", label17, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label17); gtk_table_attach (GTK_TABLE (table1), label17, 0, 1, 1, 2, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); label18 = gtk_label_new ("Composer:"); gtk_widget_set_name (label18, "label18"); gtk_widget_ref (label18); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "label18", label18, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label18); gtk_table_attach (GTK_TABLE (table1), label18, 0, 1, 2, 3, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); label19 = gtk_label_new ("Copyright:"); gtk_widget_set_name (label19, "label19"); gtk_widget_ref (label19); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "label19", label19, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label19); gtk_table_attach (GTK_TABLE (table1), label19, 0, 1, 3, 4, (GtkAttachOptions) (0), (GtkAttachOptions) (0), 0, 0); fileinfo_filename = gtk_entry_new (); gtk_widget_set_name (fileinfo_filename, "fileinfo_filename"); gtk_widget_ref (fileinfo_filename); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "fileinfo_filename", fileinfo_filename, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (fileinfo_filename); gtk_table_attach (GTK_TABLE (table1), fileinfo_filename, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_entry_set_editable (GTK_ENTRY (fileinfo_filename), FALSE); fileinfo_songname = gtk_entry_new (); gtk_widget_set_name (fileinfo_songname, "fileinfo_songname"); gtk_widget_ref (fileinfo_songname); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "fileinfo_songname", fileinfo_songname, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (fileinfo_songname); gtk_table_attach (GTK_TABLE (table1), fileinfo_songname, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_entry_set_editable (GTK_ENTRY (fileinfo_songname), FALSE); fileinfo_composer = gtk_entry_new (); gtk_widget_set_name (fileinfo_composer, "fileinfo_composer"); gtk_widget_ref (fileinfo_composer); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "fileinfo_composer", fileinfo_composer, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (fileinfo_composer); gtk_table_attach (GTK_TABLE (table1), fileinfo_composer, 1, 2, 2, 3, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_entry_set_editable (GTK_ENTRY (fileinfo_composer), FALSE); fileinfo_copyright = gtk_entry_new (); gtk_widget_set_name (fileinfo_copyright, "fileinfo_copyright"); gtk_widget_ref (fileinfo_copyright); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "fileinfo_copyright", fileinfo_copyright, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (fileinfo_copyright); gtk_table_attach (GTK_TABLE (table1), fileinfo_copyright, 1, 2, 3, 4, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_entry_set_editable (GTK_ENTRY (fileinfo_copyright), FALSE); frame15 = gtk_frame_new ("Sub-tune Information:"); gtk_widget_set_name (frame15, "frame15"); gtk_widget_ref (frame15); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "frame15", frame15, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (frame15); gtk_box_pack_start (GTK_BOX (vbox14), frame15, TRUE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (frame15), 4); vbox15 = gtk_vbox_new (FALSE, 0); gtk_widget_set_name (vbox15, "vbox15"); gtk_widget_ref (vbox15); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "vbox15", vbox15, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (vbox15); gtk_container_add (GTK_CONTAINER (frame15), vbox15); fileinfo_sub_tune = gtk_option_menu_new (); gtk_widget_set_name (fileinfo_sub_tune, "fileinfo_sub_tune"); gtk_widget_ref (fileinfo_sub_tune); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "fileinfo_sub_tune", fileinfo_sub_tune, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (fileinfo_sub_tune); gtk_box_pack_start (GTK_BOX (vbox15), fileinfo_sub_tune, FALSE, FALSE, 0); gtk_container_set_border_width (GTK_CONTAINER (fileinfo_sub_tune), 4); fileinfo_sub_tune_menu = gtk_menu_new (); gtk_option_menu_set_menu (GTK_OPTION_MENU (fileinfo_sub_tune), fileinfo_sub_tune_menu); table2 = gtk_table_new (3, 2, FALSE); gtk_widget_set_name (table2, "table2"); gtk_widget_ref (table2); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "table2", table2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (table2); gtk_box_pack_start (GTK_BOX (vbox15), table2, FALSE, FALSE, 0); gtk_container_set_border_width (GTK_CONTAINER (table2), 4); gtk_table_set_row_spacings (GTK_TABLE (table2), 2); gtk_table_set_col_spacings (GTK_TABLE (table2), 4); label41 = gtk_label_new ("Author:"); gtk_widget_set_name (label41, "label41"); gtk_widget_ref (label41); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "label41", label41, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label41); gtk_table_attach (GTK_TABLE (table2), label41, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); fileinfo_sub_author = gtk_entry_new (); gtk_widget_set_name (fileinfo_sub_author, "fileinfo_sub_author"); gtk_widget_ref (fileinfo_sub_author); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "fileinfo_sub_author", fileinfo_sub_author, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (fileinfo_sub_author); gtk_table_attach (GTK_TABLE (table2), fileinfo_sub_author, 1, 2, 1, 2, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_entry_set_editable (GTK_ENTRY (fileinfo_sub_author), FALSE); label50 = gtk_label_new ("Name:"); gtk_widget_set_name (label50, "label50"); gtk_widget_ref (label50); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "label50", label50, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label50); gtk_table_attach (GTK_TABLE (table2), label50, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); fileinfo_sub_name = gtk_entry_new (); gtk_widget_set_name (fileinfo_sub_name, "fileinfo_sub_name"); gtk_widget_ref (fileinfo_sub_name); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "fileinfo_sub_name", fileinfo_sub_name, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (fileinfo_sub_name); gtk_table_attach (GTK_TABLE (table2), fileinfo_sub_name, 1, 2, 0, 1, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_entry_set_editable (GTK_ENTRY (fileinfo_sub_name), FALSE); label51 = gtk_label_new ("Duration:"); gtk_widget_set_name (label51, "label51"); gtk_widget_ref (label51); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "label51", label51, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (label51); gtk_table_attach (GTK_TABLE (table2), label51, 0, 1, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_misc_set_alignment (GTK_MISC (label51), 0, 0.5); entry1 = gtk_entry_new (); gtk_widget_set_name (entry1, "entry1"); gtk_widget_ref (entry1); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "entry1", entry1, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (entry1); gtk_table_attach (GTK_TABLE (table2), entry1, 1, 2, 2, 3, (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), (GtkAttachOptions) (0), 0, 0); gtk_entry_set_editable (GTK_ENTRY (entry1), FALSE); scrolledwindow2 = gtk_scrolled_window_new (NULL, NULL); gtk_widget_set_name (scrolledwindow2, "scrolledwindow2"); gtk_widget_ref (scrolledwindow2); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "scrolledwindow2", scrolledwindow2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (scrolledwindow2); gtk_box_pack_start (GTK_BOX (vbox15), scrolledwindow2, TRUE, TRUE, 0); gtk_container_set_border_width (GTK_CONTAINER (scrolledwindow2), 4); gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow2), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); fileinfo_sub_info = gtk_text_view_new (); gtk_widget_set_name (fileinfo_sub_info, "fileinfo_sub_info"); gtk_widget_ref (fileinfo_sub_info); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "fileinfo_sub_info", fileinfo_sub_info, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (fileinfo_sub_info); gtk_container_add (GTK_CONTAINER (scrolledwindow2), fileinfo_sub_info); button2 = gtk_button_new_with_label ("Close"); gtk_widget_set_name (button2, "button2"); gtk_widget_ref (button2); gtk_object_set_data_full (GTK_OBJECT (xs_fileinfowin), "button2", button2, (GtkDestroyNotify) gtk_widget_unref); gtk_widget_show (button2); gtk_box_pack_start (GTK_BOX (vbox14), button2, FALSE, FALSE, 0); GTK_WIDGET_SET_FLAGS (button2, GTK_CAN_DEFAULT); gtk_signal_connect (GTK_OBJECT (xs_fileinfowin), "delete_event", GTK_SIGNAL_FUNC (xs_fileinfo_delete), NULL); gtk_signal_connect (GTK_OBJECT (fileinfo_subctrl_prev), "clicked", GTK_SIGNAL_FUNC (xs_subctrl_prevsong), NULL); gtk_signal_connect (GTK_OBJECT (fileinfo_subctrl_next), "clicked", GTK_SIGNAL_FUNC (xs_subctrl_nextsong), NULL); gtk_signal_connect (GTK_OBJECT (button2), "clicked", GTK_SIGNAL_FUNC (xs_fileinfo_ok), NULL); gtk_widget_grab_focus (button2); gtk_widget_grab_default (button2); return xs_fileinfowin; } GtkWidget* create_xs_sldbfileselector (void) { GtkWidget *xs_sldbfileselector; GtkWidget *ok_button2; GtkWidget *cancel_button2; xs_sldbfileselector = gtk_file_selection_new ("Select HVSC song length database"); gtk_widget_set_name (xs_sldbfileselector, "xs_sldbfileselector"); gtk_object_set_data (GTK_OBJECT (xs_sldbfileselector), "xs_sldbfileselector", xs_sldbfileselector); gtk_container_set_border_width (GTK_CONTAINER (xs_sldbfileselector), 10); gtk_window_set_modal (GTK_WINDOW (xs_sldbfileselector), TRUE); gtk_file_selection_hide_fileop_buttons (GTK_FILE_SELECTION (xs_sldbfileselector)); ok_button2 = GTK_FILE_SELECTION (xs_sldbfileselector)->ok_button; gtk_widget_set_name (ok_button2, "ok_button2"); gtk_object_set_data (GTK_OBJECT (xs_sldbfileselector), "ok_button2", ok_button2); gtk_widget_show (ok_button2); GTK_WIDGET_SET_FLAGS (ok_button2, GTK_CAN_DEFAULT); cancel_button2 = GTK_FILE_SELECTION (xs_sldbfileselector)->cancel_button; gtk_widget_set_name (cancel_button2, "cancel_button2"); gtk_object_set_data (GTK_OBJECT (xs_sldbfileselector), "cancel_button2", cancel_button2); gtk_widget_show (cancel_button2); GTK_WIDGET_SET_FLAGS (cancel_button2, GTK_CAN_DEFAULT); gtk_signal_connect (GTK_OBJECT (ok_button2), "clicked", GTK_SIGNAL_FUNC (xs_cfg_sldb_fs_ok), NULL); gtk_signal_connect (GTK_OBJECT (cancel_button2), "clicked", GTK_SIGNAL_FUNC (xs_cfg_sldb_fs_cancel), NULL); return xs_sldbfileselector; } GtkWidget* create_xs_stilfileselector (void) { GtkWidget *xs_stilfileselector; GtkWidget *ok_button3; GtkWidget *cancel_button3; xs_stilfileselector = gtk_file_selection_new ("Select STIL-database "); gtk_widget_set_name (xs_stilfileselector, "xs_stilfileselector"); gtk_object_set_data (GTK_OBJECT (xs_stilfileselector), "xs_stilfileselector", xs_stilfileselector); gtk_container_set_border_width (GTK_CONTAINER (xs_stilfileselector), 10); gtk_window_set_modal (GTK_WINDOW (xs_stilfileselector), TRUE); gtk_file_selection_hide_fileop_buttons (GTK_FILE_SELECTION (xs_stilfileselector)); ok_button3 = GTK_FILE_SELECTION (xs_stilfileselector)->ok_button; gtk_widget_set_name (ok_button3, "ok_button3"); gtk_object_set_data (GTK_OBJECT (xs_stilfileselector), "ok_button3", ok_button3); gtk_widget_show (ok_button3); GTK_WIDGET_SET_FLAGS (ok_button3, GTK_CAN_DEFAULT); cancel_button3 = GTK_FILE_SELECTION (xs_stilfileselector)->cancel_button; gtk_widget_set_name (cancel_button3, "cancel_button3"); gtk_object_set_data (GTK_OBJECT (xs_stilfileselector), "cancel_button3", cancel_button3); gtk_widget_show (cancel_button3); GTK_WIDGET_SET_FLAGS (cancel_button3, GTK_CAN_DEFAULT); gtk_signal_connect (GTK_OBJECT (ok_button3), "clicked", GTK_SIGNAL_FUNC (xs_cfg_stil_fs_ok), NULL); gtk_signal_connect (GTK_OBJECT (cancel_button3), "clicked", GTK_SIGNAL_FUNC (xs_cfg_stil_fs_cancel), NULL); return xs_stilfileselector; } GtkWidget* create_xs_hvscpathselector (void) { GtkWidget *xs_hvscpathselector; GtkWidget *ok_button4; GtkWidget *cancel_button4; xs_hvscpathselector = gtk_file_selection_new ("Select HVSC location prefix"); gtk_widget_set_name (xs_hvscpathselector, "xs_hvscpathselector"); gtk_object_set_data (GTK_OBJECT (xs_hvscpathselector), "xs_hvscpathselector", xs_hvscpathselector); gtk_container_set_border_width (GTK_CONTAINER (xs_hvscpathselector), 10); gtk_window_set_modal (GTK_WINDOW (xs_hvscpathselector), TRUE); gtk_file_selection_hide_fileop_buttons (GTK_FILE_SELECTION (xs_hvscpathselector)); ok_button4 = GTK_FILE_SELECTION (xs_hvscpathselector)->ok_button; gtk_widget_set_name (ok_button4, "ok_button4"); gtk_object_set_data (GTK_OBJECT (xs_hvscpathselector), "ok_button4", ok_button4); gtk_widget_show (ok_button4); GTK_WIDGET_SET_FLAGS (ok_button4, GTK_CAN_DEFAULT); cancel_button4 = GTK_FILE_SELECTION (xs_hvscpathselector)->cancel_button; gtk_widget_set_name (cancel_button4, "cancel_button4"); gtk_object_set_data (GTK_OBJECT (xs_hvscpathselector), "cancel_button4", cancel_button4); gtk_widget_show (cancel_button4); GTK_WIDGET_SET_FLAGS (cancel_button4, GTK_CAN_DEFAULT); gtk_signal_connect (GTK_OBJECT (ok_button4), "clicked", GTK_SIGNAL_FUNC (xs_cfg_hvsc_fs_ok), NULL); gtk_signal_connect (GTK_OBJECT (cancel_button4), "clicked", GTK_SIGNAL_FUNC (xs_cfg_hvsc_fs_cancel), NULL); return xs_hvscpathselector; }