X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=gui%2Fapitracefilter.h;h=35f627df431f8a45f0e2647f04ef2c95447cdef9;hb=940cdb8b143455fe2fc002ffd50f5e2ffcaf1260;hp=2bd85575cdf90b7b12f93a34fdf53bc6d952ea82;hpb=c52d18a3319956aea59dfa6648c56ddd1df9414f;p=apitrace diff --git a/gui/apitracefilter.h b/gui/apitracefilter.h index 2bd8557..35f627d 100644 --- a/gui/apitracefilter.h +++ b/gui/apitracefilter.h @@ -1,18 +1,22 @@ #ifndef APITRACEFILTER_H #define APITRACEFILTER_H +#include #include +class ApiTraceCall; + class ApiTraceFilter : public QSortFilterProxyModel { Q_OBJECT public: enum FilterOption { - NullFilter = 0, + NullFilter = 0, ExtensionsFilter = 1 << 0, ResolutionsFilter = 1 << 1, ErrorsQueryFilter = 1 << 2, ExtraStateFilter = 1 << 3, + CustomFilter = 1 << 4, }; Q_DECLARE_FLAGS(FilterOptions, FilterOption) public: @@ -21,15 +25,20 @@ public: FilterOptions filterOptions() const; void setFilterOptions(FilterOptions opts); - void setFilterString(const QString &text); + void setFilterRegexp(const QRegExp ®exp); + QRegExp filterRegexp() const; + + void setCustomFilterRegexp(const QString &str); + QString customFilterRegexp() const; - QModelIndex callIndex(int callNum) const; + QModelIndex indexForCall(ApiTraceCall *call) const; protected: bool filterAcceptsRow(int sourceRow, const QModelIndex &sourceParent) const; private: - QString m_text; + QRegExp m_regexp; FilterOptions m_filters; + QRegExp m_customRegexp; }; #endif