summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Gehad <gehadelrobey@gmail.com>2014-04-07 19:12:34 +0200
committerGravatar Dirk Hohndel <dirk@hohndel.org>2014-04-07 13:06:15 -0700
commit3125e0e69513a421c6821d1bd0f545501ede85b1 (patch)
tree238c17907ede3286c42f8e412facfc54415276db
parent0bf79e216f312010b78c81904e12b2feadcdaa14 (diff)
downloadsubsurface-3125e0e69513a421c6821d1bd0f545501ede85b1.tar.gz
Fix incorrect behavior in preference window
When doing some changes in the preference window and clicking "Apply", the 'Close without saving' button is supposed to restore the previous values. However some fields were not restored correctly. - The Animations Slider was never restored to its initial value. (A new member in the pref struct was added - pref.animation) - The 'Font' and 'Font size' were restored correctly to the previous values but their effects weren't restored to the UI and that required to open the prefrences window again and press ok. Fixes #481 Signed-off-by: Gehad elrobey <gehadelrobey@gmail.com> Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r--pref.h1
-rw-r--r--qt-ui/preferences.cpp8
2 files changed, 4 insertions, 5 deletions
diff --git a/pref.h b/pref.h
index c9cb27149..4a6b2ad53 100644
--- a/pref.h
+++ b/pref.h
@@ -33,6 +33,7 @@ struct preferences {
short calc_ndl_tts;
short gflow;
short gfhigh;
+ short animation;
bool gf_low_at_maxdepth;
short display_invalid_dives;
short unit_system;
diff --git a/qt-ui/preferences.cpp b/qt-ui/preferences.cpp
index e49984c2a..27570dc23 100644
--- a/qt-ui/preferences.cpp
+++ b/qt-ui/preferences.cpp
@@ -90,6 +90,7 @@ void PreferencesDialog::setUiFromPrefs()
ui.show_average_depth->setChecked(prefs.show_average_depth);
ui.vertical_speed_minutes->setChecked(prefs.units.vertical_speed_time == units::MINUTES);
ui.vertical_speed_seconds->setChecked(prefs.units.vertical_speed_time == units::SECONDS);
+ ui.velocitySlider->setValue(prefs.animation);
QSortFilterProxyModel *filterModel = new QSortFilterProxyModel();
filterModel->setSourceModel(LanguageModel::instance());
@@ -107,9 +108,6 @@ void PreferencesDialog::setUiFromPrefs()
ui.languageView->setCurrentIndex(languages.first());
s.endGroup();
- s.beginGroup("Animations");
- int animVelocity = s.value("animation_speed",500).toInt();
- ui.velocitySlider->setValue(animVelocity);
}
void PreferencesDialog::restorePrefs()
@@ -298,8 +296,7 @@ void PreferencesDialog::loadSettings()
s.endGroup();
s.beginGroup("Animations");
- int animVelocity = s.value("animation_speed",500).toInt();
- ui.velocitySlider->setValue(animVelocity);
+ GET_INT("animation_speed", animation);
}
void PreferencesDialog::buttonClicked(QAbstractButton *button)
@@ -307,6 +304,7 @@ void PreferencesDialog::buttonClicked(QAbstractButton *button)
switch (ui.buttonBox->standardButton(button)) {
case QDialogButtonBox::Discard:
restorePrefs();
+ syncSettings();
close();
break;
case QDialogButtonBox::Apply: