QVariant varientData = sourceModel()->data(index0, ApiTraceModel::EventRole);
ApiTraceEvent *event = varientData.value<ApiTraceEvent*>();
- Q_ASSERT(event);
if (!event)
return false;
}
ApiTraceCall *call = static_cast<ApiTraceCall*>(event);
- QString function = call->name;
+ QString function = call->name();
if (!m_regexp.isEmpty() && m_regexp.isValid()) {
return function.contains(m_regexp);
if (m_filters & ExtraStateFilter) {
if (function.contains(QLatin1String("glXGetCurrentDisplay")))
return false;
+ if (function.contains(QLatin1String("wglDescribePixelFormat")))
+ return false;
}
if (m_filters & ExtensionsFilter) {
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;
}
}
}
-QModelIndex ApiTraceFilter::callIndex(int callIdx) const
-{
- ApiTraceModel *model = static_cast<ApiTraceModel *>(sourceModel());
- QModelIndex index = model->callIndex(callIdx);
- return mapFromSource(index);
-}
QModelIndex ApiTraceFilter::indexForCall(ApiTraceCall *call) 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"