From: Simjees Abraham Date: Fri, 25 May 2012 07:18:53 +0000 (+0200) Subject: Debugger: Modified response for "destroyObject" message. X-Git-Url: http://git.silmor.de/gitweb/?a=commitdiff_plain;h=2a3fc36b080e135e630b67a070ec540e94b331b7;p=konrad%2Fqtdeclarative.git Debugger: Modified response for "destroyObject" message. The response for "destroyObject" carries the debugId of the destroyed object. Change-Id: I9be56f8db42ff2e83544ebbd058a6a8d48b4c98f Reviewed-by: Aurindam Jana --- diff --git a/src/plugins/qmltooling/shared/abstractviewinspector.cpp b/src/plugins/qmltooling/shared/abstractviewinspector.cpp index c3eb24e..d4c41b5 100644 --- a/src/plugins/qmltooling/shared/abstractviewinspector.cpp +++ b/src/plugins/qmltooling/shared/abstractviewinspector.cpp @@ -60,14 +60,14 @@ // "showAppOnTop", "createObject", "destroyObject", "moveObject", // "clearCache"} // : select: -// reload: -// +// reload: > // setAnimationSpeed: // showAppOnTop: // createObject: // destroyObject: // moveObject: // clearCache: void +// Response for "destroyObject" carries the of the destroyed object. const char REQUEST[] = "request"; const char RESPONSE[] = "response"; @@ -274,13 +274,13 @@ void AbstractViewInspector::onQmlObjectDestroyed(QObject *object) if (!m_hashObjectsTobeDestroyed.contains(object)) return; - int removeId = m_hashObjectsTobeDestroyed.take(object); + QPair ids = m_hashObjectsTobeDestroyed.take(object); QQmlDebugService::removeInvalidObjectsFromHash(); QByteArray response; QQmlDebugStream rs(&response, QIODevice::WriteOnly); - rs << QByteArray(RESPONSE) << removeId << true; + rs << QByteArray(RESPONSE) << ids.first << true << ids.second; m_debugService->sendMessage(response); } @@ -346,7 +346,8 @@ void AbstractViewInspector::handleMessage(const QByteArray &message) int debugId; ds >> debugId; if (QObject *obj = QQmlDebugService::objectForId(debugId)) { - m_hashObjectsTobeDestroyed.insert(obj, requestId); + QPair ids(requestId, debugId); + m_hashObjectsTobeDestroyed.insert(obj, ids); connect(obj, SIGNAL(destroyed(QObject*)), SLOT(onQmlObjectDestroyed(QObject*))); obj->deleteLater(); } diff --git a/src/plugins/qmltooling/shared/abstractviewinspector.h b/src/plugins/qmltooling/shared/abstractviewinspector.h index ad42ba7..8eeb640 100644 --- a/src/plugins/qmltooling/shared/abstractviewinspector.h +++ b/src/plugins/qmltooling/shared/abstractviewinspector.h @@ -126,8 +126,8 @@ private: QList m_tools; int m_eventId; int m_reloadEventId; - // Hash< object to be destroyed, destroy eventId > - QHash m_hashObjectsTobeDestroyed; + // Hash< object to be destroyed, QPair > + QHash > m_hashObjectsTobeDestroyed; }; } // namespace QmlJSDebugger