From f892f806124ea254449ee7bba75f5629d60559a8 Mon Sep 17 00:00:00 2001 From: Kent Hansen Date: Wed, 23 Nov 2011 12:09:15 +0100 Subject: qml debugger: Create abstraction for State management State and PropertyChanges aren't part of the core qml types. The (general-purpose) qml debugger shouldn't have to know those types; they are only relevant when QtQuick (2.0) has been imported. Introduce a delegate interface that performs State processing. Implement a delegate for QtQuick 2, and install it when the QtQuick 2 module is imported. Change-Id: I8af1157346ca9365eb0f7b99ccb71744d17fcebc Reviewed-by: Aurindam Jana --- src/declarative/debugger/qdeclarativeenginedebugservice_p.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) (limited to 'src/declarative/debugger/qdeclarativeenginedebugservice_p.h') diff --git a/src/declarative/debugger/qdeclarativeenginedebugservice_p.h b/src/declarative/debugger/qdeclarativeenginedebugservice_p.h index d3e5c79297..7c74c63801 100644 --- a/src/declarative/debugger/qdeclarativeenginedebugservice_p.h +++ b/src/declarative/debugger/qdeclarativeenginedebugservice_p.h @@ -57,7 +57,6 @@ #include #include -#include QT_BEGIN_NAMESPACE @@ -65,13 +64,14 @@ class QDeclarativeEngine; class QDeclarativeContext; class QDeclarativeWatcher; class QDataStream; -class QDeclarativeState; +class QDeclarativeDebugStatesDelegate; class QDeclarativeEngineDebugService : public QDeclarativeDebugService { Q_OBJECT public: QDeclarativeEngineDebugService(QObject * = 0); + ~QDeclarativeEngineDebugService(); struct QDeclarativeObjectData { QUrl url; @@ -98,6 +98,8 @@ public: void remEngine(QDeclarativeEngine *); void objectCreated(QDeclarativeEngine *, QObject *); + void setStatesDelegate(QDeclarativeDebugStatesDelegate *); + static QDeclarativeEngineDebugService *instance(); protected: @@ -112,7 +114,6 @@ private: void buildObjectList(QDataStream &, QDeclarativeContext *); void buildObjectDump(QDataStream &, QObject *, bool, bool); void buildStatesList(QDeclarativeContext *, bool); - void buildStatesList(QObject *obj); QDeclarativeObjectData objectData(QObject *); QDeclarativeObjectProperty propertyData(QObject *, int); QVariant valueContents(const QVariant &defaultValue) const; @@ -122,7 +123,7 @@ private: QList m_engines; QDeclarativeWatcher *m_watch; - QList > m_allStates; + QDeclarativeDebugStatesDelegate *m_statesDelegate; }; Q_DECLARATIVE_PRIVATE_EXPORT QDataStream &operator<<(QDataStream &, const QDeclarativeEngineDebugService::QDeclarativeObjectData &); Q_DECLARATIVE_PRIVATE_EXPORT QDataStream &operator>>(QDataStream &, QDeclarativeEngineDebugService::QDeclarativeObjectData &); -- cgit v1.2.3