From a7963bfafe65611b995b0718448e0b6bf43beca7 Mon Sep 17 00:00:00 2001 From: =?utf8?q?R=C3=A9mi=20Denis-Courmont?= Date: Fri, 12 Oct 2012 19:28:50 +0300 Subject: [PATCH] Qt4: use config_GetPszChoices() for module items --- .../qt4/components/preferences_widgets.cpp | 51 ++++++++----------- .../qt4/components/preferences_widgets.hpp | 6 +-- .../gui/qt4/components/simple_preferences.cpp | 6 +-- 3 files changed, 26 insertions(+), 37 deletions(-) diff --git a/modules/gui/qt4/components/preferences_widgets.cpp b/modules/gui/qt4/components/preferences_widgets.cpp index a39e07a9ef..a10cade8da 100644 --- a/modules/gui/qt4/components/preferences_widgets.cpp +++ b/modules/gui/qt4/components/preferences_widgets.cpp @@ -81,10 +81,10 @@ ConfigControl *ConfigControl::createControl( vlc_object_t *p_this, switch( p_item->i_type ) { case CONFIG_ITEM_MODULE: - p_control = new ModuleConfigControl( p_this, p_item, parent, false ); + p_control = new StringListConfigControl( p_this, p_item, parent ); break; case CONFIG_ITEM_MODULE_CAT: - p_control = new ModuleConfigControl( p_this, p_item, parent, true ); + p_control = new ModuleConfigControl( p_this, p_item, parent ); break; case CONFIG_ITEM_MODULE_LIST: p_control = new ModuleListConfigControl( p_this, p_item, parent, false ); @@ -509,13 +509,13 @@ void setfillVLCConfigCombo( const char *configname, intf_thread_t *p_intf, /********* Module **********/ ModuleConfigControl::ModuleConfigControl( vlc_object_t *_p_this, - module_config_t *_p_item, QWidget *p, bool bycat ) : + module_config_t *_p_item, QWidget *p ) : VStringConfigControl( _p_this, _p_item ) { label = new QLabel( qtr(p_item->psz_text), p ); combo = new QComboBox( p ); combo->setMinimumWidth( MINWIDTH_BOX ); - finish( bycat ); + finish( ); } void ModuleConfigControl::fillGrid( QGridLayout *l, int line ) @@ -525,15 +525,15 @@ void ModuleConfigControl::fillGrid( QGridLayout *l, int line ) } ModuleConfigControl::ModuleConfigControl( vlc_object_t *_p_this, - module_config_t *_p_item, QLabel *_label, QComboBox *_combo, - bool bycat ) : VStringConfigControl( _p_this, _p_item ) + module_config_t *_p_item, QLabel *_label, QComboBox *_combo ) + : VStringConfigControl( _p_this, _p_item ) { combo = _combo; label = _label; - finish( bycat ); + finish( ); } -void ModuleConfigControl::finish( bool bycat ) +void ModuleConfigControl::finish( ) { combo->setEditable( false ); @@ -545,36 +545,25 @@ void ModuleConfigControl::finish( bool bycat ) { module_t *p_parser = p_list[i]; - if( bycat ) - { - if( !strcmp( module_get_object( p_parser ), "main" ) ) continue; + if( !strcmp( module_get_object( p_parser ), "main" ) ) continue; - unsigned confsize; - module_config_t *p_config; + unsigned confsize; + module_config_t *p_config; - p_config = module_config_get (p_parser, &confsize); - for (size_t i = 0; i < confsize; i++) - { - /* Hack: required subcategory is stored in i_min */ - const module_config_t *p_cfg = p_config + i; - if( p_cfg->i_type == CONFIG_SUBCATEGORY && - p_cfg->value.i == p_item->min.i ) - combo->addItem( qtr( module_GetLongName( p_parser )), - QVariant( module_get_object( p_parser ) ) ); - if( p_item->value.psz && !strcmp( p_item->value.psz, - module_get_object( p_parser ) ) ) - combo->setCurrentIndex( combo->count() - 1 ); - } - module_config_free (p_config); - } - else if( module_provides( p_parser, p_item->psz_type ) ) + p_config = module_config_get (p_parser, &confsize); + for (size_t i = 0; i < confsize; i++) { - combo->addItem( qtr(module_GetLongName( p_parser ) ), - QVariant( module_get_object( p_parser ) ) ); + /* Hack: required subcategory is stored in i_min */ + const module_config_t *p_cfg = p_config + i; + if( p_cfg->i_type == CONFIG_SUBCATEGORY && + p_cfg->value.i == p_item->min.i ) + combo->addItem( qtr( module_GetLongName( p_parser )), + QVariant( module_get_object( p_parser ) ) ); if( p_item->value.psz && !strcmp( p_item->value.psz, module_get_object( p_parser ) ) ) combo->setCurrentIndex( combo->count() - 1 ); } + module_config_free (p_config); } module_list_free( p_list ); diff --git a/modules/gui/qt4/components/preferences_widgets.hpp b/modules/gui/qt4/components/preferences_widgets.hpp index ba67a770eb..17ec33575b 100644 --- a/modules/gui/qt4/components/preferences_widgets.hpp +++ b/modules/gui/qt4/components/preferences_widgets.hpp @@ -386,9 +386,9 @@ protected: class ModuleConfigControl : public VStringConfigControl { public: - ModuleConfigControl( vlc_object_t *, module_config_t *, QWidget *, bool ); + ModuleConfigControl( vlc_object_t *, module_config_t *, QWidget * ); ModuleConfigControl( vlc_object_t *, module_config_t *, QLabel *, - QComboBox*, bool ); + QComboBox* ); virtual QString getValue() const; protected: virtual void changeVisibility( bool b ) @@ -398,7 +398,7 @@ protected: } virtual void fillGrid( QGridLayout*, int ); private: - void finish( bool ); + void finish( ); QLabel *label; QComboBox *combo; }; diff --git a/modules/gui/qt4/components/simple_preferences.cpp b/modules/gui/qt4/components/simple_preferences.cpp index a909043d25..759ba54f7e 100644 --- a/modules/gui/qt4/components/simple_preferences.cpp +++ b/modules/gui/qt4/components/simple_preferences.cpp @@ -221,7 +221,7 @@ SPrefsPanel::SPrefsPanel( intf_thread_t *_p_intf, QWidget *_parent, CONFIG_BOOL( "overlay", overlay ); CONFIG_BOOL( "video-on-top", alwaysOnTop ); CONFIG_BOOL( "video-deco", windowDecorations ); - CONFIG_GENERIC( "vout", Module, ui.voutLabel, outputModule ); + CONFIG_GENERIC( "vout", StringList, ui.voutLabel, outputModule ); #ifdef WIN32 CONFIG_GENERIC( "directx-device", StringList, ui.dxDeviceLabel, @@ -350,12 +350,12 @@ SPrefsPanel::SPrefsPanel( intf_thread_t *_p_intf, QWidget *_parent, volNormSpin ); CONFIG_GENERIC( "audio-replay-gain-mode", StringList, ui.replayLabel, replayCombo ); - CONFIG_GENERIC( "audio-visual" , Module , ui.visuLabel, + CONFIG_GENERIC( "audio-visual" , StringList, ui.visuLabel, visualisation); CONFIG_BOOL( "audio-time-stretch", autoscaleBox ); /* Audio Output Specifics */ - CONFIG_GENERIC( "aout", Module, ui.outputLabel, outputModule ); + CONFIG_GENERIC( "aout", StringList, ui.outputLabel, outputModule ); CONNECT( ui.outputModule, currentIndexChanged( int ), this, updateAudioOptions( int ) ); -- 2.39.2