static void update_from_config (void * unused1, void * unused2) { button_set_active (equalizerwin_on, aud_get_bool (NULL, "equalizer_active")); eq_slider_set_val (equalizerwin_preamp, aud_get_double (NULL, "equalizer_preamp")); gdouble bands[AUD_EQUALIZER_NBANDS]; aud_eq_get_bands (bands); for (gint i = 0; i < AUD_EQUALIZER_NBANDS; i ++) eq_slider_set_val (equalizerwin_bands[i], bands[i]); eq_graph_update (equalizerwin_graph); }
static void update_sliders (void * unused, GtkWidget * window) { GtkWidget * preamp = g_object_get_data ((GObject *) window, "preamp"); set_slider (preamp, aud_get_double (NULL, "equalizer_preamp")); double values[AUD_EQUALIZER_NBANDS]; aud_eq_get_bands (values); for (int i = 0; i < AUD_EQUALIZER_NBANDS; i ++) { SPRINTF (slider_id, "slider%d", i); GtkWidget * slider = g_object_get_data ((GObject *) window, slider_id); set_slider (slider, values[i]); } }
static void equalizerwin_create_widgets(void) { equalizerwin_on = button_new_toggle (25, 12, 10, 119, 128, 119, 69, 119, 187, 119, SKIN_EQMAIN, SKIN_EQMAIN); window_put_widget (equalizerwin, FALSE, equalizerwin_on, 14, 18); button_set_active (equalizerwin_on, aud_get_bool (NULL, "equalizer_active")); button_on_release (equalizerwin_on, eq_on_cb); equalizerwin_auto = button_new_toggle (33, 12, 35, 119, 153, 119, 94, 119, 212, 119, SKIN_EQMAIN, SKIN_EQMAIN); window_put_widget (equalizerwin, FALSE, equalizerwin_auto, 39, 18); button_set_active (equalizerwin_auto, aud_get_bool (NULL, "equalizer_autoload")); button_on_release (equalizerwin_auto, eq_auto_cb); equalizerwin_presets = button_new (44, 12, 224, 164, 224, 176, SKIN_EQMAIN, SKIN_EQMAIN); window_put_widget (equalizerwin, FALSE, equalizerwin_presets, 217, 18); button_on_release (equalizerwin_presets, eq_presets_cb); equalizerwin_close = button_new (9, 9, 0, 116, 0, 125, SKIN_EQMAIN, SKIN_EQMAIN); window_put_widget (equalizerwin, FALSE, equalizerwin_close, 264, 3); button_on_release (equalizerwin_close, (ButtonCB) equalizerwin_close_cb); equalizerwin_shade = button_new (9, 9, 254, 137, 1, 38, SKIN_EQMAIN, SKIN_EQ_EX); window_put_widget (equalizerwin, FALSE, equalizerwin_shade, 254, 3); button_on_release (equalizerwin_shade, (ButtonCB) equalizerwin_shade_toggle); equalizerwin_shaded_close = button_new (9, 9, 11, 38, 11, 47, SKIN_EQ_EX, SKIN_EQ_EX); window_put_widget (equalizerwin, TRUE, equalizerwin_shaded_close, 264, 3); button_on_release (equalizerwin_shaded_close, (ButtonCB) equalizerwin_close_cb); equalizerwin_shaded_shade = button_new (9, 9, 254, 3, 1, 47, SKIN_EQ_EX, SKIN_EQ_EX); window_put_widget (equalizerwin, TRUE, equalizerwin_shaded_shade, 254, 3); button_on_release (equalizerwin_shaded_shade, (ButtonCB) equalizerwin_shade_toggle); equalizerwin_graph = eq_graph_new (); window_put_widget (equalizerwin, FALSE, equalizerwin_graph, 86, 17); equalizerwin_preamp = eq_slider_new (_("Preamp")); window_put_widget (equalizerwin, FALSE, equalizerwin_preamp, 21, 38); eq_slider_set_val (equalizerwin_preamp, aud_get_double (NULL, "equalizer_preamp")); const gchar * const bandnames[AUD_EQUALIZER_NBANDS] = {N_("31 Hz"), N_("63 Hz"), N_("125 Hz"), N_("250 Hz"), N_("500 Hz"), N_("1 kHz"), N_("2 kHz"), N_("4 kHz"), N_("8 kHz"), N_("16 kHz") }; gdouble bands[AUD_EQUALIZER_NBANDS]; aud_eq_get_bands (bands); for (gint i = 0; i < AUD_EQUALIZER_NBANDS; i ++) { equalizerwin_bands[i] = eq_slider_new (_(bandnames[i])); window_put_widget (equalizerwin, FALSE, equalizerwin_bands[i], 78 + 18 * i, 38); eq_slider_set_val (equalizerwin_bands[i], bands[i]); } equalizerwin_volume = hslider_new (0, 94, SKIN_EQ_EX, 97, 8, 61, 4, 3, 7, 1, 30, 1, 30); window_put_widget (equalizerwin, TRUE, equalizerwin_volume, 61, 4); hslider_on_motion (equalizerwin_volume, eqwin_volume_motion_cb); hslider_on_release (equalizerwin_volume, eqwin_volume_release_cb); equalizerwin_balance = hslider_new (0, 39, SKIN_EQ_EX, 42, 8, 164, 4, 3, 7, 11, 30, 11, 30); window_put_widget (equalizerwin, TRUE, equalizerwin_balance, 164, 4); hslider_on_motion (equalizerwin_balance, eqwin_balance_motion_cb); hslider_on_release (equalizerwin_balance, eqwin_balance_release_cb); }