class CWallet;
class TransactionTablePriv;
class TransactionRecord;
+class WalletModel;
class TransactionTableModel : public QAbstractTableModel
{
Q_OBJECT
public:
- explicit TransactionTableModel(CWallet* wallet, QObject *parent = 0);
+ explicit TransactionTableModel(CWallet* wallet, WalletModel *parent = 0);
~TransactionTableModel();
enum {
} ColumnIndex;
// Roles to get specific information from a transaction row
+ // These are independent of column
enum {
// Type of transaction
TypeRole = Qt::UserRole,
AddressRole,
// Label of address related to transaction
LabelRole,
- // Absolute net amount of transaction
- AbsoluteAmountRole
+ // Net amount of transaction
+ AmountRole,
+ // Unique identifier
+ TxIDRole,
+ // Is transaction confirmed?
+ ConfirmedRole,
+ // Formatted amount, without brackets when unconfirmed
+ FormattedAmountRole
} RoleIndex;
int rowCount(const QModelIndex &parent) const;
int columnCount(const QModelIndex &parent) const;
QVariant data(const QModelIndex &index, int role) const;
QVariant headerData(int section, Qt::Orientation orientation, int role) const;
- Qt::ItemFlags flags(const QModelIndex &index) const;
QModelIndex index(int row, int column, const QModelIndex & parent = QModelIndex()) const;
private:
CWallet* wallet;
+ WalletModel *walletModel;
QStringList columns;
TransactionTablePriv *priv;
- QString labelForAddress(const std::string &address) const;
- QString lookupAddress(const std::string &address) const;
- QVariant formatTxStatus(const TransactionRecord *wtx) const;
- QVariant formatTxDate(const TransactionRecord *wtx) const;
- QVariant formatTxType(const TransactionRecord *wtx) const;
- QVariant formatTxToAddress(const TransactionRecord *wtx) const;
- QVariant formatTxAmount(const TransactionRecord *wtx) const;
- QVariant formatTxDecoration(const TransactionRecord *wtx) const;
+ QString lookupAddress(const std::string &address, bool tooltip) const;
+ QVariant addressColor(const TransactionRecord *wtx) const;
+ QString formatTxStatus(const TransactionRecord *wtx) const;
+ QString formatTxDate(const TransactionRecord *wtx) const;
+ QString formatTxType(const TransactionRecord *wtx) const;
+ QString formatTxToAddress(const TransactionRecord *wtx, bool tooltip) const;
+ QString formatTxAmount(const TransactionRecord *wtx, bool showUnconfirmed=true) const;
+ QString formatTooltip(const TransactionRecord *rec) const;
+ QVariant txStatusDecoration(const TransactionRecord *wtx) const;
+ QVariant txAddressDecoration(const TransactionRecord *wtx) const;
private slots:
void update();