bugfixes regarding preferences still checking for more. (the font issue that willem said is fixed on this series)
Tomaz On Tue, Nov 1, 2016 at 12:06 PM, Tomaz Canabrava <[email protected]> wrote: > FINALLY > this finishes the unittests - sorry for all delays. > > I'll now look for misbehaving preferences, like the one willan complained. > > Tomaz >
From aef59890d010ec6210bd4538d26ca5d64da12501 Mon Sep 17 00:00:00 2001 From: Tomaz Canabrava <[email protected]> Date: Tue, 1 Nov 2016 14:08:59 +0100 Subject: [PATCH 5/9] Fix bug where the Font setting was ignored Signed-off-by: Tomaz Canabrava <[email protected]> --- core/subsurface-qt/SettingsObjectWrapper.cpp | 1 + desktop-widgets/preferences/preferences_defaults.cpp | 2 -- 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/core/subsurface-qt/SettingsObjectWrapper.cpp b/core/subsurface-qt/SettingsObjectWrapper.cpp index 81f6237..ec5e041 100644 --- a/core/subsurface-qt/SettingsObjectWrapper.cpp +++ b/core/subsurface-qt/SettingsObjectWrapper.cpp @@ -1834,6 +1834,7 @@ void DisplaySettingsObjectWrapper::setDivelistFont(const QString& value) return; QSettings s; + s.beginGroup(group); s.setValue("divelist_font", value); if (!subsurface_ignore_font(newValue.toUtf8().constData())) { diff --git a/desktop-widgets/preferences/preferences_defaults.cpp b/desktop-widgets/preferences/preferences_defaults.cpp index 2ebbe54..60b3d3a 100644 --- a/desktop-widgets/preferences/preferences_defaults.cpp +++ b/desktop-widgets/preferences/preferences_defaults.cpp @@ -88,8 +88,6 @@ void PreferencesDefaults::syncSettings() general->setDefaultFileBehavior(CLOUD_DEFAULT_FILE); auto display = SettingsObjectWrapper::instance()->display_settings; - - //TODO: Verify the 'save or remove special' feature for the divelist font and the font size. display->setDivelistFont(ui->font->currentFont().toString()); display->setFontSize(ui->fontsize->value()); display->setDisplayInvalidDives(ui->displayinvalid->isChecked()); -- 2.10.2
From cff62d4ee52fad9202ae396c9ac53c36571b94e0 Mon Sep 17 00:00:00 2001 From: Tomaz Canabrava <[email protected]> Date: Tue, 1 Nov 2016 14:17:59 +0100 Subject: [PATCH 6/9] Remember to load the language Signed-off-by: Tomaz Canabrava <[email protected]> --- core/subsurface-qt/SettingsObjectWrapper.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/core/subsurface-qt/SettingsObjectWrapper.cpp b/core/subsurface-qt/SettingsObjectWrapper.cpp index ec5e041..9e9c2ec 100644 --- a/core/subsurface-qt/SettingsObjectWrapper.cpp +++ b/core/subsurface-qt/SettingsObjectWrapper.cpp @@ -2288,6 +2288,7 @@ void SettingsObjectWrapper::load() s.endGroup(); s.beginGroup("Language"); + prefs.locale.language = copy_string(qPrintable(s.value("UiLanguage").toString())); prefs.locale.lang_locale = copy_string(qPrintable(s.value("UiLangLocale").toString())); prefs.time_format = copy_string(qPrintable(s.value("time_format").toString())); prefs.date_format = copy_string(qPrintable(s.value("date_format").toString())); -- 2.10.2
From 5b797f756c5d70a3856af99283794969f8f0b928 Mon Sep 17 00:00:00 2001 From: Tomaz Canabrava <[email protected]> Date: Tue, 1 Nov 2016 14:22:43 +0100 Subject: [PATCH 7/9] Load use_system_language Forgot to load use_system_language, wich borked the preferences. Signed-off-by: Tomaz Canabrava <[email protected]> --- core/subsurface-qt/SettingsObjectWrapper.cpp | 1 + 1 file changed, 1 insertion(+) diff --git a/core/subsurface-qt/SettingsObjectWrapper.cpp b/core/subsurface-qt/SettingsObjectWrapper.cpp index 9e9c2ec..d61200b 100644 --- a/core/subsurface-qt/SettingsObjectWrapper.cpp +++ b/core/subsurface-qt/SettingsObjectWrapper.cpp @@ -2288,6 +2288,7 @@ void SettingsObjectWrapper::load() s.endGroup(); s.beginGroup("Language"); + prefs.locale.use_system_language = s.value("UseSystemLanguage").toBool(); prefs.locale.language = copy_string(qPrintable(s.value("UiLanguage").toString())); prefs.locale.lang_locale = copy_string(qPrintable(s.value("UiLangLocale").toString())); prefs.time_format = copy_string(qPrintable(s.value("time_format").toString())); -- 2.10.2
From 0a5917351d528618e3a916ea8020d8da84e9a846 Mon Sep 17 00:00:00 2001 From: Tomaz Canabrava <[email protected]> Date: Tue, 1 Nov 2016 14:35:56 +0100 Subject: [PATCH 8/9] use GET_* macros for getting settings Those macros are nice because they take into consideration the default preferences. Signed-off-by: Tomaz Canabrava <[email protected]> --- core/subsurface-qt/SettingsObjectWrapper.cpp | 46 +++++++++++++++------------- 1 file changed, 24 insertions(+), 22 deletions(-) diff --git a/core/subsurface-qt/SettingsObjectWrapper.cpp b/core/subsurface-qt/SettingsObjectWrapper.cpp index d61200b..e8d1e7d 100644 --- a/core/subsurface-qt/SettingsObjectWrapper.cpp +++ b/core/subsurface-qt/SettingsObjectWrapper.cpp @@ -2249,28 +2249,30 @@ void SettingsObjectWrapper::load() s.endGroup(); s.beginGroup("Planner"); - prefs.last_stop = s.value("last_stop", prefs.last_stop).toBool(); - prefs.verbatim_plan = s.value("verbatim_plan", prefs.verbatim_plan).toBool(); - prefs.display_duration = s.value("display_duration", prefs.display_duration).toBool(); - prefs.display_runtime = s.value("display_runtime", prefs.display_runtime).toBool(); - prefs.display_transitions = s.value("display_transitions", prefs.display_transitions).toBool(); - prefs.deco_mode = deco_mode(s.value("deco_mode", prefs.deco_mode).toInt()); - prefs.safetystop = s.value("safetystop", prefs.safetystop).toBool(); - prefs.reserve_gas = s.value("reserve_gas", prefs.reserve_gas).toInt(); - prefs.ascrate75 = s.value("ascrate75", prefs.ascrate75).toInt(); - prefs.ascrate50 = s.value("ascrate50", prefs.ascrate50).toInt(); - prefs.ascratestops = s.value("ascratestops", prefs.ascratestops).toInt(); - prefs.ascratelast6m = s.value("ascratelast6m", prefs.ascratelast6m).toInt(); - prefs.descrate = s.value("descrate", prefs.descrate).toInt(); - prefs.bottompo2 = s.value("bottompo2", prefs.bottompo2).toInt(); - prefs.decopo2 = s.value("decopo2", prefs.decopo2).toInt(); - prefs.bestmixend.mm = s.value("bestmixend", prefs.bestmixend.mm).toInt(); - prefs.doo2breaks = s.value("doo2breaks", prefs.doo2breaks).toBool(); - prefs.switch_at_req_stop = s.value("switch_at_req_stop", prefs.switch_at_req_stop).toBool(); - prefs.min_switch_duration = s.value("min_switch_duration", prefs.min_switch_duration).toInt(); - prefs.drop_stone_mode = s.value("drop_stone_mode", prefs.drop_stone_mode).toBool(); - prefs.bottomsac = s.value("bottomsac", prefs.bottomsac).toInt(); - prefs.decosac = s.value("decosac", prefs.decosac).toInt(); + GET_BOOL("last_stop", last_stop); + GET_BOOL("verbatim_plan", verbatim_plan); + GET_BOOL("display_duration", display_duration); + GET_BOOL("display_runtime", display_runtime); + GET_BOOL("display_transitions", display_transitions); + GET_BOOL("safetystop", safetystop); + GET_BOOL("doo2breaks", doo2breaks); + GET_BOOL("switch_at_req_stop",switch_at_req_stop); + GET_BOOL("drop_stone_mode", drop_stone_mode); + + GET_INT("reserve_gas", reserve_gas); + GET_INT("ascrate75", ascrate75); + GET_INT("ascrate50", ascrate50); + GET_INT("ascratestops", ascratestops); + GET_INT("ascratelast6m", ascratelast6m); + GET_INT("descrate", descrate); + GET_INT("bottompo2", bottompo2); + GET_INT("decopo2", decopo2); + GET_INT("bestmixend", bestmixend.mm); + GET_INT("min_switch_duration", min_switch_duration); + GET_INT("bottomsac", bottomsac); + GET_INT("decosac", decosac); + + prefs.deco_mode = deco_mode(s.value("deco_mode", default_prefs.deco_mode).toInt()); s.endGroup(); s.beginGroup("DiveComputer"); -- 2.10.2
From df4cd200f22e5798b797a5f96a5f66cebf9cd381 Mon Sep 17 00:00:00 2001 From: Tomaz Canabrava <[email protected]> Date: Tue, 1 Nov 2016 14:42:26 +0100 Subject: [PATCH 9/9] Use default prefs for the prefs that where missing This patch fixes all the cases that I didn't checked for the default prefs. Signed-off-by: Tomaz Canabrava <[email protected]> --- core/subsurface-qt/SettingsObjectWrapper.cpp | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/core/subsurface-qt/SettingsObjectWrapper.cpp b/core/subsurface-qt/SettingsObjectWrapper.cpp index e8d1e7d..68fdf19 100644 --- a/core/subsurface-qt/SettingsObjectWrapper.cpp +++ b/core/subsurface-qt/SettingsObjectWrapper.cpp @@ -2284,18 +2284,18 @@ void SettingsObjectWrapper::load() s.beginGroup("UpdateManager"); prefs.update_manager.dont_check_exists = s.contains("DontCheckForUpdates"); - prefs.update_manager.dont_check_for_updates = s.value("DontCheckForUpdates").toBool(); - prefs.update_manager.last_version_used = copy_string(qPrintable(s.value("LastVersionUsed").toString())); + GET_BOOL("DontCheckForUpdates", update_manager.dont_check_for_updates); + GET_TXT("LastVersionUsed", update_manager.last_version_used); prefs.update_manager.next_check = copy_string(qPrintable(s.value("NextCheck").toDate().toString("dd/MM/yyyy"))); s.endGroup(); s.beginGroup("Language"); - prefs.locale.use_system_language = s.value("UseSystemLanguage").toBool(); - prefs.locale.language = copy_string(qPrintable(s.value("UiLanguage").toString())); - prefs.locale.lang_locale = copy_string(qPrintable(s.value("UiLangLocale").toString())); - prefs.time_format = copy_string(qPrintable(s.value("time_format").toString())); - prefs.date_format = copy_string(qPrintable(s.value("date_format").toString())); - prefs.date_format_short = copy_string(qPrintable(s.value("date_format_short").toString())); + GET_BOOL("UseSystemLanguage", locale.use_system_language); + GET_TXT("UiLanguage", locale.language); + GET_TXT("UiLangLocale", locale.lang_locale); + GET_TXT("time_format", time_format); + GET_TXT("date_format", date_format); + GET_TXT("date_format_short", date_format_short); s.endGroup(); } -- 2.10.2
_______________________________________________ subsurface mailing list [email protected] http://lists.subsurface-divelog.org/cgi-bin/mailman/listinfo/subsurface
