diff options
author | MarcoFalke <falke.marco@gmail.com> | 2021-02-22 08:16:54 +0100 |
---|---|---|
committer | MarcoFalke <falke.marco@gmail.com> | 2021-02-22 08:17:06 +0100 |
commit | 0e9596c86007f35a7d8585906012264724298b05 (patch) | |
tree | 8399611c1586da4a6b1566af5cc619c76f00d14e /src/qt/receivecoinsdialog.cpp | |
parent | fd725c2d795a1df0f3a21d9c9e8b3cf3183bd9bc (diff) | |
parent | 964885d04801c6ab77ce4705cff01c9d83bc3ed8 (diff) | |
download | bitcoin-0e9596c86007f35a7d8585906012264724298b05.tar.xz |
Merge bitcoin-core/gui#205: Save/restore TransactionView and recentRequestsView tables column sizes
964885d04801c6ab77ce4705cff01c9d83bc3ed8 qt: Save/restore recentRequestsView table column sizes (Hennadii Stepanov)
f5c8093e778069f4930a84452398c339aad58e79 qt: Move recentRequestsView properties settings to constructor (Hennadii Stepanov)
9c5f4f2169cc4494d3e22fd62afe40e000a9eace qt: Save/restore TransactionView table column sizes (Hennadii Stepanov)
788205c3f783fb20bfdfd403be6befba149772ca qt: Move transactionView properties settings to constructor (Hennadii Stepanov)
ecdbaf71c0e1a4363e7eb019dabeb0018522ef70 qt, refactor: Drop intermediate assignment (Hennadii Stepanov)
Pull request description:
Save/restore TransactionView and recentRequestsView tables column sizes.
Sorting order is not saved/restored intentionally.
Based on #204 (the first commit).
ACKs for top commit:
jarolrod:
ACK 964885d04801c6ab77ce4705cff01c9d83bc3ed8, tested on macOS 11.1 Qt 5.15.2
Talkless:
tACK 964885d04801c6ab77ce4705cff01c9d83bc3ed8, tested on Debian Sid, saving/restoring and resetting (with `-resetguisettings`) works as expected.
Tree-SHA512: c24e41bf4d95bb33dce16e9a0b952ffd0912e95f4d2a1bc5292fcf5a27100e70fea73433c4ff246d05b174fc23a7b6de1790a2e8b990a9089e4deca79a00dedc
Diffstat (limited to 'src/qt/receivecoinsdialog.cpp')
-rw-r--r-- | src/qt/receivecoinsdialog.cpp | 30 |
1 files changed, 19 insertions, 11 deletions
diff --git a/src/qt/receivecoinsdialog.cpp b/src/qt/receivecoinsdialog.cpp index 15f9c8591b..49725a0d33 100644 --- a/src/qt/receivecoinsdialog.cpp +++ b/src/qt/receivecoinsdialog.cpp @@ -19,6 +19,7 @@ #include <QCursor> #include <QMessageBox> #include <QScrollBar> +#include <QSettings> #include <QTextDocument> ReceiveCoinsDialog::ReceiveCoinsDialog(const PlatformStyle *_platformStyle, QWidget *parent) : @@ -62,6 +63,22 @@ ReceiveCoinsDialog::ReceiveCoinsDialog(const PlatformStyle *_platformStyle, QWid connect(copyAmountAction, &QAction::triggered, this, &ReceiveCoinsDialog::copyAmount); connect(ui->clearButton, &QPushButton::clicked, this, &ReceiveCoinsDialog::clear); + + QTableView* tableView = ui->recentRequestsView; + tableView->verticalHeader()->hide(); + tableView->setAlternatingRowColors(true); + tableView->setSelectionBehavior(QAbstractItemView::SelectRows); + tableView->setSelectionMode(QAbstractItemView::ContiguousSelection); + + QSettings settings; + if (!tableView->horizontalHeader()->restoreState(settings.value("RecentRequestsViewHeaderState").toByteArray())) { + tableView->setColumnWidth(RecentRequestsTableModel::Date, DATE_COLUMN_WIDTH); + tableView->setColumnWidth(RecentRequestsTableModel::Label, LABEL_COLUMN_WIDTH); + tableView->setColumnWidth(RecentRequestsTableModel::Amount, AMOUNT_MINIMUM_COLUMN_WIDTH); + tableView->horizontalHeader()->setMinimumSectionSize(MINIMUM_COLUMN_WIDTH); + tableView->horizontalHeader()->setStretchLastSection(true); + } + tableView->horizontalHeader()->setSortIndicator(RecentRequestsTableModel::Date, Qt::DescendingOrder); } void ReceiveCoinsDialog::setModel(WalletModel *_model) @@ -75,18 +92,7 @@ void ReceiveCoinsDialog::setModel(WalletModel *_model) updateDisplayUnit(); QTableView* tableView = ui->recentRequestsView; - - tableView->verticalHeader()->hide(); tableView->setModel(_model->getRecentRequestsTableModel()); - tableView->setAlternatingRowColors(true); - tableView->setSelectionBehavior(QAbstractItemView::SelectRows); - tableView->setSelectionMode(QAbstractItemView::ContiguousSelection); - tableView->setColumnWidth(RecentRequestsTableModel::Date, DATE_COLUMN_WIDTH); - tableView->setColumnWidth(RecentRequestsTableModel::Label, LABEL_COLUMN_WIDTH); - tableView->setColumnWidth(RecentRequestsTableModel::Amount, AMOUNT_MINIMUM_COLUMN_WIDTH); - tableView->horizontalHeader()->setMinimumSectionSize(MINIMUM_COLUMN_WIDTH); - tableView->horizontalHeader()->setStretchLastSection(true); - connect(tableView->selectionModel(), &QItemSelectionModel::selectionChanged, this, &ReceiveCoinsDialog::recentRequestsView_selectionChanged); @@ -109,6 +115,8 @@ void ReceiveCoinsDialog::setModel(WalletModel *_model) ReceiveCoinsDialog::~ReceiveCoinsDialog() { + QSettings settings; + settings.setValue("RecentRequestsViewHeaderState", ui->recentRequestsView->horizontalHeader()->saveState()); delete ui; } |