From d2692f61164730322547871f2124de06ade0436b Mon Sep 17 00:00:00 2001 From: JaSK Date: Sat, 5 Apr 2014 21:36:48 +0200 Subject: Watchonly transactions are marked in transaction history --- src/qt/transactionrecord.cpp | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/qt/transactionrecord.cpp') diff --git a/src/qt/transactionrecord.cpp b/src/qt/transactionrecord.cpp index 3d77d39893..1011363f3e 100644 --- a/src/qt/transactionrecord.cpp +++ b/src/qt/transactionrecord.cpp @@ -70,16 +70,19 @@ QList TransactionRecord::decomposeTransaction(const CWallet * sub.type = TransactionRecord::Generated; } + sub.involvesWatchAddress = mine == MINE_WATCH_ONLY; parts.append(sub); } } } else { + bool involvesWatchAddress = false; isminetype fAllFromMe = MINE_SPENDABLE; BOOST_FOREACH(const CTxIn& txin, wtx.vin) { isminetype mine = wallet->IsMine(txin); + if(mine == MINE_WATCH_ONLY) involvesWatchAddress = true; if(fAllFromMe > mine) fAllFromMe = mine; } @@ -87,6 +90,7 @@ QList TransactionRecord::decomposeTransaction(const CWallet * BOOST_FOREACH(const CTxOut& txout, wtx.vout) { isminetype mine = wallet->IsMine(txout); + if(mine == MINE_WATCH_ONLY) involvesWatchAddress = true; if(fAllToMe > mine) fAllToMe = mine; } @@ -97,6 +101,7 @@ QList TransactionRecord::decomposeTransaction(const CWallet * parts.append(TransactionRecord(hash, nTime, TransactionRecord::SendToSelf, "", -(nDebit - nChange), nCredit - nChange)); + parts.last().involvesWatchAddress = involvesWatchAddress; } else if (fAllFromMe) { @@ -141,6 +146,7 @@ QList TransactionRecord::decomposeTransaction(const CWallet * } sub.debit = -nValue; + sub.involvesWatchAddress = involvesWatchAddress; parts.append(sub); } } @@ -150,6 +156,7 @@ QList TransactionRecord::decomposeTransaction(const CWallet * // Mixed debit transaction, can't break down payees // parts.append(TransactionRecord(hash, nTime, TransactionRecord::Other, "", nNet, 0)); + parts.last().involvesWatchAddress = involvesWatchAddress; } } -- cgit v1.2.3