aboutsummaryrefslogtreecommitdiffstats
path: root/src/qml/debugger/qqmldebugserver.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/qml/debugger/qqmldebugserver.cpp')
-rw-r--r--src/qml/debugger/qqmldebugserver.cpp34
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);