]> git.cworth.org Git - apitrace/blobdiff - gui/apitracemodel.cpp
Accept zero valued bitmasks.
[apitrace] / gui / apitracemodel.cpp
index 39459ce1c7d804aff44d0a64a2bef7903ba8a405..d3f3e6a7545aedbcef8d6269de04fe05b358ac14 100644 (file)
@@ -200,6 +200,8 @@ void ApiTraceModel::setApiTrace(ApiTrace *trace)
     if (m_trace)
         disconnect(m_trace);
     m_trace = trace;
+    connect(m_trace, SIGNAL(invalidated()),
+            this, SLOT(invalidateFrames()));
     connect(m_trace, SIGNAL(framesInvalidated()),
             this, SLOT(invalidateFrames()));
     connect(m_trace, SIGNAL(framesAdded(int, int)),
@@ -253,8 +255,12 @@ void ApiTraceModel::stateSetOnEvent(ApiTraceEvent *event)
 
 QModelIndex ApiTraceModel::callIndex(int callNum) const
 {
-    ApiTraceCall *call = m_trace->callAt(callNum);
+    ApiTraceCall *call = m_trace->callWithIndex(callNum);
+    return indexForCall(call);
+}
 
+QModelIndex ApiTraceModel::indexForCall(ApiTraceCall *call) const
+{
     if (!call) {
         return QModelIndex();
     }
@@ -264,7 +270,7 @@ QModelIndex ApiTraceModel::callIndex(int callNum) const
 
     int row = frame->calls.indexOf(call);
     if (row < 0) {
-        qDebug() << "Couldn't find call num "<<callNum<<" inside parent!";
+        qDebug() << "Couldn't find call num "<<call->index<<" inside parent!";
         return QModelIndex();
     }
     return createIndex(row, 0, call);