summaryrefslogtreecommitdiffstats
path: root/desktop-widgets
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2018-08-29 03:08:47 -0700
committerGravatar Dirk Hohndel <dirk@hohndel.org>2018-08-29 03:09:10 -0700
commit2d87a657d248c1c6d4dd6a805bbf90c98589798a (patch)
tree3f0e3a9f6c5e072a67c936e3bbf5d17957431816 /desktop-widgets
parent4bb72160a6323e1ab3f3d9ea2c7f90c21088347f (diff)
downloadsubsurface-2d87a657d248c1c6d4dd6a805bbf90c98589798a.tar.gz
Revert "desktop-widgets: remove QSettings from desktop-widgets"
This reverts commit 321a920a9873a3828a24c1b28cf8eb5fe1bff2cb. It appears that the load_xxx functions aren't called, so while the correct values are stored to the settings, they aren't retrieved. Let's revert while this gets fixed. Fixes #1609 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'desktop-widgets')
-rw-r--r--desktop-widgets/diveplanner.cpp1
-rw-r--r--desktop-widgets/diveshareexportdialog.cpp16
-rw-r--r--desktop-widgets/mainwindow.cpp49
-rw-r--r--desktop-widgets/mainwindow.h1
-rw-r--r--desktop-widgets/preferences/preferencesdialog.cpp6
-rw-r--r--desktop-widgets/usersurvey.cpp10
6 files changed, 55 insertions, 28 deletions
diff --git a/desktop-widgets/diveplanner.cpp b/desktop-widgets/diveplanner.cpp
index 63c3a97ec..26e8c446a 100644
--- a/desktop-widgets/diveplanner.cpp
+++ b/desktop-widgets/diveplanner.cpp
@@ -14,6 +14,7 @@
#include <QGraphicsSceneMouseEvent>
#include <QMessageBox>
+#include <QSettings>
#include <QShortcut>
#define TIME_INITIAL_MAX 30
diff --git a/desktop-widgets/diveshareexportdialog.cpp b/desktop-widgets/diveshareexportdialog.cpp
index fc26e0ced..2689eaca8 100644
--- a/desktop-widgets/diveshareexportdialog.cpp
+++ b/desktop-widgets/diveshareexportdialog.cpp
@@ -6,9 +6,9 @@
#include "desktop-widgets/subsurfacewebservices.h"
#include "core/qthelper.h"
#include "core/cloudstorage.h"
-#include "core/settings/qPrefGeneral.h"
#include <QDesktopServices>
+#include <QSettings>
DiveShareExportDialog::DiveShareExportDialog(QWidget *parent) :
QDialog(parent),
@@ -43,11 +43,12 @@ void DiveShareExportDialog::prepareDivesForUpload(bool selected)
ui->frameConfigure->setVisible(true);
ui->frameResults->setVisible(false);
- if (qPrefGeneral::diveshareExport_uid() != "")
- ui->txtUID->setText(qPrefGeneral::diveshareExport_uid());
+ QSettings settings;
+ if (settings.contains("diveshareExport/uid"))
+ ui->txtUID->setText(settings.value("diveshareExport/uid").toString());
- if (qPrefGeneral::diveshareExport_private())
- ui->chkPrivate->setChecked(qPrefGeneral::diveshareExport_private());
+ if (settings.contains("diveshareExport/private"))
+ ui->chkPrivate->setChecked(settings.value("diveshareExport/private").toBool());
show();
}
@@ -107,8 +108,9 @@ void DiveShareExportDialog::finishedSlot()
void DiveShareExportDialog::doUpload()
{
//Store current settings
- qPrefGeneral::set_diveshareExport_uid(ui->txtUID->text());
- qPrefGeneral::set_diveshareExport_private(ui->chkPrivate->isChecked());
+ QSettings settings;
+ settings.setValue("diveshareExport/uid", ui->txtUID->text());
+ settings.setValue("diveshareExport/private", ui->chkPrivate->isChecked());
//Change UI into results mode
ui->frameConfigure->setVisible(false);
diff --git a/desktop-widgets/mainwindow.cpp b/desktop-widgets/mainwindow.cpp
index f45f27b71..ea5f31556 100644
--- a/desktop-widgets/mainwindow.cpp
+++ b/desktop-widgets/mainwindow.cpp
@@ -1182,10 +1182,12 @@ void MainWindow::on_actionViewAll_triggered()
listGlobeSizes.append(lrint(appW * 0.3));
}
- if (qPrefDisplay::mainSplitter() != "") {
- ui.mainSplitter->restoreState(qPrefDisplay::mainSplitter());
- ui.topSplitter->restoreState(qPrefDisplay::topSplitter());
- ui.bottomSplitter->restoreState(qPrefDisplay::bottomSplitter());
+ QSettings settings;
+ settings.beginGroup("MainWindow");
+ if (settings.value("mainSplitter").isValid()) {
+ ui.mainSplitter->restoreState(settings.value("mainSplitter").toByteArray());
+ ui.topSplitter->restoreState(settings.value("topSplitter").toByteArray());
+ ui.bottomSplitter->restoreState(settings.value("bottomSplitter").toByteArray());
if (ui.mainSplitter->sizes().first() == 0 || ui.mainSplitter->sizes().last() == 0)
ui.mainSplitter->setSizes(mainSizes);
if (ui.topSplitter->sizes().first() == 0 || ui.topSplitter->sizes().last() == 0)
@@ -1218,8 +1220,10 @@ void MainWindow::enterEditState()
int appW = qApp->desktop()->size().width();
QList<int> infoProfileSizes { (int)lrint(appW * 0.3), (int)lrint(appW * 0.7) };
- if (qPrefDisplay::mainSplitter() != "") {
- ui.topSplitter->restoreState(qPrefDisplay::topSplitter());
+ QSettings settings;
+ settings.beginGroup("MainWindow");
+ if (settings.value("mainSplitter").isValid()) {
+ ui.topSplitter->restoreState(settings.value("topSplitter").toByteArray());
if (ui.topSplitter->sizes().first() == 0 || ui.topSplitter->sizes().last() == 0)
ui.topSplitter->setSizes(infoProfileSizes);
} else {
@@ -1269,9 +1273,11 @@ void MainWindow::beginChangeState(CurrentState s)
void MainWindow::saveSplitterSizes()
{
- qPrefDisplay::set_mainSplitter(ui.mainSplitter->saveState());
- qPrefDisplay::set_topSplitter(ui.topSplitter->saveState());
- qPrefDisplay::set_bottomSplitter(ui.bottomSplitter->saveState());
+ QSettings settings;
+ settings.beginGroup("MainWindow");
+ settings.setValue("mainSplitter", ui.mainSplitter->saveState());
+ settings.setValue("topSplitter", ui.topSplitter->saveState());
+ settings.setValue("bottomSplitter", ui.bottomSplitter->saveState());
}
void MainWindow::on_actionPreviousDC_triggered()
@@ -1458,14 +1464,17 @@ bool MainWindow::askSaveChanges()
void MainWindow::initialUiSetup()
{
- if (qPrefDisplay::maximized()) {
+ QSettings settings;
+ settings.beginGroup("MainWindow");
+ if (settings.value("maximized", isMaximized()).value<bool>()) {
showMaximized();
} else {
- restoreGeometry(qPrefDisplay::geometry());
- restoreState(qPrefDisplay::windowState());
+ restoreGeometry(settings.value("geometry").toByteArray());
+ restoreState(settings.value("windowState", 0).toByteArray());
}
- enterState((CurrentState)qPrefDisplay::lastState());
+ enterState((CurrentState)settings.value("lastState", 0).toInt());
+ settings.endGroup();
show();
}
@@ -1497,7 +1506,7 @@ void MainWindow::checkSurvey()
// wait a week for production versions, but not at all for non-tagged builds
int waitTime = 7;
QDate firstUse42 = s.value("FirstUse42").toDate();
- if (run_survey || (firstUse42.daysTo(QDate().currentDate()) > waitTime && qPrefDisplay::UserSurvey() == "")) {
+ if (run_survey || (firstUse42.daysTo(QDate().currentDate()) > waitTime && !s.contains("SurveyDone"))) {
if (!survey)
survey = new UserSurvey(this);
survey->show();
@@ -1507,12 +1516,16 @@ void MainWindow::checkSurvey()
void MainWindow::writeSettings()
{
- qPrefDisplay::set_geometry(saveGeometry());
- qPrefDisplay::set_windowState(saveState());
- qPrefDisplay::set_maximized(isMaximized());
- qPrefDisplay::set_lastState((int)state);
+ QSettings settings;
+
+ settings.beginGroup("MainWindow");
+ settings.setValue("geometry", saveGeometry());
+ settings.setValue("windowState", saveState());
+ settings.setValue("maximized", isMaximized());
+ settings.setValue("lastState", (int)state);
if (state == VIEWALL)
saveSplitterSizes();
+ settings.endGroup();
}
void MainWindow::closeEvent(QCloseEvent *event)
diff --git a/desktop-widgets/mainwindow.h b/desktop-widgets/mainwindow.h
index 7bd33cbf0..06365a8e6 100644
--- a/desktop-widgets/mainwindow.h
+++ b/desktop-widgets/mainwindow.h
@@ -27,6 +27,7 @@ class QItemSelection;
class DiveListView;
class MainTab;
class QWebView;
+class QSettings;
class UpdateManager;
class UserManual;
class DivePlannerWidget;
diff --git a/desktop-widgets/preferences/preferencesdialog.cpp b/desktop-widgets/preferences/preferencesdialog.cpp
index 3b16260d2..49b1f87bd 100644
--- a/desktop-widgets/preferences/preferencesdialog.cpp
+++ b/desktop-widgets/preferences/preferencesdialog.cpp
@@ -32,6 +32,12 @@ void PreferencesDialog::emitSettingsChanged()
PreferencesDialog::PreferencesDialog()
{
+ //FIXME: This looks wrong.
+ //QSettings s;
+ //s.beginGroup("GeneralSettings");
+ //s.setValue("default_directory", system_default_directory());
+ //s.endGroup();
+
setWindowIcon(QIcon(":subsurface-icon"));
pagesList = new QListWidget();
pagesStack = new QStackedWidget();
diff --git a/desktop-widgets/usersurvey.cpp b/desktop-widgets/usersurvey.cpp
index fdf3e7f95..326a51f9e 100644
--- a/desktop-widgets/usersurvey.cpp
+++ b/desktop-widgets/usersurvey.cpp
@@ -1,6 +1,7 @@
// SPDX-License-Identifier: GPL-2.0
#include <QShortcut>
#include <QMessageBox>
+#include <QSettings>
#include "desktop-widgets/usersurvey.h"
#include "ui_usersurvey.h"
@@ -10,7 +11,6 @@
#include "core/qthelper.h"
#include "core/subsurfacesysinfo.h"
-#include "core/settings/qPrefDisplay.h"
UserSurvey::UserSurvey(QWidget *parent) : QDialog(parent),
ui(new Ui::UserSurvey)
@@ -88,7 +88,9 @@ void UserSurvey::on_buttonBox_rejected()
// nothing to do here, we'll just ask again the next time they start
break;
case QDialog::Rejected:
- qPrefDisplay::set_UserSurvey("declined");
+ QSettings s;
+ s.beginGroup("UserSurvey");
+ s.setValue("SurveyDone", "declined");
break;
}
hide();
@@ -114,7 +116,9 @@ void UserSurvey::requestReceived()
if (responseBody == "OK") {
msgText = tr("Survey successfully submitted.");
- qPrefDisplay::set_UserSurvey("submitted");
+ QSettings s;
+ s.beginGroup("UserSurvey");
+ s.setValue("SurveyDone", "submitted");
} else {
msgText = tr("There was an error while trying to check for updates.<br/><br/>%1").arg(responseBody);
msgbox.setIcon(QMessageBox::Warning);