Zack Rusin | 601e837 | 2011-03-24 22:23:21 -0400 | [diff] [blame] | 1 | #ifndef MAINWINDOW_H |
2 | #define MAINWINDOW_H | ||||
3 | |||||
4 | #include "ui_mainwindow.h" | ||||
5 | |||||
Zack Rusin | 96130ac | 2011-03-27 01:48:36 -0400 | [diff] [blame] | 6 | #include <QMainWindow> |
Zack Rusin | 27cb2c4 | 2011-03-27 23:53:36 -0400 | [diff] [blame] | 7 | #include <QProcess> |
Zack Rusin | 96130ac | 2011-03-27 01:48:36 -0400 | [diff] [blame] | 8 | |
Zack Rusin | f6667d1 | 2011-03-30 11:03:37 -0400 | [diff] [blame] | 9 | class ApiTrace; |
Zack Rusin | 2caa06d | 2011-03-30 18:30:20 -0400 | [diff] [blame] | 10 | class ApiTraceFrame; |
Zack Rusin | 601e837 | 2011-03-24 22:23:21 -0400 | [diff] [blame] | 11 | class ApiTraceModel; |
Zack Rusin | 9106537 | 2011-03-26 01:54:10 -0400 | [diff] [blame] | 12 | class ApiTraceFilter; |
Zack Rusin | ea29545 | 2011-03-27 02:22:13 -0400 | [diff] [blame] | 13 | class QLineEdit; |
Zack Rusin | 96130ac | 2011-03-27 01:48:36 -0400 | [diff] [blame] | 14 | class QModelIndex; |
Zack Rusin | 27cb2c4 | 2011-03-27 23:53:36 -0400 | [diff] [blame] | 15 | class QProcess; |
Zack Rusin | de4ea41 | 2011-03-30 11:30:08 -0400 | [diff] [blame] | 16 | class QProgressBar; |
Zack Rusin | 601e837 | 2011-03-24 22:23:21 -0400 | [diff] [blame] | 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: | ||||
Zack Rusin | 96130ac | 2011-03-27 01:48:36 -0400 | [diff] [blame] | 28 | void callItemSelected(const QModelIndex &index); |
Zack Rusin | 601e837 | 2011-03-24 22:23:21 -0400 | [diff] [blame] | 29 | void openTrace(); |
Zack Rusin | ea29545 | 2011-03-27 02:22:13 -0400 | [diff] [blame] | 30 | void filterTrace(); |
Zack Rusin | 27cb2c4 | 2011-03-27 23:53:36 -0400 | [diff] [blame] | 31 | void replayStart(); |
32 | void replayStop(); | ||||
33 | void replayFinished(); | ||||
34 | void replayError(QProcess::ProcessError err); | ||||
Zack Rusin | de4ea41 | 2011-03-30 11:30:08 -0400 | [diff] [blame] | 35 | void startedLoadingTrace(); |
36 | void finishedLoadingTrace(); | ||||
Zack Rusin | 2caa06d | 2011-03-30 18:30:20 -0400 | [diff] [blame] | 37 | void lookupState(); |
Zack Rusin | 27cb2c4 | 2011-03-27 23:53:36 -0400 | [diff] [blame] | 38 | |
39 | private: | ||||
40 | void newTraceFile(const QString &fileName); | ||||
Zack Rusin | 2caa06d | 2011-03-30 18:30:20 -0400 | [diff] [blame] | 41 | void replayTrace(bool dumpState); |
Zack Rusin | 601e837 | 2011-03-24 22:23:21 -0400 | [diff] [blame] | 42 | |
43 | private: | ||||
44 | Ui_MainWindow m_ui; | ||||
Zack Rusin | f6667d1 | 2011-03-30 11:03:37 -0400 | [diff] [blame] | 45 | ApiTrace *m_trace; |
Zack Rusin | 601e837 | 2011-03-24 22:23:21 -0400 | [diff] [blame] | 46 | ApiTraceModel *m_model; |
Zack Rusin | 9106537 | 2011-03-26 01:54:10 -0400 | [diff] [blame] | 47 | ApiTraceFilter *m_proxyModel; |
Zack Rusin | ea29545 | 2011-03-27 02:22:13 -0400 | [diff] [blame] | 48 | QLineEdit *m_filterEdit; |
Zack Rusin | 27cb2c4 | 2011-03-27 23:53:36 -0400 | [diff] [blame] | 49 | |
50 | QProcess *m_replayProcess; | ||||
51 | |||||
Zack Rusin | de4ea41 | 2011-03-30 11:30:08 -0400 | [diff] [blame] | 52 | QProgressBar *m_progressBar; |
53 | |||||
Zack Rusin | 27cb2c4 | 2011-03-27 23:53:36 -0400 | [diff] [blame] | 54 | QString m_traceFileName; |
Zack Rusin | 2caa06d | 2011-03-30 18:30:20 -0400 | [diff] [blame] | 55 | |
56 | ApiTraceFrame *m_currentFrame; | ||||
57 | bool m_findingState; | ||||
Zack Rusin | 601e837 | 2011-03-24 22:23:21 -0400 | [diff] [blame] | 58 | }; |
59 | |||||
60 | |||||
61 | #endif |