diff options
Diffstat (limited to 'src/plugins/qmltooling/qmldbg_inspector/qdeclarativeinspectorplugin.cpp')
-rw-r--r-- | src/plugins/qmltooling/qmldbg_inspector/qdeclarativeinspectorplugin.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/plugins/qmltooling/qmldbg_inspector/qdeclarativeinspectorplugin.cpp b/src/plugins/qmltooling/qmldbg_inspector/qdeclarativeinspectorplugin.cpp index a266eb90b5..36ee1e835e 100644 --- a/src/plugins/qmltooling/qmldbg_inspector/qdeclarativeinspectorplugin.cpp +++ b/src/plugins/qmltooling/qmldbg_inspector/qdeclarativeinspectorplugin.cpp @@ -42,9 +42,11 @@ #include "qdeclarativeinspectorplugin.h" #include "qdeclarativeviewinspector_p.h" +#include "sgviewinspector.h" #include <QtCore/qplugin.h> #include <QtDeclarative/private/qdeclarativeinspectorservice_p.h> +#include <QtDeclarative/QSGView> QT_BEGIN_NAMESPACE @@ -61,13 +63,16 @@ QDeclarativeInspectorPlugin::~QDeclarativeInspectorPlugin() void QDeclarativeInspectorPlugin::activate() { QDeclarativeInspectorService *service = QDeclarativeInspectorService::instance(); - QList<QDeclarativeView*> views = service->views(); + QList<QObject*> views = service->views(); if (views.isEmpty()) return; // TODO: Support multiple views - QDeclarativeView *view = service->views().at(0); - m_inspector = new QDeclarativeViewInspector(view, view); + QObject *firstView = views.first(); + if (QDeclarativeView *declarativeView = qobject_cast<QDeclarativeView*>(firstView)) + m_inspector = new QDeclarativeViewInspector(declarativeView, declarativeView); + else if (QSGView *sgView = qobject_cast<QSGView*>(firstView)) + m_inspector = new SGViewInspector(sgView, sgView); } void QDeclarativeInspectorPlugin::deactivate() @@ -78,4 +83,3 @@ void QDeclarativeInspectorPlugin::deactivate() Q_EXPORT_PLUGIN2(declarativeinspector, QDeclarativeInspectorPlugin) QT_END_NAMESPACE - |