Treat generation (mined) transactions less different from receive transactions
- Show address receiving the generation, and include it in the correct "account" - Multiple entries in listtransactions output if the coinbase has multiple outputs to us
This commit is contained in:
@@ -54,12 +54,7 @@ QList<TransactionRecord> TransactionRecord::decomposeTransaction(const CWallet *
|
||||
CTxDestination address;
|
||||
sub.idx = parts.size(); // sequence number
|
||||
sub.credit = txout.nValue;
|
||||
if (wtx.IsCoinBase())
|
||||
{
|
||||
// Generated
|
||||
sub.type = TransactionRecord::Generated;
|
||||
}
|
||||
else if (ExtractDestination(txout.scriptPubKey, address) && IsMine(*wallet, address))
|
||||
if (ExtractDestination(txout.scriptPubKey, address) && IsMine(*wallet, address))
|
||||
{
|
||||
// Received by Bitcoin Address
|
||||
sub.type = TransactionRecord::RecvWithAddress;
|
||||
@@ -71,6 +66,11 @@ QList<TransactionRecord> TransactionRecord::decomposeTransaction(const CWallet *
|
||||
sub.type = TransactionRecord::RecvFromOther;
|
||||
sub.address = mapValue["from"];
|
||||
}
|
||||
if (wtx.IsCoinBase())
|
||||
{
|
||||
// Generated
|
||||
sub.type = TransactionRecord::Generated;
|
||||
}
|
||||
|
||||
parts.append(sub);
|
||||
}
|
||||
|
||||
@@ -392,11 +392,11 @@ QString TransactionTableModel::formatTxToAddress(const TransactionRecord *wtx, b
|
||||
return QString::fromStdString(wtx->address);
|
||||
case TransactionRecord::RecvWithAddress:
|
||||
case TransactionRecord::SendToAddress:
|
||||
case TransactionRecord::Generated:
|
||||
return lookupAddress(wtx->address, tooltip);
|
||||
case TransactionRecord::SendToOther:
|
||||
return QString::fromStdString(wtx->address);
|
||||
case TransactionRecord::SendToSelf:
|
||||
case TransactionRecord::Generated:
|
||||
default:
|
||||
return tr("(n/a)");
|
||||
}
|
||||
@@ -409,13 +409,13 @@ QVariant TransactionTableModel::addressColor(const TransactionRecord *wtx) const
|
||||
{
|
||||
case TransactionRecord::RecvWithAddress:
|
||||
case TransactionRecord::SendToAddress:
|
||||
case TransactionRecord::Generated:
|
||||
{
|
||||
QString label = walletModel->getAddressTableModel()->labelForAddress(QString::fromStdString(wtx->address));
|
||||
if(label.isEmpty())
|
||||
return COLOR_BAREADDRESS;
|
||||
} break;
|
||||
case TransactionRecord::SendToSelf:
|
||||
case TransactionRecord::Generated:
|
||||
return COLOR_BAREADDRESS;
|
||||
default:
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user