4 #include "ui_mainwindow.h"
18 class ArgumentsEditor;
22 class QTreeWidgetItem;
27 class ShadersSourceWidget;
29 class VertexDataInterpreter;
31 class MainWindow : public QMainWindow
39 void loadTrace(const QString &fileName);
42 void callItemSelected(const QModelIndex &index);
47 void replayFinished(const QString &output);
48 void replayStateFound(ApiTraceState *state);
49 void replayError(const QString &msg);
50 void startedLoadingTrace();
51 void loadProgess(int percent);
52 void finishedLoadingTrace();
55 void openHelp(const QUrl &url);
56 void showSurfacesMenu(const QPoint &pos);
57 void showSelectedSurface();
58 void saveSelectedSurface();
60 void slotJumpTo(int callNum);
61 void createdTrace(const QString &path);
62 void traceError(const QString &msg);
64 void slotSearchNext(const QString &str, Qt::CaseSensitivity sensitivity);
65 void slotSearchPrev(const QString &str, Qt::CaseSensitivity sensitivity);
66 void fillState(bool nonDefaults);
67 void customContextMenuRequested(QPoint pos);
69 void slotStartedSaving();
71 void slotGoFrameStart();
72 void slotGoFrameEnd();
73 void slotTraceChanged(ApiTraceCall *call);
74 void slotRetraceErrors(const QList<ApiTraceError> &errors);
75 void slotErrorSelected(QTreeWidgetItem *current);
76 void slotSearchResult(const ApiTrace::SearchRequest &request,
77 ApiTrace::SearchResult result,
79 void slotFoundFrameStart(ApiTraceFrame *frame);
80 void slotFoundFrameEnd(ApiTraceFrame *frame);
81 void slotJumpToResult(ApiTraceCall *call);
85 void initConnections();
86 void newTraceFile(const QString &fileName);
87 void replayTrace(bool dumpState);
88 void fillStateForFrame();
90 /* there's a difference between selected frame/call and
91 * current call/frame. the former implies actual selection
92 * the latter might be just a highlight, e.g. during searching
94 ApiTraceFrame *selectedFrame() const;
95 ApiTraceCall *selectedCall() const;
96 ApiTraceFrame *currentFrame() const;
97 ApiTraceCall *currentCall() const;
102 ShadersSourceWidget *m_sourcesWidget;
105 ApiTraceModel *m_model;
106 ApiTraceFilter *m_proxyModel;
108 QProgressBar *m_progressBar;
110 ApiTraceEvent *m_selectedEvent;
112 ApiTraceEvent *m_stateEvent;
114 Retracer *m_retracer;
116 VertexDataInterpreter *m_vdataInterpreter;
118 JumpWidget *m_jumpWidget;
119 SearchWidget *m_searchWidget;
121 TraceProcess *m_traceProcess;
123 ArgumentsEditor *m_argsEditor;
125 ApiTraceEvent *m_nonDefaultsLookupEvent;