Showing the changes to libraries/script-engine/src/ScriptEngine.cpp (1 of 1 file). Show all
Unified · Split
| @@ -66,6 +66,7 @@ · 65 unmodified lines | |||
| 66 | #include "MIDIEvent.h" | 66 | #include "MIDIEvent.h" |
| 67 | 67 | ||
| 68 | static const QString SCRIPT_EXCEPTION_FORMAT = "[UncaughtException] %1 in %2:%3"; | 68 | static const QString SCRIPT_EXCEPTION_FORMAT = "[UncaughtException] %1 in %2:%3"; |
| 69 | static const QScriptEngine::QObjectWrapOptions DEFAULT_QOBJECT_WRAP_OPTIONS = 0; | ||
| 69 | 70 | ||
| 70 | Q_DECLARE_METATYPE(QScriptEngine::FunctionSignature) | 71 | Q_DECLARE_METATYPE(QScriptEngine::FunctionSignature) |
| 71 | int functionSignatureMetaID = qRegisterMetaType<QScriptEngine::FunctionSignature>(); | 72 | int functionSignatureMetaID = qRegisterMetaType<QScriptEngine::FunctionSignature>(); |
| @@ -90,7 +91,7 @@ static QScriptValue debugPrint(QScriptContext* context, QScriptEngine* engine){ · 18 unmodified lines | |||
| 90 | } | 91 | } |
| 91 | 92 | ||
| 92 | QScriptValue avatarDataToScriptValue(QScriptEngine* engine, AvatarData* const &in) { | 93 | QScriptValue avatarDataToScriptValue(QScriptEngine* engine, AvatarData* const &in) { |
| 93 | return engine->newQObject(in); | 94 | return engine->newQObject(in, QScriptEngine::QtOwnership, DEFAULT_QOBJECT_WRAP_OPTIONS); |
| 94 | } | 95 | } |
| 95 | 96 | ||
| 96 | void avatarDataFromScriptValue(const QScriptValue &object, AvatarData* &out) { | 97 | void avatarDataFromScriptValue(const QScriptValue &object, AvatarData* &out) { |
| @@ -101,7 +102,7 @@ Q_DECLARE_METATYPE(controller::InputController*) · 4 unmodified lines | |||
| 101 | //static int inputControllerPointerId = qRegisterMetaType<controller::InputController*>(); | 102 | //static int inputControllerPointerId = qRegisterMetaType<controller::InputController*>(); |
| 102 | 103 | ||
| 103 | QScriptValue inputControllerToScriptValue(QScriptEngine *engine, controller::InputController* const &in) { | 104 | QScriptValue inputControllerToScriptValue(QScriptEngine *engine, controller::InputController* const &in) { |
| 104 | return engine->newQObject(in); | 105 | return engine->newQObject(in, QScriptEngine::QtOwnership, DEFAULT_QOBJECT_WRAP_OPTIONS); |
| 105 | } | 106 | } |
| 106 | 107 | ||
| 107 | void inputControllerFromScriptValue(const QScriptValue &object, controller::InputController* &out) { | 108 | void inputControllerFromScriptValue(const QScriptValue &object, controller::InputController* &out) { |
| @@ -440,7 +441,8 @@ static QScriptValue scriptableResourceToScriptValue(QScriptEngine* engine, const · 332 unmodified lines | |||
| 440 | 441 | ||
| 441 | auto object = engine->newQObject( | 442 | auto object = engine->newQObject( |
| 442 | const_cast<ScriptableResourceRawPtr>(resource), | 443 | const_cast<ScriptableResourceRawPtr>(resource), |
| 443 | QScriptEngine::ScriptOwnership); | 444 | QScriptEngine::ScriptOwnership, |
| 445 | DEFAULT_QOBJECT_WRAP_OPTIONS); | ||
| 444 | return object; | 446 | return object; |
| 445 | } | 447 | } |
| 446 | 448 | ||
| @@ -459,7 +461,8 @@ static QScriptValue createScriptableResourcePrototype(QScriptEngine* engine) { · 12 unmodified lines | |||
| 459 | state->setProperty(metaEnum.key(i), metaEnum.value(i)); | 461 | state->setProperty(metaEnum.key(i), metaEnum.value(i)); |
| 460 | } | 462 | } |
| 461 | 463 | ||
| 462 | auto prototypeState = engine->newQObject(state, QScriptEngine::QtOwnership, QScriptEngine::ExcludeSlots | QScriptEngine::ExcludeSuperClassMethods); | 464 | auto prototypeState = engine->newQObject(state, QScriptEngine::QtOwnership, |
| 465 | QScriptEngine::ExcludeDeleteLater | QScriptEngine::ExcludeSlots | QScriptEngine::ExcludeSuperClassMethods); | ||
| 463 | prototype.setProperty("State", prototypeState); | 466 | prototype.setProperty("State", prototypeState); |
| 464 | 467 | ||
| 465 | return prototype; | 468 | return prototype; |
| @@ -592,7 +595,7 @@ void ScriptEngine::registerGlobalObject(const QString& name, QObject* object) { · 126 unmodified lines | |||
| 592 | 595 | ||
| 593 | if (!globalObject().property(name).isValid()) { | 596 | if (!globalObject().property(name).isValid()) { |
| 594 | if (object) { | 597 | if (object) { |
| 595 | QScriptValue value = newQObject(object); | 598 | QScriptValue value = newQObject(object, QScriptEngine::QtOwnership, DEFAULT_QOBJECT_WRAP_OPTIONS); |
| 596 | globalObject().setProperty(name, value); | 599 | globalObject().setProperty(name, value); |
| 597 | } else { | 600 | } else { |
| 598 | globalObject().setProperty(name, QScriptValue()); | 601 | globalObject().setProperty(name, QScriptValue()); |