mirror of
https://github.com/bitcoin/bitcoin.git
synced 2025-11-11 22:50:59 +01:00
Hide addresses in transaction overview by default, they can be re-shown as a configuration option
This commit is contained in:
@@ -322,21 +322,20 @@ QVariant TransactionTableModel::formatTxDate(const TransactionRecord *wtx) const
|
||||
}
|
||||
}
|
||||
|
||||
/* Look up address in address book, if found return
|
||||
address (label)
|
||||
otherwise just return address
|
||||
/* Look up address in address book, if found return label (address)
|
||||
otherwise just return (address)
|
||||
*/
|
||||
QString TransactionTableModel::lookupAddress(const std::string &address) const
|
||||
QString TransactionTableModel::lookupAddress(const std::string &address, bool tooltip) const
|
||||
{
|
||||
QString label = walletModel->getAddressTableModel()->labelForAddress(QString::fromStdString(address));
|
||||
QString description;
|
||||
if(label.isEmpty())
|
||||
if(!label.isEmpty())
|
||||
{
|
||||
description = QString::fromStdString(address);
|
||||
description += label + QString(" ");
|
||||
}
|
||||
else
|
||||
if(label.isEmpty() || walletModel->getOptionsModel()->getDisplayAddresses() || tooltip)
|
||||
{
|
||||
description = label + QString(" (") + QString::fromStdString(address) + QString(")");
|
||||
description += QString("(") + QString::fromStdString(address) + QString(")");
|
||||
}
|
||||
return description;
|
||||
}
|
||||
@@ -369,20 +368,18 @@ QVariant TransactionTableModel::formatTxType(const TransactionRecord *wtx) const
|
||||
return QVariant(description);
|
||||
}
|
||||
|
||||
QVariant TransactionTableModel::formatTxToAddress(const TransactionRecord *wtx) const
|
||||
QVariant TransactionTableModel::formatTxToAddress(const TransactionRecord *wtx, bool tooltip) const
|
||||
{
|
||||
QString description;
|
||||
|
||||
switch(wtx->type)
|
||||
{
|
||||
case TransactionRecord::RecvWithAddress:
|
||||
description = lookupAddress(wtx->address);
|
||||
break;
|
||||
case TransactionRecord::RecvFromIP:
|
||||
description = QString::fromStdString(wtx->address);
|
||||
break;
|
||||
case TransactionRecord::RecvWithAddress:
|
||||
case TransactionRecord::SendToAddress:
|
||||
description = lookupAddress(wtx->address);
|
||||
description = lookupAddress(wtx->address, tooltip);
|
||||
break;
|
||||
case TransactionRecord::SendToIP:
|
||||
description = QString::fromStdString(wtx->address);
|
||||
@@ -397,6 +394,24 @@ QVariant TransactionTableModel::formatTxToAddress(const TransactionRecord *wtx)
|
||||
return QVariant(description);
|
||||
}
|
||||
|
||||
QVariant TransactionTableModel::addressColor(const TransactionRecord *wtx) const
|
||||
{
|
||||
// Show addresses without label in a less visible color
|
||||
switch(wtx->type)
|
||||
{
|
||||
case TransactionRecord::RecvWithAddress:
|
||||
case TransactionRecord::SendToAddress:
|
||||
{
|
||||
QString label = walletModel->getAddressTableModel()->labelForAddress(QString::fromStdString(wtx->address));
|
||||
if(label.isEmpty())
|
||||
return COLOR_BAREADDRESS;
|
||||
} break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
return QVariant();
|
||||
}
|
||||
|
||||
QVariant TransactionTableModel::formatTxAmount(const TransactionRecord *wtx, bool showUnconfirmed) const
|
||||
{
|
||||
QString str = BitcoinUnits::format(walletModel->getOptionsModel()->getDisplayUnit(), wtx->credit + wtx->debit);
|
||||
@@ -478,7 +493,7 @@ QVariant TransactionTableModel::data(const QModelIndex &index, int role) const
|
||||
case Type:
|
||||
return formatTxType(rec);
|
||||
case ToAddress:
|
||||
return formatTxToAddress(rec);
|
||||
return formatTxToAddress(rec, false);
|
||||
case Amount:
|
||||
return formatTxAmount(rec);
|
||||
}
|
||||
@@ -495,16 +510,19 @@ QVariant TransactionTableModel::data(const QModelIndex &index, int role) const
|
||||
case Type:
|
||||
return formatTxType(rec);
|
||||
case ToAddress:
|
||||
return formatTxToAddress(rec);
|
||||
return formatTxToAddress(rec, true);
|
||||
case Amount:
|
||||
return rec->credit + rec->debit;
|
||||
}
|
||||
}
|
||||
else if (role == Qt::ToolTipRole)
|
||||
{
|
||||
if(index.column() == Status)
|
||||
switch(index.column())
|
||||
{
|
||||
case Status:
|
||||
return formatTxStatus(rec);
|
||||
case ToAddress:
|
||||
return formatTxToAddress(rec, true);
|
||||
}
|
||||
}
|
||||
else if (role == Qt::TextAlignmentRole)
|
||||
@@ -522,6 +540,10 @@ QVariant TransactionTableModel::data(const QModelIndex &index, int role) const
|
||||
{
|
||||
return COLOR_NEGATIVE;
|
||||
}
|
||||
if(index.column() == ToAddress)
|
||||
{
|
||||
return addressColor(rec);
|
||||
}
|
||||
}
|
||||
else if (role == TypeRole)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user