1 #ifndef APITRACEFILTER_H
2 #define APITRACEFILTER_H
5 #include <QSortFilterProxyModel>
9 class ApiTraceFilter : public QSortFilterProxyModel
15 ExtensionsFilter = 1 << 0,
16 ResolutionsFilter = 1 << 1,
17 ErrorsQueryFilter = 1 << 2,
18 ExtraStateFilter = 1 << 3,
19 CustomFilter = 1 << 4,
21 Q_DECLARE_FLAGS(FilterOptions, FilterOption)
23 ApiTraceFilter(QObject *parent = 0);
25 FilterOptions filterOptions() const;
26 void setFilterOptions(FilterOptions opts);
28 void setFilterRegexp(const QRegExp ®exp);
29 QRegExp filterRegexp() const;
31 void setCustomFilterRegexp(const QString &str);
32 QString customFilterRegexp() const;
34 QModelIndex indexForCall(ApiTraceCall *call) const;
36 bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const;
40 FilterOptions m_filters;
41 QRegExp m_customRegexp;