Bitcoin ABC  0.26.3
P2P Digital Currency
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | List of all members
TransactionRecord Class Reference

UI model for a transaction. More...

#include <transactionrecord.h>

Collaboration diagram for TransactionRecord:
[legend]

Public Types

enum  Type {
  Other , Generated , SendToAddress , SendToOther ,
  RecvWithAddress , RecvFromOther , SendToSelf
}
 

Public Member Functions

 TransactionRecord ()
 
 TransactionRecord (TxId _txid, qint64 _time)
 
 TransactionRecord (TxId _txid, qint64 _time, Type _type, const std::string &_address, const Amount _debit, const Amount _credit)
 
QString getTxID () const
 Return the unique identifier for this transaction (part) More...
 
int getOutputIndex () const
 Return the output index of the subtransaction
More...
 
void updateStatus (const interfaces::WalletTxStatus &wtx, const BlockHash &block_hash, int numBlocks, int64_t block_time)
 Update status from core wallet tx. More...
 
bool statusUpdateNeeded (const BlockHash &block_hash) const
 Return whether a status update is needed. More...
 

Static Public Member Functions

static bool showTransaction ()
 Decompose CWallet transaction to model transaction records. More...
 
static QList< TransactionRecorddecomposeTransaction (const interfaces::WalletTx &wtx)
 Decompose CWallet transaction to model transaction records. More...
 

Public Attributes

int idx
 Subtransaction index, for sort key. More...
 
TransactionStatus status
 Status: can change with block chain update. More...
 
bool involvesWatchAddress
 Whether the transaction was sent/received with a watch-only address. More...
 
Immutable transaction attributes
TxId txid
 
qint64 time
 
Type type
 
std::string address
 
Amount debit
 
Amount credit
 

Static Public Attributes

static const int RecommendedNumConfirmations = 6
 Number of confirmation recommended for accepting a transaction. More...
 

Detailed Description

UI model for a transaction.

A core transaction can be represented by multiple UI transactions if it has multiple outputs.

Definition at line 87 of file transactionrecord.h.

Member Enumeration Documentation

◆ Type

Enumerator
Other 
Generated 
SendToAddress 
SendToOther 
RecvWithAddress 
RecvFromOther 
SendToSelf 

Definition at line 89 of file transactionrecord.h.

Constructor & Destructor Documentation

◆ TransactionRecord() [1/3]

TransactionRecord::TransactionRecord ( )
inline

Definition at line 102 of file transactionrecord.h.

Here is the caller graph for this function:

◆ TransactionRecord() [2/3]

TransactionRecord::TransactionRecord ( TxId  _txid,
qint64  _time 
)
inline

Definition at line 106 of file transactionrecord.h.

◆ TransactionRecord() [3/3]

TransactionRecord::TransactionRecord ( TxId  _txid,
qint64  _time,
Type  _type,
const std::string &  _address,
const Amount  _debit,
const Amount  _credit 
)
inline

Definition at line 110 of file transactionrecord.h.

Member Function Documentation

◆ decomposeTransaction()

QList< TransactionRecord > TransactionRecord::decomposeTransaction ( const interfaces::WalletTx wtx)
static

Decompose CWallet transaction to model transaction records.

Definition at line 32 of file transactionrecord.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getOutputIndex()

int TransactionRecord::getOutputIndex ( ) const

Return the output index of the subtransaction

Definition at line 214 of file transactionrecord.cpp.

Here is the caller graph for this function:

◆ getTxID()

QString TransactionRecord::getTxID ( ) const

Return the unique identifier for this transaction (part)

Definition at line 210 of file transactionrecord.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ showTransaction()

bool TransactionRecord::showTransaction ( )
static

Decompose CWallet transaction to model transaction records.

Return positive answer if transaction should be shown in list.

Definition at line 22 of file transactionrecord.cpp.

Here is the caller graph for this function:

◆ statusUpdateNeeded()

bool TransactionRecord::statusUpdateNeeded ( const BlockHash block_hash) const

Return whether a status update is needed.

Definition at line 205 of file transactionrecord.cpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ updateStatus()

void TransactionRecord::updateStatus ( const interfaces::WalletTxStatus wtx,
const BlockHash block_hash,
int  numBlocks,
int64_t  block_time 
)

Update status from core wallet tx.

Definition at line 164 of file transactionrecord.cpp.

Here is the caller graph for this function:

Member Data Documentation

◆ address

std::string TransactionRecord::address

Definition at line 127 of file transactionrecord.h.

◆ credit

Amount TransactionRecord::credit

Definition at line 129 of file transactionrecord.h.

◆ debit

Amount TransactionRecord::debit

Definition at line 128 of file transactionrecord.h.

◆ idx

int TransactionRecord::idx

Subtransaction index, for sort key.

Definition at line 133 of file transactionrecord.h.

◆ involvesWatchAddress

bool TransactionRecord::involvesWatchAddress

Whether the transaction was sent/received with a watch-only address.

Definition at line 139 of file transactionrecord.h.

◆ RecommendedNumConfirmations

const int TransactionRecord::RecommendedNumConfirmations = 6
static

Number of confirmation recommended for accepting a transaction.

Definition at line 100 of file transactionrecord.h.

◆ status

TransactionStatus TransactionRecord::status

Status: can change with block chain update.

Definition at line 136 of file transactionrecord.h.

◆ time

qint64 TransactionRecord::time

Definition at line 125 of file transactionrecord.h.

◆ txid

TxId TransactionRecord::txid

Definition at line 124 of file transactionrecord.h.

◆ type

Type TransactionRecord::type

Definition at line 126 of file transactionrecord.h.


The documentation for this class was generated from the following files: