Implement filter row instead of tabs, allows for more expressive filters
[novacoin.git] / src / qt / transactiontablemodel.h
index 72a645b..c26acbc 100644 (file)
@@ -18,14 +18,25 @@ public:
     enum {
         Status = 0,
         Date = 1,
-        Description = 2,
-        Debit = 3,
-        Credit = 4
+        Type = 2,
+        ToAddress = 3,
+        Amount = 4
     } ColumnIndex;
 
+    // Roles to get specific information from a transaction row
     enum {
+        // Type of transaction
         TypeRole = Qt::UserRole,
-        LongDescriptionRole = Qt::UserRole+1
+        // Date and time this transaction was created
+        DateRole,
+        // Long description (HTML format)
+        LongDescriptionRole,
+        // Address of transaction
+        AddressRole,
+        // Label of address related to transaction
+        LabelRole,
+        // Absolute net amount of transaction
+        AbsoluteAmountRole
     } RoleIndex;
 
     /* TypeRole values */
@@ -44,12 +55,13 @@ private:
     QStringList columns;
     TransactionTablePriv *priv;
 
-    std::string lookupAddress(const std::string &address) const;
+    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 formatTxDescription(const TransactionRecord *wtx) const;
-    QVariant formatTxDebit(const TransactionRecord *wtx) const;
-    QVariant formatTxCredit(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;
 
 private slots: