X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=gui%2Fapitracefilter.cpp;h=3dec70a4cf8a2be427dcb8ee7689990bfe436da5;hb=607717cc7398889ac409b233fc6abbb5ebde3672;hp=8a40faf5d563cb8bc7475adc259cbde686ac597b;hpb=6bf271bad44669c6f4a859b87022aedc4a77be5c;p=apitrace diff --git a/gui/apitracefilter.cpp b/gui/apitracefilter.cpp index 8a40faf..3dec70a 100644 --- a/gui/apitracefilter.cpp +++ b/gui/apitracefilter.cpp @@ -19,7 +19,6 @@ bool ApiTraceFilter::filterAcceptsRow(int sourceRow, QVariant varientData = sourceModel()->data(index0, ApiTraceModel::EventRole); ApiTraceEvent *event = varientData.value(); - Q_ASSERT(event); if (!event) return false; @@ -29,7 +28,7 @@ bool ApiTraceFilter::filterAcceptsRow(int sourceRow, } ApiTraceCall *call = static_cast(event); - QString function = call->name; + QString function = call->name(); if (!m_regexp.isEmpty() && m_regexp.isValid()) { return function.contains(m_regexp); @@ -59,12 +58,14 @@ bool ApiTraceFilter::filterAcceptsRow(int sourceRow, return false; if (function.contains(QLatin1String("glXQueryExtensionsString"))) return false; - QString fullText = call->filterText(); - if (function.contains(QLatin1String("glGetString")) && - fullText.contains(QLatin1String("GL_EXTENSIONS"))) + if (function.contains(QLatin1String("glGetString"))) return false; } + if (m_filters & CustomFilter) { + return !function.contains(m_customRegexp); + } + return true; } @@ -91,12 +92,6 @@ void ApiTraceFilter::setFilterOptions(ApiTraceFilter::FilterOptions opts) } } -QModelIndex ApiTraceFilter::callIndex(int callIdx) const -{ - ApiTraceModel *model = static_cast(sourceModel()); - QModelIndex index = model->callIndex(callIdx); - return mapFromSource(index); -} QModelIndex ApiTraceFilter::indexForCall(ApiTraceCall *call) const { @@ -110,4 +105,14 @@ QRegExp ApiTraceFilter::filterRegexp() const return m_regexp; } +void ApiTraceFilter::setCustomFilterRegexp(const QString &str) +{ + m_customRegexp = QRegExp(str); +} + +QString ApiTraceFilter::customFilterRegexp() const +{ + return m_customRegexp.pattern(); +} + #include "apitracefilter.moc"