summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFriedemann Kleint <Friedemann.Kleint@qt.io>2021-06-01 09:53:18 +0200
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2021-06-01 23:54:35 +0200
commitc59fbf576d2995f1c4fb52c1b21cf7d29cdf1a50 (patch)
tree0495799aeef0c226c03af1469efe55fff1a51957
parent253d97cce625a55eb900f60540da0cec13782828 (diff)
Fix QSettings documentation
QMainWindow::saveGeometry()/restoreGeometry() should be used to save and restore geometries instead of saving pos/size since it also works in multiscreen settings. Pick-to: 6.1 Change-Id: I27cc5ec13e69266367f035796e208d214f84b043 Reviewed-by: Volker Hilsheimer <volker.hilsheimer@qt.io>
-rw-r--r--src/corelib/doc/snippets/settings/settings.cpp10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/corelib/doc/snippets/settings/settings.cpp b/src/corelib/doc/snippets/settings/settings.cpp
index 49312b9cfc..a3491d8c76 100644
--- a/src/corelib/doc/snippets/settings/settings.cpp
+++ b/src/corelib/doc/snippets/settings/settings.cpp
@@ -152,8 +152,7 @@ void MainWindow::writeSettings()
QSettings settings("Moose Soft", "Clipper");
settings.beginGroup("MainWindow");
- settings.setValue("size", size());
- settings.setValue("pos", pos());
+ settings.setValue("geometry", saveGeometry());
settings.endGroup();
}
//! [16]
@@ -164,8 +163,11 @@ void MainWindow::readSettings()
QSettings settings("Moose Soft", "Clipper");
settings.beginGroup("MainWindow");
- resize(settings.value("size", QSize(400, 400)).toSize());
- move(settings.value("pos", QPoint(200, 200)).toPoint());
+ const auto geometry = settings.value("geometry", QByteArray()).toByteArray();
+ if (geometry.isEmpty())
+ setGeometry(200, 200, 400, 400);
+ else
+ restoreGeometry(geometry)
settings.endGroup();
}
//! [17]