types->setAlignment( Qt::AlignHCenter );
QHBoxLayout *types_l = new QHBoxLayout(0);
types_l->setSpacing( 3 ); types_l->setMargin( 3 );
- small = new QRadioButton( "Basic", types ); types_l->addWidget( small );
- all = new QRadioButton( "All", types ); types_l->addWidget( all );
+ small = new QRadioButton( qtr("Basic"), types );
+ types_l->addWidget( small );
+ all = new QRadioButton( qtr("All"), types ); types_l->addWidget( all );
types->setLayout( types_l );
small->setChecked( true );
}
void PrefsDialog::save()
+{
+ apply();
+ hide();
+}
+
+void PrefsDialog::apply()
{
if( small->isChecked() && simple_tree )
{
else if( all->isChecked() && advanced_tree )
advanced_tree->applyAll();
config_SaveConfigFile( p_intf, NULL );
- hide();
+
+ /* Delete the other panel in order to force its reload after clicking
+ on apply - UGLY but will work for now. */
+ if( simple_panel && simple_panel->isVisible() && advanced_panel )
+ {
+ delete advanced_panel;
+ advanced_panel = NULL;
+ }
+ if( advanced_panel && advanced_panel->isVisible() && simple_panel )
+ {
+ delete simple_panel;
+ simple_panel = NULL;
+ }
}
void PrefsDialog::cancel()