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 <[email protected]>
---
 qt-ui/preferences.cpp | 10 +++++++++-
 qt-ui/preferences.h   |  1 +
 2 files changed, 10 insertions(+), 1 deletion(-)

diff --git a/qt-ui/preferences.cpp b/qt-ui/preferences.cpp
index cb8dde8..2a49a43 100644
--- a/qt-ui/preferences.cpp
+++ b/qt-ui/preferences.cpp
@@ -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)
diff --git a/qt-ui/preferences.h b/qt-ui/preferences.h
index a309141..d7cf775 100644
--- a/qt-ui/preferences.h
+++ b/qt-ui/preferences.h
@@ -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);
-- 
1.8.3.2


_______________________________________________
subsurface mailing list
[email protected]
http://lists.hohndel.org/cgi-bin/mailman/listinfo/subsurface

Reply via email to