]> git.cworth.org Git - apitrace/blob - gui/mainwindow.h
Let retrace dump state.
[apitrace] / gui / mainwindow.h
1 #ifndef MAINWINDOW_H
2 #define MAINWINDOW_H
3
4 #include "ui_mainwindow.h"
5
6 #include <QMainWindow>
7 #include <QProcess>
8
9 class ApiTrace;
10 class ApiTraceFrame;
11 class ApiTraceModel;
12 class ApiTraceFilter;
13 class QLineEdit;
14 class QModelIndex;
15 class QProcess;
16 class QProgressBar;
17
18 class MainWindow : public QMainWindow
19 {
20     Q_OBJECT
21 public:
22     MainWindow();
23
24 public slots:
25     void loadTrace(const QString &fileName);
26
27 private slots:
28     void callItemSelected(const QModelIndex &index);
29     void openTrace();
30     void filterTrace();
31     void replayStart();
32     void replayStop();
33     void replayFinished();
34     void replayError(QProcess::ProcessError err);
35     void startedLoadingTrace();
36     void finishedLoadingTrace();
37     void lookupState();
38
39 private:
40     void newTraceFile(const QString &fileName);
41     void replayTrace(bool dumpState);
42
43 private:
44     Ui_MainWindow m_ui;
45     ApiTrace *m_trace;
46     ApiTraceModel *m_model;
47     ApiTraceFilter *m_proxyModel;
48     QLineEdit *m_filterEdit;
49
50     QProcess *m_replayProcess;
51
52     QProgressBar *m_progressBar;
53
54     QString m_traceFileName;
55
56     ApiTraceFrame *m_currentFrame;
57     bool m_findingState;
58 };
59
60
61 #endif