History

Moving running scripts functionality to scripting library

Brad Davis committed 10 years ago

Commit d28f80a1 parent ddd9b0820 files · +664 −569Browse files

Showing the changes to interface/src/ui/ScriptEditorWidget.cpp (1 of 20 files). Show all

Unified · Split

interface/src/ui/ScriptEditorWidget.cpp+8−5
@@ -25,6 +25,7 @@ · 24 unmodified lines
25#include <QTimer>25#include <QTimer>
26#include <QWidget>26#include <QWidget>
27 27
28#include <ScriptEngines.h>
28#include <NetworkAccessManager.h>29#include <NetworkAccessManager.h>
29#include <OffscreenUi.h>30#include <OffscreenUi.h>
30 31
@@ -101,17 +102,18 @@ bool ScriptEditorWidget::setRunning(bool run) { · 70 unmodified lines
101 disconnect(_scriptEngine, &ScriptEngine::finished, this, &ScriptEditorWidget::onScriptFinished);102 disconnect(_scriptEngine, &ScriptEngine::finished, this, &ScriptEditorWidget::onScriptFinished);
102 }103 }
103 104
105 auto scriptEngines = DependencyManager::get<ScriptEngines>();
104 if (run) {106 if (run) {
105 const QString& scriptURLString = QUrl(_currentScript).toString();107 const QString& scriptURLString = QUrl(_currentScript).toString();
106 // Reload script so that an out of date copy is not retrieved from the cache108 // Reload script so that an out of date copy is not retrieved from the cache
107 _scriptEngine = qApp->loadScript(scriptURLString, true, true, false, true);109 _scriptEngine = scriptEngines->loadScript(scriptURLString, true, true, false, true);
108 connect(_scriptEngine, &ScriptEngine::runningStateChanged, this, &ScriptEditorWidget::runningStateChanged);110 connect(_scriptEngine, &ScriptEngine::runningStateChanged, this, &ScriptEditorWidget::runningStateChanged);
109 connect(_scriptEngine, &ScriptEngine::update, this, &ScriptEditorWidget::onScriptModified);111 connect(_scriptEngine, &ScriptEngine::update, this, &ScriptEditorWidget::onScriptModified);
110 connect(_scriptEngine, &ScriptEngine::finished, this, &ScriptEditorWidget::onScriptFinished);112 connect(_scriptEngine, &ScriptEngine::finished, this, &ScriptEditorWidget::onScriptFinished);
111 } else {113 } else {
112 connect(_scriptEngine, &ScriptEngine::finished, this, &ScriptEditorWidget::onScriptFinished);114 connect(_scriptEngine, &ScriptEngine::finished, this, &ScriptEditorWidget::onScriptFinished);
113 const QString& scriptURLString = QUrl(_currentScript).toString();115 const QString& scriptURLString = QUrl(_currentScript).toString();
114 qApp->stopScript(scriptURLString);116 scriptEngines->stopScript(scriptURLString);
115 _scriptEngine = NULL;117 _scriptEngine = NULL;
116 }118 }
117 _console->setScriptEngine(_scriptEngine);119 _console->setScriptEngine(_scriptEngine);
@@ -173,7 +175,7 @@ void ScriptEditorWidget::loadFile(const QString& scriptPath) { · 55 unmodified lines
173 }175 }
174 }176 }
175 const QString& scriptURLString = QUrl(_currentScript).toString();177 const QString& scriptURLString = QUrl(_currentScript).toString();
176 _scriptEngine = qApp->getScriptEngine(scriptURLString);178 _scriptEngine = DependencyManager::get<ScriptEngines>()->getScriptEngine(scriptURLString);
177 if (_scriptEngine != NULL) {179 if (_scriptEngine != NULL) {
178 connect(_scriptEngine, &ScriptEngine::runningStateChanged, this, &ScriptEditorWidget::runningStateChanged);180 connect(_scriptEngine, &ScriptEngine::runningStateChanged, this, &ScriptEditorWidget::runningStateChanged);
179 connect(_scriptEngine, &ScriptEngine::update, this, &ScriptEditorWidget::onScriptModified);181 connect(_scriptEngine, &ScriptEngine::update, this, &ScriptEditorWidget::onScriptModified);
@@ -187,11 +189,12 @@ bool ScriptEditorWidget::save() { · 7 unmodified lines
187}189}
188 190
189bool ScriptEditorWidget::saveAs() {191bool ScriptEditorWidget::saveAs() {
192 auto scriptEngines = DependencyManager::get<ScriptEngines>();
190 QString fileName = QFileDialog::getSaveFileName(this, tr("Save script"),193 QString fileName = QFileDialog::getSaveFileName(this, tr("Save script"),
191 qApp->getPreviousScriptLocation(),194 scriptEngines->getPreviousScriptLocation(),
192 tr("JavaScript Files (*.js)"));195 tr("JavaScript Files (*.js)"));
193 if (!fileName.isEmpty()) {196 if (!fileName.isEmpty()) {
194 qApp->setPreviousScriptLocation(fileName);197 scriptEngines->setPreviousScriptLocation(fileName);
195 return saveFile(fileName);198 return saveFile(fileName);
196 } else {199 } else {
197 return false;200 return false;