aboutsummaryrefslogtreecommitdiff
path: root/src/qt/transactiontablemodel.cpp
diff options
context:
space:
mode:
authorWladimir J. van der Laan <laanwj@gmail.com>2015-11-17 11:17:09 +0100
committerWladimir J. van der Laan <laanwj@gmail.com>2015-11-19 11:08:29 +0100
commitb4f3e9c09eab533179be8efe478a0f21c3f83e6c (patch)
tree6b89bb89cd487db59149e372a4ed477e928ec0a9 /src/qt/transactiontablemodel.cpp
parenteac53ec992018a14db6f8a65a7ce333a4c8284cc (diff)
ui: Add "Copy raw transaction data" to transaction list context menu
Add a way to quickly copy transaction hex. Primarily useful when manually submitting transactions, e.g. `-walletbroadcast=0` is set.
Diffstat (limited to 'src/qt/transactiontablemodel.cpp')
-rw-r--r--src/qt/transactiontablemodel.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/qt/transactiontablemodel.cpp b/src/qt/transactiontablemodel.cpp
index 98ad1a44b6..e8ada9f762 100644
--- a/src/qt/transactiontablemodel.cpp
+++ b/src/qt/transactiontablemodel.cpp
@@ -13,6 +13,7 @@
#include "transactionrecord.h"
#include "walletmodel.h"
+#include "core_io.h"
#include "main.h"
#include "sync.h"
#include "uint256.h"
@@ -220,6 +221,18 @@ public:
}
return QString();
}
+
+ QString getTxHex(TransactionRecord *rec)
+ {
+ LOCK2(cs_main, wallet->cs_wallet);
+ std::map<uint256, CWalletTx>::iterator mi = wallet->mapWallet.find(rec->hash);
+ if(mi != wallet->mapWallet.end())
+ {
+ std::string strHex = EncodeHexTx(static_cast<CTransaction>(mi->second));
+ return QString::fromStdString(strHex);
+ }
+ return QString();
+ }
};
TransactionTableModel::TransactionTableModel(const PlatformStyle *platformStyle, CWallet* wallet, WalletModel *parent):
@@ -594,6 +607,8 @@ QVariant TransactionTableModel::data(const QModelIndex &index, int role) const
return rec->getTxID();
case TxHashRole:
return QString::fromStdString(rec->hash.ToString());
+ case TxHexRole:
+ return priv->getTxHex(rec);
case ConfirmedRole:
return rec->status.countsForBalance;
case FormattedAmountRole: