Showing the changes to interface/src/ui/ScriptEditorWidget.cpp (1 of 3 files). Show all
Unified · Split
| @@ -59,12 +59,8 @@ void ScriptEditorWidget::onScriptModified() { · 58 unmodified lines | ||
| 59 | 59 | } |
| 60 | 60 | } |
| 61 | 61 | |
| 62 | −void ScriptEditorWidget::onScriptEnding() { | |
| 63 | − // signals will automatically be disonnected when the _scriptEngine is deleted later | |
| 64 | − _scriptEngine = NULL; | |
| 65 | −} | |
| 66 | − | |
| 67 | 62 | void ScriptEditorWidget::onScriptFinished(const QString& scriptPath) { |
| 63 | + _scriptEngine = NULL; | |
| 68 | 64 | if (_isRestarting) { |
| 69 | 65 | _isRestarting = false; |
| 70 | 66 | setRunning(true); |
| @@ -84,23 +80,20 @@ bool ScriptEditorWidget::setRunning(bool run) { · 13 unmodified lines | ||
| 84 | 80 | return false; |
| 85 | 81 | } |
| 86 | 82 | |
| 87 | − // Clean-up old connections. | |
| 88 | 83 | if (_scriptEngine != NULL) { |
| 89 | 84 | disconnect(_scriptEngine, &ScriptEngine::runningStateChanged, this, &ScriptEditorWidget::runningStateChanged); |
| 90 | 85 | disconnect(_scriptEngine, &ScriptEngine::errorMessage, this, &ScriptEditorWidget::onScriptError); |
| 91 | 86 | disconnect(_scriptEngine, &ScriptEngine::printedMessage, this, &ScriptEditorWidget::onScriptPrint); |
| 92 | − disconnect(_scriptEngine, &ScriptEngine::scriptEnding, this, &ScriptEditorWidget::onScriptEnding); | |
| 87 | + disconnect(_scriptEngine, &ScriptEngine::finished, this, &ScriptEditorWidget::onScriptFinished); | |
| 93 | 88 | } |
| 94 | 89 | |
| 95 | 90 | if (run) { |
| 96 | 91 | const QString& scriptURLString = QUrl(_currentScript).toString(); |
| 97 | 92 | _scriptEngine = Application::getInstance()->loadScript(scriptURLString, true); |
| 98 | 93 | connect(_scriptEngine, &ScriptEngine::runningStateChanged, this, &ScriptEditorWidget::runningStateChanged); |
| 99 | − | |
| 100 | − // Make new connections. | |
| 101 | 94 | connect(_scriptEngine, &ScriptEngine::errorMessage, this, &ScriptEditorWidget::onScriptError); |
| 102 | 95 | connect(_scriptEngine, &ScriptEngine::printedMessage, this, &ScriptEditorWidget::onScriptPrint); |
| 103 | − connect(_scriptEngine, &ScriptEngine::scriptEnding, this, &ScriptEditorWidget::onScriptEnding); | |
| 96 | + connect(_scriptEngine, &ScriptEngine::finished, this, &ScriptEditorWidget::onScriptFinished); | |
| 104 | 97 | } else { |
| 105 | 98 | connect(_scriptEngine, &ScriptEngine::finished, this, &ScriptEditorWidget::onScriptFinished); |
| 106 | 99 | Application::getInstance()->stopScript(_currentScript); |
| @@ -144,7 +137,7 @@ void ScriptEditorWidget::loadFile(const QString& scriptPath) { · 37 unmodified lines | ||
| 144 | 137 | disconnect(_scriptEngine, &ScriptEngine::runningStateChanged, this, &ScriptEditorWidget::runningStateChanged); |
| 145 | 138 | disconnect(_scriptEngine, &ScriptEngine::errorMessage, this, &ScriptEditorWidget::onScriptError); |
| 146 | 139 | disconnect(_scriptEngine, &ScriptEngine::printedMessage, this, &ScriptEditorWidget::onScriptPrint); |
| 147 | − disconnect(_scriptEngine, &ScriptEngine::scriptEnding, this, &ScriptEditorWidget::onScriptEnding); | |
| 140 | + disconnect(_scriptEngine, &ScriptEngine::finished, this, &ScriptEditorWidget::onScriptFinished); | |
| 148 | 141 | } |
| 149 | 142 | } else { |
| 150 | 143 | QNetworkAccessManager* networkManager = new QNetworkAccessManager(this); |
| @@ -165,7 +158,7 @@ void ScriptEditorWidget::loadFile(const QString& scriptPath) { · 14 unmodified lines | ||
| 165 | 158 | connect(_scriptEngine, &ScriptEngine::runningStateChanged, this, &ScriptEditorWidget::runningStateChanged); |
| 166 | 159 | connect(_scriptEngine, &ScriptEngine::errorMessage, this, &ScriptEditorWidget::onScriptError); |
| 167 | 160 | connect(_scriptEngine, &ScriptEngine::printedMessage, this, &ScriptEditorWidget::onScriptPrint); |
| 168 | − connect(_scriptEngine, &ScriptEngine::scriptEnding, this, &ScriptEditorWidget::onScriptEnding); | |
| 161 | + connect(_scriptEngine, &ScriptEngine::finished, this, &ScriptEditorWidget::onScriptFinished); | |
| 169 | 162 | } |
| 170 | 163 | } |
| 171 | 164 | |