diff options
Diffstat (limited to 'src/qml/debugger/qqmldebugserver.cpp')
| -rw-r--r-- | src/qml/debugger/qqmldebugserver.cpp | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/qml/debugger/qqmldebugserver.cpp b/src/qml/debugger/qqmldebugserver.cpp index cddac0e595..025bbc2113 100644 --- a/src/qml/debugger/qqmldebugserver.cpp +++ b/src/qml/debugger/qqmldebugserver.cpp @@ -42,6 +42,12 @@ #include "qqmldebugserver_p.h" #include "qqmldebugservice_p.h" #include "qqmldebugservice_p_p.h" +#include "qqmlenginedebugservice_p.h" +#include "qv4debugservice_p.h" +#include "qv4profilerservice_p.h" +#include "qdebugmessageservice_p.h" +#include "qqmlprofilerservice_p.h" + #include <private/qqmlengine_p.h> #include <private/qqmlglobal_p.h> @@ -563,6 +569,34 @@ QStringList QQmlDebugServer::serviceNames() const return d->plugins.keys(); } +void QQmlDebugServer::addEngine(QQmlEngine *engine) +{ + Q_D(QQmlDebugServer); + QReadLocker lock(&d->pluginsLock); + + foreach (QQmlDebugService *service, d->plugins) + service->engineAboutToBeAdded(engine); + + // TODO: Later wait here for initialization. + + foreach (QQmlDebugService *service, d->plugins) + service->engineAdded(engine); +} + +void QQmlDebugServer::removeEngine(QQmlEngine *engine) +{ + Q_D(QQmlDebugServer); + QReadLocker lock(&d->pluginsLock); + + foreach (QQmlDebugService *service, d->plugins) + service->engineAboutToBeRemoved(engine); + + // TODO: Later wait here for cleanup + + foreach (QQmlDebugService *service, d->plugins) + service->engineRemoved(engine); +} + bool QQmlDebugServer::addService(QQmlDebugService *service) { Q_D(QQmlDebugServer); |
