summaryrefslogtreecommitdiff
path: root/src/settings.cpp
diff options
context:
space:
mode:
authorAl12rs <gabriel.cortesi@outlook.com>2018-09-15 14:12:24 +0200
committerAl12rs <gabriel.cortesi@outlook.com>2018-09-15 14:12:24 +0200
commita3cb4001521fa4b29252ce6f9c652fb07b335bf4 (patch)
treeb6e9c3d9613292b855ded5e63c884bdcb4f76b02 /src/settings.cpp
parent3e29d312315a15394a4da423dfa8791f40e3ab52 (diff)
Store and load major dialogs geometry information.
Diffstat (limited to 'src/settings.cpp')
-rw-r--r--src/settings.cpp8
1 files changed, 8 insertions, 0 deletions
diff --git a/src/settings.cpp b/src/settings.cpp
index db4ea565..6ef43ace 100644
--- a/src/settings.cpp
+++ b/src/settings.cpp
@@ -604,6 +604,12 @@ void Settings::query(PluginContainer *pluginContainer, QWidget *parent)
tabs.push_back(std::unique_ptr<SettingsTab>(new PluginsTab(this, dialog)));
tabs.push_back(std::unique_ptr<SettingsTab>(new WorkaroundsTab(this, dialog)));
+
+ QString key = QString("geometry/%1").arg(dialog.objectName());
+ if (m_Settings.contains(key)) {
+ dialog.restoreGeometry(m_Settings.value(key).toByteArray());
+ }
+
if (dialog.exec() == QDialog::Accepted) {
// remember settings before change
QMap<QString, QString> before;
@@ -631,6 +637,8 @@ void Settings::query(PluginContainer *pluginContainer, QWidget *parent)
}
m_Settings.endGroup();
}
+ m_Settings.setValue(key, dialog.saveGeometry());
+
}
Settings::SettingsTab::SettingsTab(Settings *m_parent, SettingsDialog &m_dialog)