1 #ifndef APITRACEMODEL_H
2 #define APITRACEMODEL_H
5 #include <QAbstractItemModel>
13 class ApiTraceModel : public QAbstractItemModel
18 EventRole = Qt::UserRole + 1
21 ApiTraceModel(QObject *parent = 0);
24 void setApiTrace(ApiTrace *trace);
25 const ApiTrace *apiTrace() const;
26 void stateSetOnEvent(ApiTraceEvent *event);
28 QModelIndex callIndex(int callNum) const;
31 /* QAbstractItemModel { */
32 QVariant data(const QModelIndex &index, int role) const;
33 Qt::ItemFlags flags(const QModelIndex &index) const;
34 QVariant headerData(int section, Qt::Orientation orientation,
35 int role = Qt::DisplayRole) const;
36 QModelIndex index(int row, int column,
37 const QModelIndex &parent = QModelIndex()) const;
38 bool hasChildren(const QModelIndex &parent) const;
39 QModelIndex parent(const QModelIndex &index) const;
40 int rowCount(const QModelIndex &parent = QModelIndex()) const;
41 int columnCount(const QModelIndex &parent = QModelIndex()) const;
43 bool insertRows(int position, int rows,
44 const QModelIndex &parent = QModelIndex());
45 bool removeRows(int position, int rows,
46 const QModelIndex &parent = QModelIndex());
47 /* } QAbstractItemModel; */
50 void invalidateFrames();
51 void appendFrames(int oldCount, int numAdded);
54 ApiTraceEvent *item(const QModelIndex &index) const;