Bitcoin ABC 0.30.5
P2P Digital Currency
transactionfilterproxy.h
Go to the documentation of this file.
1// Copyright (c) 2011-2014 The Bitcoin Core developers
2// Distributed under the MIT software license, see the accompanying
3// file COPYING or http://www.opensource.org/licenses/mit-license.php.
4
5#ifndef BITCOIN_QT_TRANSACTIONFILTERPROXY_H
6#define BITCOIN_QT_TRANSACTIONFILTERPROXY_H
7
8#include <consensus/amount.h>
9
10#include <QDateTime>
11#include <QSortFilterProxyModel>
12
16class TransactionFilterProxy : public QSortFilterProxyModel {
17 Q_OBJECT
18
19public:
20 explicit TransactionFilterProxy(QObject *parent = nullptr);
21
25 static const QDateTime MIN_DATE;
29 static const QDateTime MAX_DATE;
33 static const quint32 ALL_TYPES = 0xFFFFFFFF;
34
35 static quint32 TYPE(int type) { return 1 << type; }
36
41 };
42
43 void setDateRange(const QDateTime &from, const QDateTime &to);
44 void setSearchString(const QString &);
48 void setTypeFilter(quint32 modes);
49 void setMinAmount(const Amount minimum);
51
55 void setLimit(int limit);
56
61
62 int rowCount(const QModelIndex &parent = QModelIndex()) const override;
63
64protected:
65 bool filterAcceptsRow(int source_row,
66 const QModelIndex &source_parent) const override;
67
68private:
69 QDateTime dateFrom;
70 QDateTime dateTo;
72 quint32 typeFilter;
77};
78
79#endif // BITCOIN_QT_TRANSACTIONFILTERPROXY_H
Filter the transaction list according to pre-specified rules.
void setLimit(int limit)
Set maximum number of rows returned, -1 if unlimited.
static const QDateTime MAX_DATE
Last date that can be represented (far in the future).
void setWatchOnlyFilter(WatchOnlyFilter filter)
int rowCount(const QModelIndex &parent=QModelIndex()) const override
bool filterAcceptsRow(int source_row, const QModelIndex &source_parent) const override
static const quint32 ALL_TYPES
Type filter bit field (all types).
static quint32 TYPE(int type)
static const QDateTime MIN_DATE
Earliest date that can be represented (far in the past).
void setShowInactive(bool showInactive)
Set whether to show conflicted transactions.
void setSearchString(const QString &)
void setMinAmount(const Amount minimum)
void setDateRange(const QDateTime &from, const QDateTime &to)
void setTypeFilter(quint32 modes)
TransactionFilterProxy(QObject *parent=nullptr)
Definition: amount.h:19