96cdf9779c82589ca84b8758a68a7a584d0ee16b
[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 class QModelIndex;
14 QT_END_NAMESPACE
15
16 class TransactionView : public QWidget
17 {
18     Q_OBJECT
19 public:
20     explicit TransactionView(QWidget *parent = 0);
21
22     void setModel(TransactionTableModel *model);
23
24     enum DateEnum
25     {
26         All,
27         Today,
28         ThisWeek,
29         ThisMonth,
30         ThisYear,
31         Range
32     };
33
34 private:
35     TransactionTableModel *model;
36     TransactionFilterProxy *transactionProxyModel;
37     QTableView *transactionView;
38
39     QComboBox *dateWidget;
40     QComboBox *typeWidget;
41     QLineEdit *addressWidget;
42     QLineEdit *amountWidget;
43
44 signals:
45     void doubleClicked(const QModelIndex&);
46
47 public slots:
48     void chooseDate(int idx);
49     void chooseType(int idx);
50     void changedPrefix(const QString &prefix);
51     void changedAmount(const QString &amount);
52
53 };
54
55 #endif // TRANSACTIONVIEW_H