Skip to content

Commit 964885d

Browse files
committed
qt: Save/restore recentRequestsView table column sizes
Sorting order is not saved/restored intentionally.
1 parent f5c8093 commit 964885d

File tree

1 file changed

+13
-5
lines changed

1 file changed

+13
-5
lines changed

src/qt/receivecoinsdialog.cpp

Lines changed: 13 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@
1919
#include <QCursor>
2020
#include <QMessageBox>
2121
#include <QScrollBar>
22+
#include <QSettings>
2223
#include <QTextDocument>
2324

2425
ReceiveCoinsDialog::ReceiveCoinsDialog(const PlatformStyle *_platformStyle, QWidget *parent) :
@@ -68,11 +69,16 @@ ReceiveCoinsDialog::ReceiveCoinsDialog(const PlatformStyle *_platformStyle, QWid
6869
tableView->setAlternatingRowColors(true);
6970
tableView->setSelectionBehavior(QAbstractItemView::SelectRows);
7071
tableView->setSelectionMode(QAbstractItemView::ContiguousSelection);
71-
tableView->setColumnWidth(RecentRequestsTableModel::Date, DATE_COLUMN_WIDTH);
72-
tableView->setColumnWidth(RecentRequestsTableModel::Label, LABEL_COLUMN_WIDTH);
73-
tableView->setColumnWidth(RecentRequestsTableModel::Amount, AMOUNT_MINIMUM_COLUMN_WIDTH);
74-
tableView->horizontalHeader()->setMinimumSectionSize(MINIMUM_COLUMN_WIDTH);
75-
tableView->horizontalHeader()->setStretchLastSection(true);
72+
73+
QSettings settings;
74+
if (!tableView->horizontalHeader()->restoreState(settings.value("RecentRequestsViewHeaderState").toByteArray())) {
75+
tableView->setColumnWidth(RecentRequestsTableModel::Date, DATE_COLUMN_WIDTH);
76+
tableView->setColumnWidth(RecentRequestsTableModel::Label, LABEL_COLUMN_WIDTH);
77+
tableView->setColumnWidth(RecentRequestsTableModel::Amount, AMOUNT_MINIMUM_COLUMN_WIDTH);
78+
tableView->horizontalHeader()->setMinimumSectionSize(MINIMUM_COLUMN_WIDTH);
79+
tableView->horizontalHeader()->setStretchLastSection(true);
80+
}
81+
tableView->horizontalHeader()->setSortIndicator(RecentRequestsTableModel::Date, Qt::DescendingOrder);
7682
}
7783

7884
void ReceiveCoinsDialog::setModel(WalletModel *_model)
@@ -109,6 +115,8 @@ void ReceiveCoinsDialog::setModel(WalletModel *_model)
109115

110116
ReceiveCoinsDialog::~ReceiveCoinsDialog()
111117
{
118+
QSettings settings;
119+
settings.setValue("RecentRequestsViewHeaderState", ui->recentRequestsView->horizontalHeader()->saveState());
112120
delete ui;
113121
}
114122

0 commit comments

Comments
 (0)