From 17b37e02a986c05b5a1af16f2852061b088a68eb Mon Sep 17 00:00:00 2001 From: Tres Finocchiaro Date: Sat, 13 May 2017 23:15:10 -0400 Subject: [PATCH] Provide support for fallback config values (#3551) Provide support for fallback config values Makes autosave and some other values checked by default. Supersedes #3541 --- include/ConfigManager.h | 3 +++ src/core/ConfigManager.cpp | 10 ++++++++++ src/gui/SetupDialog.cpp | 6 +++--- 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/include/ConfigManager.h b/include/ConfigManager.h index c5ef45b34..4c0a73e05 100644 --- a/include/ConfigManager.h +++ b/include/ConfigManager.h @@ -217,6 +217,9 @@ public: const QString & value( const QString & cls, const QString & attribute ) const; + const QString & value( const QString & cls, + const QString & attribute, + const QString & defaultVal ) const; void setValue( const QString & cls, const QString & attribute, const QString & value ); void deleteValue( const QString & cls, const QString & attribute); diff --git a/src/core/ConfigManager.cpp b/src/core/ConfigManager.cpp index 13c6d9a85..c9cf77357 100644 --- a/src/core/ConfigManager.cpp +++ b/src/core/ConfigManager.cpp @@ -318,6 +318,16 @@ const QString & ConfigManager::value( const QString & cls, +const QString & ConfigManager::value( const QString & cls, + const QString & attribute, + const QString & defaultVal ) const +{ + const QString & val = value( cls, attribute ); + return val.isEmpty() ? defaultVal : val; +} + + + void ConfigManager::setValue( const QString & cls, const QString & attribute, diff --git a/src/gui/SetupDialog.cpp b/src/gui/SetupDialog.cpp index f2fb66cd3..9f135784e 100644 --- a/src/gui/SetupDialog.cpp +++ b/src/gui/SetupDialog.cpp @@ -119,8 +119,8 @@ SetupDialog::SetupDialog( ConfigTabs _tab_to_open ) : #endif m_backgroundArtwork( QDir::toNativeSeparators( ConfigManager::inst()->backgroundArtwork() ) ), m_smoothScroll( ConfigManager::inst()->value( "ui", "smoothscroll" ).toInt() ), - m_enableAutoSave( ConfigManager::inst()->value( "ui", "enableautosave" ).toInt() ), - m_enableRunningAutoSave( ConfigManager::inst()->value( "ui", "enablerunningautosave" ).toInt() ), + m_enableAutoSave( ConfigManager::inst()->value( "ui", "enableautosave", "1" ).toInt() ), + m_enableRunningAutoSave( ConfigManager::inst()->value( "ui", "enablerunningautosave", "1" ).toInt() ), m_saveInterval( ConfigManager::inst()->value( "ui", "saveinterval" ).toInt() < 1 ? MainWindow::DEFAULT_SAVE_INTERVAL_MINUTES : ConfigManager::inst()->value( "ui", "saveinterval" ).toInt() ), @@ -131,7 +131,7 @@ SetupDialog::SetupDialog( ConfigTabs _tab_to_open ) : m_syncVSTPlugins( ConfigManager::inst()->value( "ui", "syncvstplugins" ).toInt() ), m_animateAFP(ConfigManager::inst()->value( "ui", - "animateafp").toInt() ), + "animateafp", "1" ).toInt() ), m_printNoteLabels(ConfigManager::inst()->value( "ui", "printnotelabels").toInt() ), m_displayWaveform(ConfigManager::inst()->value( "ui",