Implement filter row instead of tabs, allows for more expressive filters
[novacoin.git] / src / qt / transactionview.h
1 #ifndef TRANSACTIONVIEW_H
2 #define TRANSACTIONVIEW_H
3
4 #include <QWidget>
5
6 class TransactionTableModel;
7 class TransactionFilterProxy;
8
9 QT_BEGIN_NAMESPACE
10 class QTableView;
11 class QComboBox;
12 class QLineEdit;
13 QT_END_NAMESPACE
14
15 class TransactionView : public QWidget
16 {
17     Q_OBJECT
18 public:
19     explicit TransactionView(QWidget *parent = 0);
20
21     void setModel(TransactionTableModel *model);
22
23     enum DateEnum
24     {
25         All,
26         Today,
27         ThisWeek,
28         ThisMonth,
29         ThisYear,
30         Range
31     };
32
33 private:
34     TransactionTableModel *model;
35     TransactionFilterProxy *transactionProxyModel;
36     QTableView *transactionView;
37
38     QComboBox *dateWidget;
39     QComboBox *typeWidget;
40     QLineEdit *addressWidget;
41     QLineEdit *amountWidget;
42
43 signals:
44
45 public slots:
46     void chooseDate(int idx);
47     void chooseType(int idx);
48     void changedPrefix(const QString &prefix);
49     void changedAmount(const QString &amount);
50
51 };
52
53 #endif // TRANSACTIONVIEW_H