From: Jean-Baptiste Kempf Date: Sun, 9 Sep 2007 17:37:27 +0000 (+0000) Subject: Qt4 - Extended Panels: add callback on audio-presets to fix the issue when the audio... X-Git-Tag: 0.9.0-test0~5727 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=35c9f06f5bd930debd8078eba2096c055d59cb7a;p=vlc Qt4 - Extended Panels: add callback on audio-presets to fix the issue when the audio menu does not match with extended settings. --- diff --git a/modules/gui/qt4/components/extended_panels.cpp b/modules/gui/qt4/components/extended_panels.cpp index 2c2ac60e3a..fa5071b073 100644 --- a/modules/gui/qt4/components/extended_panels.cpp +++ b/modules/gui/qt4/components/extended_panels.cpp @@ -560,8 +560,8 @@ void ExtVideo::gotoConf( QObject* src ) static const QString band_frequencies[] = { - " 60Hz ", " 170 Hz " , " 310 Hz ", " 600 Hz ", " 1 kHz ", - " 3 kHz " , " 6 kHz ", " 12 kHz ", " 14 kHz ", " 16 kHz " + " 60 Hz ", " 170 Hz ", " 310 Hz ", " 600 Hz ", " 1 kHz ", + " 3 kHz ", " 6 kHz ", " 12 kHz ", " 14 kHz ", " 16 kHz " }; Equalizer::Equalizer( intf_thread_t *_p_intf, QWidget *_parent ) : @@ -571,6 +571,7 @@ Equalizer::Equalizer( intf_thread_t *_p_intf, QWidget *_parent ) : smallFont.setPointSize( smallFont.pointSize() - 3 ); ui.setupUi( this ); + presetsComboBox = ui.presetsCombo; ui.preampLabel->setFont( smallFont ); ui.preampSlider->setMaximum( 400 ); @@ -772,19 +773,29 @@ void Equalizer::setPreset( int preset ) setValues( psz_values, eqz_preset_10b[preset]->f_preamp ); } +static int PresetCallback( vlc_object_t *p_this, char const *psz_cmd, + vlc_value_t oldval, vlc_value_t newval, void *p_data ) +{ + char *psz_preset = newval.psz_string; + Equalizer *eq = (Equalizer *)p_data; + eq->presetsComboBox->setCurrentIndex( eq->presetsComboBox->findText( qfu( psz_preset) ) ); + return VLC_SUCCESS; +} + void Equalizer::delCallbacks( aout_instance_t *p_aout ) { -// var_DelCallback( p_aout, "equalizer-bands", EqzCallback, this ); -// var_DelCallback( p_aout, "equalizer-preamp", EqzCallback, this ); + //var_DelCallback( p_aout, "equalizer-bands", EqzCallback, this ); + //var_DelCallback( p_aout, "equalizer-preamp", EqzCallback, this ); + var_DelCallback( p_aout, "equalizer-preset", PresetCallback, this ); } void Equalizer::addCallbacks( aout_instance_t *p_aout ) { -// var_AddCallback( p_aout, "equalizer-bands", EqzCallback, this ); -// var_AddCallback( p_aout, "equalizer-preamp", EqzCallback, this ); + //var_AddCallback( p_aout, "equalizer-bands", EqzCallback, this ); + //var_AddCallback( p_aout, "equalizer-preamp", EqzCallback, this ); + var_AddCallback( p_aout, "equalizer-preset", PresetCallback, this ); } - /********************************************************************** * Spatializer **********************************************************************/ diff --git a/modules/gui/qt4/components/extended_panels.hpp b/modules/gui/qt4/components/extended_panels.hpp index ec382969e7..a7e097849f 100644 --- a/modules/gui/qt4/components/extended_panels.hpp +++ b/modules/gui/qt4/components/extended_panels.hpp @@ -61,6 +61,7 @@ class Equalizer: public QWidget public: Equalizer( intf_thread_t *, QWidget * ); virtual ~Equalizer(); + QComboBox *presetsComboBox; private: Ui::EqualizerWidget ui;