From c431e9f1f03023d216db0ff48d3d598e705c97f9 Mon Sep 17 00:00:00 2001 From: Philip Kaufmann Date: Sat, 13 Jul 2013 13:14:23 +0200 Subject: Bitcoin-Qt: save and restore position of debug window - move the code for saving and restoring window positions from BitcoinGUI to GUIUtil, make it more generic and also use it for saving/restoring debug window positions --- src/qt/guiutil.cpp | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'src/qt/guiutil.cpp') diff --git a/src/qt/guiutil.cpp b/src/qt/guiutil.cpp index 521d9bddd..d51b68e04 100644 --- a/src/qt/guiutil.cpp +++ b/src/qt/guiutil.cpp @@ -24,6 +24,8 @@ #include #include #include +#include +#include #include #include @@ -487,6 +489,29 @@ bool SetStartOnSystemStartup(bool fAutoStart) { return false; } #endif +void saveWindowGeometry(const QString& strSetting, QWidget *parent) +{ + QSettings settings; + settings.setValue(strSetting + "Pos", parent->pos()); + settings.setValue(strSetting + "Size", parent->size()); +} + +void restoreWindowGeometry(const QString& strSetting, const QSize& defaultSize, QWidget *parent) +{ + QSettings settings; + QPoint pos = settings.value(strSetting + "Pos").toPoint(); + QSize size = settings.value(strSetting + "Size", defaultSize).toSize(); + + if (!pos.x() && !pos.y()) { + QRect screen = QApplication::desktop()->screenGeometry(); + pos.setX((screen.width() - size.width()) / 2); + pos.setY((screen.height() - size.height()) / 2); + } + + parent->resize(size); + parent->move(pos); +} + HelpMessageBox::HelpMessageBox(QWidget *parent) : QMessageBox(parent) { -- cgit v1.2.3