X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=gui%2Fmainwindow.cpp;h=d37162ba7e227c10df01cedc1fc5e0310586ae8a;hb=b491d2958e2a8331f0f144de89626c284ae96121;hp=6e3e8a3c064a9425a071737fb19a5cbd86de3a1c;hpb=e181b99a776865a5aca43a64cf6afbaa371583ab;p=apitrace diff --git a/gui/mainwindow.cpp b/gui/mainwindow.cpp index 6e3e8a3..d37162b 100644 --- a/gui/mainwindow.cpp +++ b/gui/mainwindow.cpp @@ -36,6 +36,8 @@ MainWindow::MainWindow() : QMainWindow(), + m_api(trace::API_GL), + m_initalCallNum(-1), m_selectedEvent(0), m_stateEvent(0), m_nonDefaultsLookupEvent(0) @@ -79,7 +81,7 @@ void MainWindow::openTrace() } } -void MainWindow::loadTrace(const QString &fileName) +void MainWindow::loadTrace(const QString &fileName, int callNum) { if (!QFile::exists(fileName)) { QMessageBox::warning(this, tr("File Missing"), @@ -87,6 +89,7 @@ void MainWindow::loadTrace(const QString &fileName) return; } + m_initalCallNum = callNum; newTraceFile(fileName); } @@ -254,6 +257,10 @@ void MainWindow::finishedLoadingTrace() QFileInfo info(m_trace->fileName()); statusBar()->showMessage( tr("Loaded %1").arg(info.fileName()), 3000); + if (m_initalCallNum >= 0) { + m_trace->findCallIndex(m_initalCallNum); + m_initalCallNum = -1; + } } void MainWindow::replayTrace(bool dumpState) @@ -263,6 +270,7 @@ void MainWindow::replayTrace(bool dumpState) } m_retracer->setFileName(m_trace->fileName()); + m_retracer->setAPI(m_api); m_retracer->setCaptureState(dumpState); if (m_retracer->captureState() && m_selectedEvent) { int index = 0; @@ -563,9 +571,12 @@ void MainWindow::fillStateForFrame() void MainWindow::showSettings() { SettingsDialog dialog; + dialog.setAPI(m_api); dialog.setFilterModel(m_proxyModel); dialog.exec(); + + m_api = dialog.getAPI(); } void MainWindow::openHelp(const QUrl &url)