]> git.cworth.org Git - apitrace/blobdiff - gui/mainwindow.cpp
d3dretrace: Dump DXGI_FORMAT_R32G32B32A32_FLOAT images in floating point.
[apitrace] / gui / mainwindow.cpp
index 2891863a4a0f87bbd147febdf916116870ec7b63..327833039f47d5119bde157a9b7ce4e97dbf9e56 100644 (file)
@@ -196,6 +196,9 @@ void MainWindow::replayStart()
     dlgUi.errorCheckCB->setChecked(
         !m_retracer->isBenchmarking());
 
+    dlgUi.singlethreadCB->setChecked(
+        m_retracer->isSinglethread());
+
     if (dlg.exec() == QDialog::Accepted) {
         m_retracer->setDoubleBuffered(
             dlgUi.doubleBufferingCB->isChecked());
@@ -203,6 +206,9 @@ void MainWindow::replayStart()
         m_retracer->setBenchmarking(
             !dlgUi.errorCheckCB->isChecked());
 
+        m_retracer->setSinglethread(
+            dlgUi.singlethreadCB->isChecked());
+
         m_retracer->setProfiling(false, false, false);
 
         replayTrace(false, false);
@@ -364,8 +370,11 @@ void MainWindow::replayTrace(bool dumpState, bool dumpThumbnails)
 
 void MainWindow::trimEvent()
 {
+    int trimIndex = 0;
+
+    Q_ASSERT(m_trimEvent->type() == ApiTraceEvent::Call ||
+             m_trimEvent->type() == ApiTraceEvent::Frame);
 
-    int trimIndex;
     if (m_trimEvent->type() == ApiTraceEvent::Call) {
         ApiTraceCall *call = static_cast<ApiTraceCall*>(m_trimEvent);
         trimIndex = call->index();
@@ -566,7 +575,7 @@ static void addSurfaceItem(const ApiSurface &surface,
     l->setWordWrap(true);
     tree->setItemWidget(item, 1, l);
 
-    item->setData(0, Qt::UserRole, surface.image());
+    item->setData(0, Qt::UserRole, surface.base64Data());
 }
 
 void MainWindow::fillStateForFrame()
@@ -713,8 +722,8 @@ void MainWindow::showSelectedSurface()
     viewer->setAttribute(Qt::WA_DeleteOnClose, true);
 
     QVariant var = item->data(0, Qt::UserRole);
-    QImage img = var.value<QImage>();
-    viewer->setImage(img);
+    QByteArray base64Data = var.value<QByteArray>();
+    viewer->setBase64Data(base64Data);
 
     viewer->show();
     viewer->raise();