aboutsummaryrefslogtreecommitdiffstats
path: root/src/plugins/qmltooling
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@theqtcompany.com>2015-08-18 14:39:13 +0200
committerUlf Hermann <ulf.hermann@theqtcompany.com>2015-09-15 15:25:47 +0000
commit03fa8422294fee7a71f502f1cdf5e4300a2630fe (patch)
treeb26c08999681bb08467c7ff7da9e0e46924a15b9 /src/plugins/qmltooling
parente821115888f0e6b176d6c45eec507920eee514c8 (diff)
V4 Debugger: Eliminate sourcesCollected signals and slots
There is no real reason to handle the "scripts" command like this. Change-Id: I640d878ea9d8cd449e73bf4b90fcf2ef3d68a963 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
Diffstat (limited to 'src/plugins/qmltooling')
-rw-r--r--src/plugins/qmltooling/qmldbg_debugger/qv4datacollector.cpp11
-rw-r--r--src/plugins/qmltooling/qmldbg_debugger/qv4datacollector.h5
-rw-r--r--src/plugins/qmltooling/qmldbg_debugger/qv4debuggeragent.cpp26
-rw-r--r--src/plugins/qmltooling/qmldbg_debugger/qv4debuggeragent.h2
-rw-r--r--src/plugins/qmltooling/qmldbg_debugger/qv4debugservice.cpp18
5 files changed, 23 insertions, 39 deletions
diff --git a/src/plugins/qmltooling/qmldbg_debugger/qv4datacollector.cpp b/src/plugins/qmltooling/qmldbg_debugger/qv4datacollector.cpp
index 2ef7713ac7..ff29814de6 100644
--- a/src/plugins/qmltooling/qmldbg_debugger/qv4datacollector.cpp
+++ b/src/plugins/qmltooling/qmldbg_debugger/qv4datacollector.cpp
@@ -348,23 +348,22 @@ const QString &ExpressionEvalJob::exceptionMessage() const
return exception;
}
-GatherSourcesJob::GatherSourcesJob(QV4::ExecutionEngine *engine, int seq)
+GatherSourcesJob::GatherSourcesJob(QV4::ExecutionEngine *engine)
: engine(engine)
- , seq(seq)
{}
void GatherSourcesJob::run()
{
- QStringList sources;
-
foreach (QV4::CompiledData::CompilationUnit *unit, engine->compilationUnits) {
QString fileName = unit->fileName();
if (!fileName.isEmpty())
sources.append(fileName);
}
+}
- QV4::Debugging::Debugger *debugger = engine->debugger;
- emit debugger->sourcesCollected(debugger, sources, seq);
+const QStringList &GatherSourcesJob::result() const
+{
+ return sources;
}
ArgumentCollectJob::ArgumentCollectJob(QV4::ExecutionEngine *engine, QV4DataCollector *collector,
diff --git a/src/plugins/qmltooling/qmldbg_debugger/qv4datacollector.h b/src/plugins/qmltooling/qmldbg_debugger/qv4datacollector.h
index 7d26d71bdf..39aed5b868 100644
--- a/src/plugins/qmltooling/qmldbg_debugger/qv4datacollector.h
+++ b/src/plugins/qmltooling/qmldbg_debugger/qv4datacollector.h
@@ -116,11 +116,12 @@ public:
class GatherSourcesJob: public QV4::Debugging::Debugger::Job
{
QV4::ExecutionEngine *engine;
- const int seq;
+ QStringList sources;
public:
- GatherSourcesJob(QV4::ExecutionEngine *engine, int seq);
+ GatherSourcesJob(QV4::ExecutionEngine *engine);
void run();
+ const QStringList &result() const;
};
class ArgumentCollectJob: public QV4::Debugging::Debugger::Job
diff --git a/src/plugins/qmltooling/qmldbg_debugger/qv4debuggeragent.cpp b/src/plugins/qmltooling/qmldbg_debugger/qv4debuggeragent.cpp
index 7f22b16e45..270a6958a9 100644
--- a/src/plugins/qmltooling/qmldbg_debugger/qv4debuggeragent.cpp
+++ b/src/plugins/qmltooling/qmldbg_debugger/qv4debuggeragent.cpp
@@ -105,27 +105,6 @@ void QV4DebuggerAgent::debuggerPaused(QV4::Debugging::Debugger *debugger,
m_debugService->send(event);
}
-void QV4DebuggerAgent::sourcesCollected(QV4::Debugging::Debugger *debugger,
- const QStringList &sources, int requestSequenceNr)
-{
- QJsonArray body;
- foreach (const QString &source, sources) {
- QJsonObject src;
- src[QLatin1String("name")] = source;
- src[QLatin1String("scriptType")] = 4;
- body.append(src);
- }
-
- QJsonObject response;
- response[QLatin1String("success")] = true;
- response[QLatin1String("running")] = debugger->state() == QV4::Debugging::Debugger::Running;
- response[QLatin1String("body")] = body;
- response[QLatin1String("command")] = QStringLiteral("scripts");
- response[QLatin1String("request_seq")] = requestSequenceNr;
- response[QLatin1String("type")] = QStringLiteral("response");
- m_debugService->send(response);
-}
-
void QV4DebuggerAgent::addDebugger(QV4::Debugging::Debugger *debugger)
{
Q_ASSERT(!m_debuggers.contains(debugger));
@@ -139,9 +118,6 @@ void QV4DebuggerAgent::addDebugger(QV4::Debugging::Debugger *debugger)
connect(debugger, SIGNAL(destroyed(QObject*)),
this, SLOT(handleDebuggerDeleted(QObject*)));
- connect(debugger, SIGNAL(sourcesCollected(QV4::Debugging::Debugger*,QStringList,int)),
- this, SLOT(sourcesCollected(QV4::Debugging::Debugger*,QStringList,int)),
- Qt::QueuedConnection);
connect(debugger, SIGNAL(debuggerPaused(QV4::Debugging::Debugger*,QV4::Debugging::PauseReason)),
this, SLOT(debuggerPaused(QV4::Debugging::Debugger*,QV4::Debugging::PauseReason)),
Qt::QueuedConnection);
@@ -152,8 +128,6 @@ void QV4DebuggerAgent::removeDebugger(QV4::Debugging::Debugger *debugger)
m_debuggers.removeAll(debugger);
disconnect(debugger, SIGNAL(destroyed(QObject*)),
this, SLOT(handleDebuggerDeleted(QObject*)));
- disconnect(debugger, SIGNAL(sourcesCollected(QV4::Debugging::Debugger*,QStringList,int)),
- this, SLOT(sourcesCollected(QV4::Debugging::Debugger*,QStringList,int)));
disconnect(debugger,
SIGNAL(debuggerPaused(QV4::Debugging::Debugger*,QV4::Debugging::PauseReason)),
this,
diff --git a/src/plugins/qmltooling/qmldbg_debugger/qv4debuggeragent.h b/src/plugins/qmltooling/qmldbg_debugger/qv4debuggeragent.h
index 6126eea772..64cf0e3d60 100644
--- a/src/plugins/qmltooling/qmldbg_debugger/qv4debuggeragent.h
+++ b/src/plugins/qmltooling/qmldbg_debugger/qv4debuggeragent.h
@@ -66,8 +66,6 @@ public:
public slots:
void debuggerPaused(QV4::Debugging::Debugger *debugger, QV4::Debugging::PauseReason reason);
- void sourcesCollected(QV4::Debugging::Debugger *debugger, const QStringList &sources,
- int requestSequenceNr);
void handleDebuggerDeleted(QObject *debugger);
private:
diff --git a/src/plugins/qmltooling/qmldbg_debugger/qv4debugservice.cpp b/src/plugins/qmltooling/qmldbg_debugger/qv4debugservice.cpp
index a4ed570927..92957f741c 100644
--- a/src/plugins/qmltooling/qmldbg_debugger/qv4debugservice.cpp
+++ b/src/plugins/qmltooling/qmldbg_debugger/qv4debugservice.cpp
@@ -102,7 +102,7 @@ protected:
void addCommand() { response.insert(QStringLiteral("command"), cmd); }
void addRequestSequence() { response.insert(QStringLiteral("request_seq"), seq); }
void addSuccess(bool success) { response.insert(QStringLiteral("success"), success); }
- void addBody(const QJsonObject &body)
+ void addBody(const QJsonValue &body)
{
response.insert(QStringLiteral("body"), body);
}
@@ -506,10 +506,22 @@ public:
// do it:
QV4::Debugging::Debugger *debugger = debugService->debuggerAgent.firstDebugger();
- GatherSourcesJob job(debugger->engine(), requestSequenceNr());
+ GatherSourcesJob job(debugger->engine());
debugger->runInEngine(&job);
- // response will be send by
+ QJsonArray body;
+ foreach (const QString &source, job.result()) {
+ QJsonObject src;
+ src[QLatin1String("name")] = source;
+ src[QLatin1String("scriptType")] = 4;
+ body.append(src);
+ }
+
+ addSuccess(true);
+ addRunning();
+ addBody(body);
+ addCommand();
+ addRequestSequence();
}
};