Commit a7963bfa authored by Rémi Denis-Courmont's avatar Rémi Denis-Courmont

Qt4: use config_GetPszChoices() for module items

parent 2ef7e0e7
...@@ -81,10 +81,10 @@ ConfigControl *ConfigControl::createControl( vlc_object_t *p_this, ...@@ -81,10 +81,10 @@ ConfigControl *ConfigControl::createControl( vlc_object_t *p_this,
switch( p_item->i_type ) switch( p_item->i_type )
{ {
case CONFIG_ITEM_MODULE: case CONFIG_ITEM_MODULE:
p_control = new ModuleConfigControl( p_this, p_item, parent, false ); p_control = new StringListConfigControl( p_this, p_item, parent );
break; break;
case CONFIG_ITEM_MODULE_CAT: 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; break;
case CONFIG_ITEM_MODULE_LIST: case CONFIG_ITEM_MODULE_LIST:
p_control = new ModuleListConfigControl( p_this, p_item, parent, false ); p_control = new ModuleListConfigControl( p_this, p_item, parent, false );
...@@ -509,13 +509,13 @@ void setfillVLCConfigCombo( const char *configname, intf_thread_t *p_intf, ...@@ -509,13 +509,13 @@ void setfillVLCConfigCombo( const char *configname, intf_thread_t *p_intf,
/********* Module **********/ /********* Module **********/
ModuleConfigControl::ModuleConfigControl( vlc_object_t *_p_this, 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 ) VStringConfigControl( _p_this, _p_item )
{ {
label = new QLabel( qtr(p_item->psz_text), p ); label = new QLabel( qtr(p_item->psz_text), p );
combo = new QComboBox( p ); combo = new QComboBox( p );
combo->setMinimumWidth( MINWIDTH_BOX ); combo->setMinimumWidth( MINWIDTH_BOX );
finish( bycat ); finish( );
} }
void ModuleConfigControl::fillGrid( QGridLayout *l, int line ) void ModuleConfigControl::fillGrid( QGridLayout *l, int line )
...@@ -525,15 +525,15 @@ 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, ModuleConfigControl::ModuleConfigControl( vlc_object_t *_p_this,
module_config_t *_p_item, QLabel *_label, QComboBox *_combo, module_config_t *_p_item, QLabel *_label, QComboBox *_combo )
bool bycat ) : VStringConfigControl( _p_this, _p_item ) : VStringConfigControl( _p_this, _p_item )
{ {
combo = _combo; combo = _combo;
label = _label; label = _label;
finish( bycat ); finish( );
} }
void ModuleConfigControl::finish( bool bycat ) void ModuleConfigControl::finish( )
{ {
combo->setEditable( false ); combo->setEditable( false );
...@@ -545,36 +545,25 @@ void ModuleConfigControl::finish( bool bycat ) ...@@ -545,36 +545,25 @@ void ModuleConfigControl::finish( bool bycat )
{ {
module_t *p_parser = p_list[i]; 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; unsigned confsize;
module_config_t *p_config; module_config_t *p_config;
p_config = module_config_get (p_parser, &confsize); p_config = module_config_get (p_parser, &confsize);
for (size_t i = 0; i < confsize; i++) 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 ) )
{ {
combo->addItem( qtr(module_GetLongName( p_parser ) ), /* Hack: required subcategory is stored in i_min */
QVariant( module_get_object( p_parser ) ) ); 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, if( p_item->value.psz && !strcmp( p_item->value.psz,
module_get_object( p_parser ) ) ) module_get_object( p_parser ) ) )
combo->setCurrentIndex( combo->count() - 1 ); combo->setCurrentIndex( combo->count() - 1 );
} }
module_config_free (p_config);
} }
module_list_free( p_list ); module_list_free( p_list );
......
...@@ -386,9 +386,9 @@ protected: ...@@ -386,9 +386,9 @@ protected:
class ModuleConfigControl : public VStringConfigControl class ModuleConfigControl : public VStringConfigControl
{ {
public: 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 *, ModuleConfigControl( vlc_object_t *, module_config_t *, QLabel *,
QComboBox*, bool ); QComboBox* );
virtual QString getValue() const; virtual QString getValue() const;
protected: protected:
virtual void changeVisibility( bool b ) virtual void changeVisibility( bool b )
...@@ -398,7 +398,7 @@ protected: ...@@ -398,7 +398,7 @@ protected:
} }
virtual void fillGrid( QGridLayout*, int ); virtual void fillGrid( QGridLayout*, int );
private: private:
void finish( bool ); void finish( );
QLabel *label; QLabel *label;
QComboBox *combo; QComboBox *combo;
}; };
......
...@@ -221,7 +221,7 @@ SPrefsPanel::SPrefsPanel( intf_thread_t *_p_intf, QWidget *_parent, ...@@ -221,7 +221,7 @@ SPrefsPanel::SPrefsPanel( intf_thread_t *_p_intf, QWidget *_parent,
CONFIG_BOOL( "overlay", overlay ); CONFIG_BOOL( "overlay", overlay );
CONFIG_BOOL( "video-on-top", alwaysOnTop ); CONFIG_BOOL( "video-on-top", alwaysOnTop );
CONFIG_BOOL( "video-deco", windowDecorations ); CONFIG_BOOL( "video-deco", windowDecorations );
CONFIG_GENERIC( "vout", Module, ui.voutLabel, outputModule ); CONFIG_GENERIC( "vout", StringList, ui.voutLabel, outputModule );
#ifdef WIN32 #ifdef WIN32
CONFIG_GENERIC( "directx-device", StringList, ui.dxDeviceLabel, CONFIG_GENERIC( "directx-device", StringList, ui.dxDeviceLabel,
...@@ -350,12 +350,12 @@ SPrefsPanel::SPrefsPanel( intf_thread_t *_p_intf, QWidget *_parent, ...@@ -350,12 +350,12 @@ SPrefsPanel::SPrefsPanel( intf_thread_t *_p_intf, QWidget *_parent,
volNormSpin ); volNormSpin );
CONFIG_GENERIC( "audio-replay-gain-mode", StringList, ui.replayLabel, CONFIG_GENERIC( "audio-replay-gain-mode", StringList, ui.replayLabel,
replayCombo ); replayCombo );
CONFIG_GENERIC( "audio-visual" , Module , ui.visuLabel, CONFIG_GENERIC( "audio-visual" , StringList, ui.visuLabel,
visualisation); visualisation);
CONFIG_BOOL( "audio-time-stretch", autoscaleBox ); CONFIG_BOOL( "audio-time-stretch", autoscaleBox );
/* Audio Output Specifics */ /* Audio Output Specifics */
CONFIG_GENERIC( "aout", Module, ui.outputLabel, outputModule ); CONFIG_GENERIC( "aout", StringList, ui.outputLabel, outputModule );
CONNECT( ui.outputModule, currentIndexChanged( int ), CONNECT( ui.outputModule, currentIndexChanged( int ),
this, updateAudioOptions( int ) ); this, updateAudioOptions( int ) );
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment