return formatted;
}
-ConfigControl *ConfigControl::createControl( vlc_object_t *p_this,
- module_config_t *p_item,
- QWidget *parent )
-{
- int i = 0;
- return createControl( p_this, p_item, parent, NULL, i );
-}
-
ConfigControl *ConfigControl::createControl( vlc_object_t *p_this,
module_config_t *p_item,
QWidget *parent,
- QGridLayout *l, int &line )
+ QGridLayout *l, int line )
{
ConfigControl *p_control = NULL;
l, line, false );
else
p_control = new StringListConfigControl( p_this, p_item,
- parent, false, l, line );
+ parent, l, line );
break;
case CONFIG_ITEM_PASSWORD:
if( !p_item->i_list )
l, line, true );
else
p_control = new StringListConfigControl( p_this, p_item,
- parent, true, l, line );
+ parent, l, line );
break;
case CONFIG_ITEM_INTEGER:
if( p_item->i_list )
return p_control;
}
-void ConfigControl::doApply( intf_thread_t *p_intf )
-{
- switch( getType() )
- {
- case CONFIG_ITEM_INTEGER:
- case CONFIG_ITEM_BOOL:
- {
- VIntConfigControl *vicc = qobject_cast<VIntConfigControl *>(this);
- assert( vicc );
- config_PutInt( p_intf, vicc->getName(), vicc->getValue() );
- break;
- }
- case CONFIG_ITEM_FLOAT:
- {
- VFloatConfigControl *vfcc =
- qobject_cast<VFloatConfigControl *>(this);
- assert( vfcc );
- config_PutFloat( p_intf, vfcc->getName(), vfcc->getValue() );
- break;
- }
- case CONFIG_ITEM_STRING:
- {
- VStringConfigControl *vscc =
- qobject_cast<VStringConfigControl *>(this);
- assert( vscc );
- config_PutPsz( p_intf, vscc->getName(), qtu( vscc->getValue() ) );
- break;
- }
- case CONFIG_ITEM_KEY:
- {
- KeySelectorControl *ksc = qobject_cast<KeySelectorControl *>(this);
- assert( ksc );
- ksc->doApply();
- }
- }
-}
-
/*******************************************************
* Simple widgets
*******************************************************/
* String-based controls
*************************************************************************/
+void
+VStringConfigControl::doApply()
+{
+ config_PutPsz( p_this, getName(), qtu( getValue() ) );
+}
+
/*********** String **************/
StringConfigControl::StringConfigControl( vlc_object_t *_p_this,
module_config_t *_p_item,
QWidget *_parent, QGridLayout *l,
- int &line, bool pwd ) :
+ int line, bool pwd ) :
VStringConfigControl( _p_this, _p_item, _parent )
{
label = new QLabel( qtr(p_item->psz_text) );
FileConfigControl::FileConfigControl( vlc_object_t *_p_this,
module_config_t *_p_item,
QWidget *_parent, QGridLayout *l,
- int &line ) :
+ int line ) :
VStringConfigControl( _p_this, _p_item, _parent )
{
label = new QLabel( qtr(p_item->psz_text) );
/********* String / Directory **********/
DirectoryConfigControl::DirectoryConfigControl( vlc_object_t *_p_this,
module_config_t *_p_item, QWidget *_p_widget,
- QGridLayout *_p_layout, int& _int ) :
+ QGridLayout *_p_layout, int _int ) :
FileConfigControl( _p_this, _p_item, _p_widget, _p_layout, _int )
{}
/********* String / Font **********/
FontConfigControl::FontConfigControl( vlc_object_t *_p_this,
module_config_t *_p_item, QWidget *_parent,
- QGridLayout *_p_layout, int& line) :
+ QGridLayout *_p_layout, int line) :
VStringConfigControl( _p_this, _p_item, _parent )
{
label = new QLabel( qtr(p_item->psz_text) );
/********* String / choice list **********/
StringListConfigControl::StringListConfigControl( vlc_object_t *_p_this,
- module_config_t *_p_item, QWidget *_parent, bool bycat,
- QGridLayout *l, int &line) :
+ module_config_t *_p_item, QWidget *_parent,
+ QGridLayout *l, int line) :
VStringConfigControl( _p_this, _p_item, _parent )
{
label = new QLabel( qtr(p_item->psz_text) );
module_config_t *p_module_config = config_FindConfig( p_this, p_item->psz_name );
- finish( p_module_config, bycat );
+ finish( p_module_config );
if( !l )
{
l = new QGridLayout();
if( p_module_config->b_dirty )
{
combo->clear();
- finish( p_module_config, true );
+ finish( p_module_config );
p_module_config->b_dirty = false;
}
}
StringListConfigControl::StringListConfigControl( vlc_object_t *_p_this,
module_config_t *_p_item, QLabel *_label, QComboBox *_combo,
- bool bycat ) : VStringConfigControl( _p_this, _p_item )
+ bool ) : VStringConfigControl( _p_this, _p_item )
{
combo = _combo;
label = _label;
module_config_t *p_module_config = config_FindConfig( p_this, getName() );
- finish( p_module_config, bycat );
+ finish( p_module_config );
}
-void StringListConfigControl::finish(module_config_t *p_module_config, bool bycat )
+void StringListConfigControl::finish(module_config_t *p_module_config )
{
combo->setEditable( false );
label->setBuddy( combo );
}
-QString StringListConfigControl::getValue()
+QString StringListConfigControl::getValue() const
{
return combo->itemData( combo->currentIndex() ).toString();
}
/********* Module **********/
ModuleConfigControl::ModuleConfigControl( vlc_object_t *_p_this,
module_config_t *_p_item, QWidget *_parent, bool bycat,
- QGridLayout *l, int &line) :
+ QGridLayout *l, int line) :
VStringConfigControl( _p_this, _p_item, _parent )
{
label = new QLabel( qtr(p_item->psz_text) );
label->setBuddy( combo );
}
-QString ModuleConfigControl::getValue()
+QString ModuleConfigControl::getValue() const
{
return combo->itemData( combo->currentIndex() ).toString();
}
/********* Module list **********/
ModuleListConfigControl::ModuleListConfigControl( vlc_object_t *_p_this,
module_config_t *_p_item, QWidget *_parent, bool bycat,
- QGridLayout *l, int &line) :
+ QGridLayout *l, int line) :
VStringConfigControl( _p_this, _p_item, _parent )
{
groupBox = NULL;
finish( bycat );
int boxline = 0;
- for( QVector<checkBoxListItem*>::iterator it = modules.begin();
- it != modules.end(); ++it )
- {
- layoutGroupBox->addWidget( (*it)->checkBox, boxline++, 0 );
- }
+ foreach ( checkBoxListItem *it, modules )
+ layoutGroupBox->addWidget( it->checkBox, boxline++, 0 );
layoutGroupBox->addWidget( text, boxline, 0 );
if( !l )
ModuleListConfigControl::~ModuleListConfigControl()
{
- for( QVector<checkBoxListItem*>::iterator it = modules.begin();
- it != modules.end(); ++it )
- {
- delete *it;
- }
+ qDeleteAll( modules );
+ modules.clear();
delete groupBox;
}
}
#undef CHECKBOX_LISTS
-QString ModuleListConfigControl::getValue()
+QString ModuleListConfigControl::getValue() const
{
assert( text );
return text->text();
void ModuleListConfigControl::hide()
{
- for( QVector<checkBoxListItem*>::iterator it = modules.begin();
- it != modules.end(); ++it )
- {
- (*it)->checkBox->hide();
- }
+ foreach ( checkBoxListItem *it, modules )
+ it->checkBox->hide();
groupBox->hide();
}
void ModuleListConfigControl::show()
{
- for( QVector<checkBoxListItem*>::iterator it = modules.begin();
- it != modules.end(); ++it )
- {
- (*it)->checkBox->show();
- }
+ foreach ( checkBoxListItem *it, modules )
+ it->checkBox->show();
groupBox->show();
}
text->clear();
bool first = true;
- for( QVector<checkBoxListItem*>::iterator it = modules.begin();
- it != modules.end(); ++it )
+ foreach ( checkBoxListItem *it, modules )
{
- if( (*it)->checkBox->isChecked() )
+ if( it->checkBox->isChecked() )
{
if( first )
{
- text->setText( text->text() + (*it)->psz_module );
+ text->setText( text->text() + it->psz_module );
first = false;
}
else
{
- text->setText( text->text() + ":" + (*it)->psz_module );
+ text->setText( text->text() + ":" + it->psz_module );
}
}
}
* Integer-based controls
*************************************************************************/
+void
+VIntConfigControl::doApply()
+{
+ config_PutInt( p_this, getName(), getValue() );
+}
+
/*********** Integer **************/
IntegerConfigControl::IntegerConfigControl( vlc_object_t *_p_this,
module_config_t *_p_item,
QWidget *_parent, QGridLayout *l,
- int &line ) :
+ int line ) :
VIntConfigControl( _p_this, _p_item, _parent )
{
label = new QLabel( qtr(p_item->psz_text) );
label->setBuddy( spin );
}
-int IntegerConfigControl::getValue()
+int IntegerConfigControl::getValue() const
{
return spin->value();
}
IntegerRangeConfigControl::IntegerRangeConfigControl( vlc_object_t *_p_this,
module_config_t *_p_item,
QWidget *_parent, QGridLayout *l,
- int &line ) :
+ int line ) :
IntegerConfigControl( _p_this, _p_item, _parent, l, line )
{
finish();
label->setBuddy( slider );
}
-int IntegerRangeSliderConfigControl::getValue()
+int IntegerRangeSliderConfigControl::getValue() const
{
return slider->value();
}
/********* Integer / choice list **********/
IntegerListConfigControl::IntegerListConfigControl( vlc_object_t *_p_this,
- module_config_t *_p_item, QWidget *_parent, bool bycat,
- QGridLayout *l, int &line) :
+ module_config_t *_p_item, QWidget *_parent, bool,
+ QGridLayout *l, int line) :
VIntConfigControl( _p_this, _p_item, _parent )
{
label = new QLabel( qtr(p_item->psz_text) );
module_config_t *p_module_config = config_FindConfig( p_this, p_item->psz_name );
- finish( p_module_config, bycat );
+ finish( p_module_config );
if( !l )
{
QHBoxLayout *layout = new QHBoxLayout();
}
IntegerListConfigControl::IntegerListConfigControl( vlc_object_t *_p_this,
module_config_t *_p_item, QLabel *_label, QComboBox *_combo,
- bool bycat ) : VIntConfigControl( _p_this, _p_item )
+ bool ) : VIntConfigControl( _p_this, _p_item )
{
combo = _combo;
label = _label;
module_config_t *p_module_config = config_FindConfig( p_this, getName() );
- finish( p_module_config, bycat );
+ finish( p_module_config );
}
-void IntegerListConfigControl::finish(module_config_t *p_module_config, bool bycat )
+void IntegerListConfigControl::finish(module_config_t *p_module_config )
{
combo->setEditable( false );
if( p_module_config->b_dirty )
{
combo->clear();
- finish( p_module_config, true );
+ finish( p_module_config );
p_module_config->b_dirty = false;
}
}
-int IntegerListConfigControl::getValue()
+int IntegerListConfigControl::getValue() const
{
return combo->itemData( combo->currentIndex() ).toInt();
}
BoolConfigControl::BoolConfigControl( vlc_object_t *_p_this,
module_config_t *_p_item,
QWidget *_parent, QGridLayout *l,
- int &line ) :
+ int line ) :
VIntConfigControl( _p_this, _p_item, _parent )
{
checkbox = new QCheckBox( qtr(p_item->psz_text) );
BoolConfigControl::BoolConfigControl( vlc_object_t *_p_this,
module_config_t *_p_item,
QLabel *_label,
- QAbstractButton *_checkbox,
- bool bycat ) :
+ QAbstractButton *_checkbox ) :
VIntConfigControl( _p_this, _p_item )
{
checkbox = _checkbox;
checkbox->setToolTip( formatTooltip(qtr(p_item->psz_longtext)) );
}
-int BoolConfigControl::getValue()
+int BoolConfigControl::getValue() const
{
return checkbox->isChecked();
}
* Float-based controls
*************************************************************************/
+void
+VFloatConfigControl::doApply()
+{
+ config_PutFloat( p_this, getName(), getValue() );
+}
+
/*********** Float **************/
FloatConfigControl::FloatConfigControl( vlc_object_t *_p_this,
module_config_t *_p_item,
QWidget *_parent, QGridLayout *l,
- int &line ) :
+ int line ) :
VFloatConfigControl( _p_this, _p_item, _parent )
{
label = new QLabel( qtr(p_item->psz_text) );
label->setBuddy( spin );
}
-float FloatConfigControl::getValue()
+float FloatConfigControl::getValue() const
{
return (float)spin->value();
}
FloatRangeConfigControl::FloatRangeConfigControl( vlc_object_t *_p_this,
module_config_t *_p_item,
QWidget *_parent, QGridLayout *l,
- int &line ) :
+ int line ) :
FloatConfigControl( _p_this, _p_item, _parent, l, line )
{
finish();
KeySelectorControl::KeySelectorControl( vlc_object_t *_p_this,
module_config_t *_p_item,
QWidget *_parent, QGridLayout *l,
- int &line ) :
+ int line ) :
ConfigControl( _p_this, _p_item, _parent )
{
}
}
-void KeySelectorControl::select( QTreeWidgetItem *keyItem, int column )
+void KeySelectorControl::select( QTreeWidgetItem *, int column )
{
shortcutValue->setGlobal( column == 2 );
}