From 0f46fb9b4d5d1f636f6a07d60703fd3943bd1456 Mon Sep 17 00:00:00 2001 From: Dale Glass Date: Sun, 26 Feb 2023 14:14:25 +0100 Subject: [PATCH] Add a ScriptManagerScriptingInterface.cpp, will be useful later. --- .../src/ScriptManagerScriptingInterface.cpp | 33 +++++++++++++++++++ .../src/ScriptManagerScriptingInterface.h | 24 +++----------- 2 files changed, 38 insertions(+), 19 deletions(-) create mode 100644 libraries/script-engine/src/ScriptManagerScriptingInterface.cpp diff --git a/libraries/script-engine/src/ScriptManagerScriptingInterface.cpp b/libraries/script-engine/src/ScriptManagerScriptingInterface.cpp new file mode 100644 index 0000000000..9b0efa71e8 --- /dev/null +++ b/libraries/script-engine/src/ScriptManagerScriptingInterface.cpp @@ -0,0 +1,33 @@ +// +// ScriptManagerScriptingInterface.h +// libraries/script-engine/src +// +// Created by Dale Glass on 24/02/2023. +// Copyright 2022 Overte e.V. +// +// Distributed under the Apache License, Version 2.0. +// See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html +// + +#include "ScriptManager.h" +#include "ScriptManagerScriptingInterface.h" + + + ScriptManagerScriptingInterface::ScriptManagerScriptingInterface(ScriptManager *parent): QObject(parent), _manager(parent) { + connect(_manager, &ScriptManager::scriptLoaded, this, &ScriptManagerScriptingInterface::scriptLoaded); + connect(_manager, &ScriptManager::errorLoadingScript, this, &ScriptManagerScriptingInterface::errorLoadingScript); + connect(_manager, &ScriptManager::update, this, &ScriptManagerScriptingInterface::update); + connect(_manager, &ScriptManager::scriptEnding, this, &ScriptManagerScriptingInterface::scriptEnding); + connect(_manager, &ScriptManager::finished, this, &ScriptManagerScriptingInterface::finished); + connect(_manager, &ScriptManager::printedMessage, this, &ScriptManagerScriptingInterface::printedMessage); + connect(_manager, &ScriptManager::errorMessage, this, &ScriptManagerScriptingInterface::errorMessage); + connect(_manager, &ScriptManager::warningMessage, this, &ScriptManagerScriptingInterface::warningMessage); + connect(_manager, &ScriptManager::infoMessage, this, &ScriptManagerScriptingInterface::infoMessage); + connect(_manager, &ScriptManager::runningStateChanged, this, &ScriptManagerScriptingInterface::runningStateChanged); + connect(_manager, &ScriptManager::clearDebugWindow, this, &ScriptManagerScriptingInterface::clearDebugWindow); + connect(_manager, &ScriptManager::loadScript, this, &ScriptManagerScriptingInterface::loadScript); + connect(_manager, &ScriptManager::doneRunning, this, &ScriptManagerScriptingInterface::doneRunning); + connect(_manager, &ScriptManager::entityScriptDetailsUpdated, this, &ScriptManagerScriptingInterface::entityScriptDetailsUpdated); + connect(_manager, &ScriptManager::entityScriptPreloadFinished, this, &ScriptManagerScriptingInterface::entityScriptPreloadFinished); + connect(_manager, &ScriptManager::unhandledException, this, &ScriptManagerScriptingInterface::unhandledException); + } \ No newline at end of file diff --git a/libraries/script-engine/src/ScriptManagerScriptingInterface.h b/libraries/script-engine/src/ScriptManagerScriptingInterface.h index 1de1b39c54..b46c3cf4f0 100644 --- a/libraries/script-engine/src/ScriptManagerScriptingInterface.h +++ b/libraries/script-engine/src/ScriptManagerScriptingInterface.h @@ -51,26 +51,11 @@ class ScriptManagerScriptingInterface : public QObject { Q_OBJECT public: - ScriptManagerScriptingInterface(ScriptManager *parent) : QObject(parent), _manager(parent) { + ScriptManagerScriptingInterface(ScriptManager *parent); + + virtual ~ScriptManagerScriptingInterface() { - connect(_manager, &ScriptManager::scriptLoaded, this, &ScriptManagerScriptingInterface::scriptLoaded); - connect(_manager, &ScriptManager::errorLoadingScript, this, &ScriptManagerScriptingInterface::errorLoadingScript); - connect(_manager, &ScriptManager::update, this, &ScriptManagerScriptingInterface::update); - connect(_manager, &ScriptManager::scriptEnding, this, &ScriptManagerScriptingInterface::scriptEnding); - connect(_manager, &ScriptManager::finished, this, &ScriptManagerScriptingInterface::finished); - connect(_manager, &ScriptManager::printedMessage, this, &ScriptManagerScriptingInterface::printedMessage); - connect(_manager, &ScriptManager::errorMessage, this, &ScriptManagerScriptingInterface::errorMessage); - connect(_manager, &ScriptManager::warningMessage, this, &ScriptManagerScriptingInterface::warningMessage); - connect(_manager, &ScriptManager::infoMessage, this, &ScriptManagerScriptingInterface::infoMessage); - connect(_manager, &ScriptManager::runningStateChanged, this, &ScriptManagerScriptingInterface::runningStateChanged); - connect(_manager, &ScriptManager::clearDebugWindow, this, &ScriptManagerScriptingInterface::clearDebugWindow); - connect(_manager, &ScriptManager::loadScript, this, &ScriptManagerScriptingInterface::loadScript); - connect(_manager, &ScriptManager::doneRunning, this, &ScriptManagerScriptingInterface::doneRunning); - connect(_manager, &ScriptManager::entityScriptDetailsUpdated, this, &ScriptManagerScriptingInterface::entityScriptDetailsUpdated); - connect(_manager, &ScriptManager::entityScriptPreloadFinished, this, &ScriptManagerScriptingInterface::entityScriptPreloadFinished); - connect(_manager, &ScriptManager::unhandledException, this, &ScriptManagerScriptingInterface::unhandledException); } - /**jsdoc * Stops and unloads the current script. *

Warning: If an assignment client script, the script gets restarted after stopping.

@@ -709,7 +694,8 @@ protected: * @param {string} status - Status. * @deprecated This function is deprecated and will be removed. */ - Q_INVOKABLE void entityScriptContentAvailable(const EntityItemID& entityID, const QString& scriptOrURL, const QString& contents, bool isURL, bool success, const QString& status); + Q_INVOKABLE void entityScriptContentAvailable(const EntityItemID& entityID, const QString& scriptOrURL, const QString& contents, bool isURL, bool success, const QString& status) + { _manager->entityScriptContentAvailable(entityID, scriptOrURL, contents, isURL, success, status); } private: