From a3840963e1b650baf89489ed0a92f34385a473b1 Mon Sep 17 00:00:00 2001 From: Louis-Bertrand Varin Date: Sat, 18 Mar 2017 14:00:31 -0400 Subject: [PATCH] Checking config access errors in settings. --- src/gui/SettingsWidget.cpp | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/src/gui/SettingsWidget.cpp b/src/gui/SettingsWidget.cpp index ff4c124e..caf9919c 100644 --- a/src/gui/SettingsWidget.cpp +++ b/src/gui/SettingsWidget.cpp @@ -99,6 +99,12 @@ void SettingsWidget::addSettingsPage(ISettingsPage* page) void SettingsWidget::loadSettings() { + + if (config()->hasAccessError()) { + showMessage( + tr("Access error for config file ") + config()->getFileName(), MessageWidget::Error); + } + m_generalUi->rememberLastDatabasesCheckBox->setChecked(config()->get("RememberLastDatabases").toBool()); m_generalUi->rememberLastKeyFilesCheckBox->setChecked(config()->get("RememberLastKeyFiles").toBool()); m_generalUi->openPreviousDatabasesOnStartupCheckBox->setChecked( @@ -154,6 +160,15 @@ void SettingsWidget::loadSettings() void SettingsWidget::saveSettings() { + + if (config()->hasAccessError()) { + showMessage( + tr("Access error for config file ") + config()->getFileName(), MessageWidget::Error); + // We prevent closing the settings page if we could not write to + // the config file. + return; + } + config()->set("RememberLastDatabases", m_generalUi->rememberLastDatabasesCheckBox->isChecked()); config()->set("RememberLastKeyFiles", m_generalUi->rememberLastKeyFilesCheckBox->isChecked()); config()->set("OpenPreviousDatabasesOnStartup",