| 220 | } |
| 221 | |
| 222 | void JSDebugger::setupDebugEnv() |
| 223 | { |
| 224 | // intialize debugger. |
| 225 | QScriptEngineDebugger debugger; |
| 226 | connect(this, &JSDebugger::execCommand, [&](QScriptEngineDebugger::DebuggerAction debuggerAction){ |
| 227 | debugger.action(debuggerAction)->trigger(); |
| 228 | }); |
| 229 | debugger.setAutoShowStandardWindow(false); |
| 230 | connect(&debugger, &QScriptEngineDebugger::evaluationResumed, this, &JSDebugger::slotEvaluationResumed); |
| 231 | connect(&debugger, &QScriptEngineDebugger::evaluationSuspended, this, &JSDebugger::slotEvaluationSuspended); |
| 232 | |
| 233 | QScriptEngine engine; |
| 234 | debugger.attachTo(&engine); |
| 235 | |
| 236 | addPagesToContext(debugger); |
| 237 | |
| 238 | // evaluate js files. |
| 239 | auto prjService = dpfGetService(ProjectService); |
| 240 | auto sourceFiles = prjService->getActiveProjectInfo().sourceFiles(); |
| 241 | |
| 242 | interruptDebug(); |
| 243 | for (auto sourceFile : sourceFiles) { |
| 244 | auto value = evaluateFile(engine, sourceFile); |
| 245 | qInfo() << value.toString(); |
| 246 | } |
| 247 | removePagesFromContext(); |
| 248 | |
| 249 | disconnect(this, &JSDebugger::execCommand, nullptr, nullptr); |
| 250 | |
| 251 | runState = kNoRun; |
| 252 | emit runStateChanged(kNoRun); |
| 253 | } |
nothing calls this directly
no test coverage detected