qtdiag/Windows: Output GPU information similar to dxdiag.
authorFriedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Mon, 12 Jan 2015 15:12:42 +0000 (16:12 +0100)
committerFriedemann Kleint <Friedemann.Kleint@theqtcompany.com>
Tue, 13 Jan 2015 12:39:12 +0000 (13:39 +0100)
Task-number: QTBUG-43263
Change-Id: I348a97a843bcfc2339a06f7408dea72e91d9e0d0
Reviewed-by: Laszlo Agocs <laszlo.agocs@theqtcompany.com>
src/qtdiag/qtdiag.cpp

index 15ae065..17480ee 100644 (file)
@@ -62,6 +62,7 @@
 #include <private/qguiapplication_p.h>
 #include <qpa/qplatformintegration.h>
 #include <qpa/qplatformtheme.h>
+#include <qpa/qplatformnativeinterface.h>
 
 #include <algorithm>
 
@@ -376,6 +377,14 @@ QString qtDiag(unsigned flags)
 #else
     Q_UNUSED(flags)
 #endif // !QT_NO_OPENGL
+
+    // On Windows, this will provide addition GPU info similar to the output of dxdiag.
+    const QVariant gpuInfoV = QGuiApplication::platformNativeInterface()->property("gpu");
+    if (gpuInfoV.type() == QVariant::Map) {
+        const QString description = gpuInfoV.toMap().value(QStringLiteral("printable")).toString();
+        if (!description.isEmpty())
+            str << "\nGPU:\n" << description;
+    }
     return result;
 }