Skip to content

Commit

Permalink
Merge #757: Add wallet name to address book page title
Browse files Browse the repository at this point in the history
58c9b50 gui: Add wallet name to address book page (pablomartin4btc)

Pull request description:

  It fixes #756.

  Each address book page window it's now labeled with the wallet name they were opened with, so the user can easily identify which addresses belong to which wallet even when there are many windows opened. It's a helpful enhancement for users managing multiple wallets.

  ![image](https://github.com/bitcoin-core/gui/assets/110166421/628e37bb-87b9-42fb-9158-bffdd8428bcb)

ACKs for top commit:
  hebasto:
    ACK 58c9b50, tested on Ubuntu 22.04.

Tree-SHA512: 82febc020653560281da144cd35c672c49ca9f48b23d173eb19395e9ab4d045500295a9b5f24c82efdbf6e7ea70c87e733207cb6a31d3f84828b27e3b2df558b
  • Loading branch information
hebasto committed Oct 4, 2023
2 parents ab163b0 + 58c9b50 commit 8369467
Show file tree
Hide file tree
Showing 4 changed files with 20 additions and 11 deletions.
26 changes: 15 additions & 11 deletions src/qt/addressbookpage.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -81,9 +81,7 @@ AddressBookPage::AddressBookPage(const PlatformStyle *platformStyle, Mode _mode,
ui->exportButton->setIcon(platformStyle->SingleColorIcon(":/icons/export"));
}

switch(mode)
{
case ForSelection:
if (mode == ForSelection) {
switch(tab)
{
case SendingTab: setWindowTitle(tr("Choose the address to send coins to")); break;
Expand All @@ -94,14 +92,6 @@ AddressBookPage::AddressBookPage(const PlatformStyle *platformStyle, Mode _mode,
ui->tableView->setFocus();
ui->closeButton->setText(tr("C&hoose"));
ui->exportButton->hide();
break;
case ForEditing:
switch(tab)
{
case SendingTab: setWindowTitle(tr("Sending addresses")); break;
case ReceivingTab: setWindowTitle(tr("Receiving addresses")); break;
}
break;
}
switch(tab)
{
Expand Down Expand Up @@ -164,6 +154,7 @@ void AddressBookPage::setModel(AddressTableModel *_model)
connect(_model, &AddressTableModel::rowsInserted, this, &AddressBookPage::selectNewAddress);

selectionChanged();
this->updateWindowsTitleWithWalletName();
}

void AddressBookPage::on_copyAddress_clicked()
Expand Down Expand Up @@ -328,3 +319,16 @@ void AddressBookPage::selectNewAddress(const QModelIndex &parent, int begin, int
newAddressToSelect.clear();
}
}

void AddressBookPage::updateWindowsTitleWithWalletName()
{
const QString walletName = this->model->GetWalletDisplayName();

if (mode == ForEditing) {
switch(tab)
{
case SendingTab: setWindowTitle(tr("Sending addresses - %1").arg(walletName)); break;
case ReceivingTab: setWindowTitle(tr("Receiving addresses - %1").arg(walletName)); break;
}
}
}
1 change: 1 addition & 0 deletions src/qt/addressbookpage.h
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ public Q_SLOTS:
AddressBookSortFilterProxyModel *proxyModel;
QMenu *contextMenu;
QString newAddressToSelect;
void updateWindowsTitleWithWalletName();

private Q_SLOTS:
/** Delete currently selected address entry */
Expand Down
2 changes: 2 additions & 0 deletions src/qt/addresstablemodel.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -451,3 +451,5 @@ void AddressTableModel::emitDataChanged(int idx)
{
Q_EMIT dataChanged(index(idx, 0, QModelIndex()), index(idx, columns.length()-1, QModelIndex()));
}

QString AddressTableModel::GetWalletDisplayName() const { return walletModel->getDisplayName(); };
2 changes: 2 additions & 0 deletions src/qt/addresstablemodel.h
Original file line number Diff line number Diff line change
Expand Up @@ -87,6 +87,8 @@ class AddressTableModel : public QAbstractTableModel

OutputType GetDefaultAddressType() const;

QString GetWalletDisplayName() const;

private:
WalletModel* const walletModel;
AddressTablePriv *priv = nullptr;
Expand Down

0 comments on commit 8369467

Please sign in to comment.