]> git.sesse.net Git - vlc/blobdiff - modules/gui/qt4/dialogs/preferences.cpp
Removes trailing spaces. Removes tabs.
[vlc] / modules / gui / qt4 / dialogs / preferences.cpp
index b46a0a83bda84819fe659e0e27616cf81337cba0..204ad43aae50c2f48f80acc1cf60e26c12447886 100644 (file)
@@ -46,7 +46,7 @@ PrefsDialog::PrefsDialog( intf_thread_t *_p_intf ) : QVLCFrame( _p_intf )
 {
     QGridLayout *main_layout = new QGridLayout( this );
     setWindowTitle( qtr( "Preferences" ) );
-    resize( 700, 550 );
+    resize( 750, 550 );
 
     /* Create Panels */
     tree_panel = new QWidget( 0 );
@@ -61,8 +61,9 @@ PrefsDialog::PrefsDialog( intf_thread_t *_p_intf ) : QVLCFrame( _p_intf )
     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 );
 
@@ -100,7 +101,14 @@ PrefsDialog::PrefsDialog( intf_thread_t *_p_intf ) : QVLCFrame( _p_intf )
     tree_panel_l->setMargin( 1 );
     main_panel_l->setMargin( 3 );
 
-    setSmall();
+    if( config_GetInt( p_intf, "qt-advanced-pref") == 1 )
+    {
+        setAll();
+    }
+    else
+    {
+        setSmall();
+    }
 
     BUTTONACT( save, save() );
     BUTTONACT( cancel, cancel() );
@@ -137,6 +145,7 @@ void PrefsDialog::setAll()
     if( !advanced_panel )
          advanced_panel = new PrefsPanel( main_panel );
     main_panel_l->addWidget( advanced_panel );
+    all->setChecked( true );
     advanced_panel->show();
 }
 
@@ -165,6 +174,7 @@ void PrefsDialog::setSmall()
     if( !simple_panel )
         simple_panel = new SPrefsPanel( p_intf, main_panel, SPrefsDefaultCat );
     main_panel_l->addWidget( simple_panel );
+    small->setChecked( true );
     simple_panel->show();
 }
 
@@ -234,6 +244,12 @@ void PrefsDialog::showModulePrefs( char *psz_module )
 }
 
 void PrefsDialog::save()
+{
+    apply();
+    hide();
+}
+
+void PrefsDialog::apply()
 {
     if( small->isChecked() && simple_tree )
     {
@@ -243,7 +259,19 @@ void PrefsDialog::save()
     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()