Load preferences before they are saved.

Load all the settings in the PreferenceDialog constructor. Previously
all the settings were overwritten with default values the first time
PreferencesDialog::syncSettings() was called.

Signed-off-by: Michael Andreen <harv@ruin.nu>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
Michael Andreen 2014-02-08 18:07:06 +01:00 committed by Dirk Hohndel
parent 2a3a1c1b41
commit 753ebc8ed4
2 changed files with 10 additions and 1 deletions

View file

@ -20,6 +20,7 @@ PreferencesDialog::PreferencesDialog(QWidget* parent, Qt::WindowFlags f) : QDial
connect(ui.buttonBox, SIGNAL(clicked(QAbstractButton*)), this, SLOT(buttonClicked(QAbstractButton*)));
connect(ui.gflow, SIGNAL(valueChanged(int)), this, SLOT(gflowChanged(int)));
connect(ui.gfhigh, SIGNAL(valueChanged(int)), this, SLOT(gfhighChanged(int)));
loadSettings();
setUiFromPrefs();
rememberPrefs();
}
@ -245,10 +246,18 @@ void PreferencesDialog::syncSettings()
s.setValue("UseSystemLanguage", ui.languageSystemDefault->isChecked());
s.setValue("UiLanguage", ui.languageView->currentIndex().data(Qt::UserRole));
s.endGroup();
loadSettings();
emit settingsChanged();
}
void PreferencesDialog::loadSettings()
{
// This code was on the mainwindow, it should belong nowhere, but since we dind't
// correctly fixed this code yet ( too much stuff on the code calling preferences )
// force this here.
QSettings s;
QVariant v;
s.beginGroup("Units");
if (s.value("unit_system").toString() == "metric") {
@ -304,7 +313,6 @@ void PreferencesDialog::syncSettings()
GET_INT("font_size", font_size);
GET_INT("displayinvalid", display_invalid_dives);
s.endGroup();
emit settingsChanged();
}
void PreferencesDialog::buttonClicked(QAbstractButton* button)

View file

@ -21,6 +21,7 @@ public slots:
void buttonClicked(QAbstractButton* button);
void on_chooseFile_clicked();
void syncSettings();
void loadSettings();
void restorePrefs();
void rememberPrefs();
void gflowChanged(int gf);