From 2d4d2462680904ede2f9d46f080523683e6c1ef3 Mon Sep 17 00:00:00 2001 From: Chocobo1 Date: Wed, 28 Jul 2021 11:11:00 +0800 Subject: [PATCH] Remember last viewed page in Options dialog (#15230) --- src/gui/optionsdialog.cpp | 5 +++++ src/gui/optionsdialog.h | 1 + 2 files changed, 6 insertions(+) diff --git a/src/gui/optionsdialog.cpp b/src/gui/optionsdialog.cpp index 3b989cb25..6eaa04258 100644 --- a/src/gui/optionsdialog.cpp +++ b/src/gui/optionsdialog.cpp @@ -180,6 +180,7 @@ OptionsDialog::OptionsDialog(QWidget *parent) , m_ui {new Ui::OptionsDialog} , m_storeDialogSize {SETTINGS_KEY("Size")} , m_storeHSplitterSize {SETTINGS_KEY("HorizontalSplitterSizes")} + , m_storeLastViewedPage {SETTINGS_KEY("LastViewedPage")} { qDebug("-> Constructing Options"); m_ui->setupUi(this); @@ -570,6 +571,8 @@ OptionsDialog::OptionsDialog(QWidget *parent) for (QSpinBox *widget : asConst(findChildren())) widget->installEventFilter(wheelEventEater); + m_ui->tabSelection->setCurrentRow(m_storeLastViewedPage); + Utils::Gui::resize(this, m_storeDialogSize); show(); // Have to be called after show(), because splitter width needed @@ -619,6 +622,8 @@ OptionsDialog::~OptionsDialog() hSplitterSizes.append(QString::number(size)); m_storeHSplitterSize = hSplitterSizes; + m_storeLastViewedPage = m_ui->tabSelection->currentRow(); + delete m_ui; } diff --git a/src/gui/optionsdialog.h b/src/gui/optionsdialog.h index d4e7d3a36..35a9280ce 100644 --- a/src/gui/optionsdialog.h +++ b/src/gui/optionsdialog.h @@ -181,6 +181,7 @@ private: Ui::OptionsDialog *m_ui; SettingValue m_storeDialogSize; SettingValue m_storeHSplitterSize; + SettingValue m_storeLastViewedPage; QPushButton *m_applyButton;