Mercurial > hg > xmms-sid
diff src/xs_config.c @ 127:ddb513bd2610
Improved audio format support, now supported formats are "queried" from
emulator engines. Preparing for NanoSID-support, since it's the worst
in this sense.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Wed, 14 Jan 2004 21:45:05 +0000 |
parents | 01496c6f85c3 |
children | 84bff1a4bb1c |
line wrap: on
line diff
--- a/src/xs_config.c Wed Jan 14 03:57:04 2004 +0000 +++ b/src/xs_config.c Wed Jan 14 21:45:05 2004 +0000 @@ -31,7 +31,8 @@ */ static GtkWidget *xs_configwin = NULL, *xs_sldb_fileselector = NULL, - *xs_stil_fileselector = NULL; + *xs_stil_fileselector = NULL, + *xs_hvsc_pathselector = NULL; #define LUW(x...) lookup_widget(xs_configwin, ## x) @@ -40,9 +41,9 @@ * Configuration specific stuff */ t_xs_cfg_item xs_cfgtable[] = { - {CTYPE_INT, &xs_cfg.fmtBitsPerSample, "fmtBitsPerSample"}, - {CTYPE_INT, &xs_cfg.fmtChannels, "fmtChannels"}, - {CTYPE_INT, &xs_cfg.fmtFrequency, "fmtFrequency"}, + {CTYPE_INT, &xs_cfg.audioBitsPerSample, "audioBitsPerSample"}, + {CTYPE_INT, &xs_cfg.audioChannels, "audioChannels"}, + {CTYPE_INT, &xs_cfg.audioFrequency, "audioFrequency"}, {CTYPE_BOOL, &xs_cfg.mos8580, "mos8580"}, {CTYPE_BOOL, &xs_cfg.emulateFilters, "emulateFilters"}, @@ -83,12 +84,12 @@ t_xs_wid_item xs_widtable[] = { -{ WTYPE_BGROUP, CTYPE_INT, "cfg_res_16bit", &xs_cfg.fmtBitsPerSample, XS_RES_16BIT }, -{ WTYPE_BGROUP, CTYPE_INT, "cfg_res_8bit", &xs_cfg.fmtBitsPerSample, XS_RES_8BIT }, -{ WTYPE_BGROUP, CTYPE_INT, "cfg_chn_mono", &xs_cfg.fmtChannels, XS_CHN_MONO }, -{ WTYPE_BGROUP, CTYPE_INT, "cfg_chn_stereo", &xs_cfg.fmtChannels, XS_CHN_STEREO }, -{ WTYPE_BGROUP, CTYPE_INT, "cfg_chn_autopan", &xs_cfg.fmtChannels, XS_CHN_AUTOPAN }, -{ WTYPE_SPIN, CTYPE_INT, "cfg_samplerate", &xs_cfg.fmtFrequency, 0 }, +{ WTYPE_BGROUP, CTYPE_INT, "cfg_res_16bit", &xs_cfg.audioBitsPerSample, XS_RES_16BIT }, +{ WTYPE_BGROUP, CTYPE_INT, "cfg_res_8bit", &xs_cfg.audioBitsPerSample, XS_RES_8BIT }, +{ WTYPE_BGROUP, CTYPE_INT, "cfg_chn_mono", &xs_cfg.audioChannels, XS_CHN_MONO }, +{ WTYPE_BGROUP, CTYPE_INT, "cfg_chn_stereo", &xs_cfg.audioChannels, XS_CHN_STEREO }, +{ WTYPE_BGROUP, CTYPE_INT, "cfg_chn_autopan", &xs_cfg.audioChannels, XS_CHN_AUTOPAN }, +{ WTYPE_SPIN, CTYPE_INT, "cfg_samplerate", &xs_cfg.audioFrequency, 0 }, { WTYPE_BUTTON, CTYPE_BOOL, "cfg_oversample", &xs_cfg.oversampleEnable, 0 }, { WTYPE_SPIN, CTYPE_INT, "cfg_oversample_factor",&xs_cfg.oversampleFactor, 0 }, { WTYPE_BGROUP, CTYPE_INT, "cfg_overfilter_average",&xs_cfg.oversampleFilter, XS_FILTER_AVERAGE }, @@ -166,9 +167,9 @@ XSDEBUG("initializing configuration ...\n"); /* Pre-initialize configuration structure */ - xs_cfg.fmtBitsPerSample = XS_RES_16BIT; - xs_cfg.fmtChannels = XS_CHN_MONO; - xs_cfg.fmtFrequency = 44100; + xs_cfg.audioBitsPerSample = XS_RES_16BIT; + xs_cfg.audioChannels = XS_CHN_MONO; + xs_cfg.audioFrequency = 44100; xs_cfg.mos8580 = FALSE; xs_cfg.emulateFilters = TRUE; @@ -531,6 +532,45 @@ } +/* + * HVSC location selector response-functions + */ +void xs_cfg_hvsc_browse(GtkButton *button, gpointer user_data) +{ + if (xs_hvsc_pathselector != NULL) + { + gdk_window_raise(xs_hvsc_pathselector->window); + return; + } + + xs_hvsc_pathselector = create_xs_stilfileselector(); + gtk_widget_show(xs_hvsc_pathselector); +} + + +void xs_cfg_hvsc_fs_ok(void) +{ + /* Selection was accepted! */ + gtk_entry_set_text(GTK_ENTRY(LUW("cfg_hvsc_path")), + gtk_file_selection_get_filename(GTK_FILE_SELECTION(xs_hvsc_pathselector))); + + /* Close file selector window */ + gtk_widget_destroy(xs_hvsc_pathselector); + xs_hvsc_pathselector = NULL; +} + + +void xs_cfg_hvsc_fs_cancel(void) +{ + /* Close file selector window */ + gtk_widget_destroy(xs_hvsc_pathselector); + xs_hvsc_pathselector = NULL; +} + + +/* + * Selection toggle handlers + */ void xs_cfg_emu_filters_toggled(GtkToggleButton *togglebutton, gpointer user_data) { }