]> git.cworth.org Git - apitrace/blobdiff - gui/apitracemodel.h
common: Add more comments.
[apitrace] / gui / apitracemodel.h
index cf901591c9fc6053f88e336c23be1fff35b6aaf1..e7354aa6350191ad55aee5a8abe9d675079dfeeb 100644 (file)
@@ -4,11 +4,13 @@
 
 #include <QAbstractItemModel>
 #include <QModelIndex>
+#include <QSet>
 #include <QVariant>
 
 class ApiTrace;
 class ApiTraceCall;
 class ApiTraceEvent;
+class ApiTraceFrame;
 
 class ApiTraceModel : public QAbstractItemModel
 {
@@ -25,6 +27,8 @@ public:
     const ApiTrace *apiTrace() const;
     void stateSetOnEvent(ApiTraceEvent *event);
 
+    QModelIndex indexForCall(ApiTraceCall *call) const;
+
 public:
     /* QAbstractItemModel { */
     QVariant data(const QModelIndex &index, int role) const;
@@ -42,17 +46,26 @@ public:
                     const QModelIndex &parent = QModelIndex());
     bool removeRows(int position, int rows,
                     const QModelIndex &parent = QModelIndex());
+    virtual bool canFetchMore(const QModelIndex & parent) const;
+    virtual void fetchMore(const QModelIndex &parent);
     /* } QAbstractItemModel; */
 
 private slots:
     void invalidateFrames();
-    void appendFrames(int oldCount, int numAdded);
+    void beginAddingFrames(int oldCount, int numAdded);
+    void endAddingFrames();
+    void changed(ApiTraceEvent *event);
+    void callChanged(ApiTraceCall *call);
+    void frameChanged(ApiTraceFrame *frame);
+    void beginLoadingFrame(ApiTraceFrame *frame, int numAdded);
+    void endLoadingFrame(ApiTraceFrame *frame);
 
 private:
     ApiTraceEvent *item(const QModelIndex &index) const;
 
 private:
     ApiTrace *m_trace;
+    QSet<ApiTraceFrame*> m_loadingFrames;
 };
 
 #endif