Showing the changes to libraries/entities/src/EntityScriptingInterface.cpp (1 of 49 files). Show all
Unified · Split
| @@ -49,7 +49,7 @@ const QString GRABBABLE_USER_DATA = "{\"grabbableKey\":{\"grabbable\":true}}"; · 48 unmodified lines | |||
| 49 | const QString NOT_GRABBABLE_USER_DATA = "{\"grabbableKey\":{\"grabbable\":false}}"; | 49 | const QString NOT_GRABBABLE_USER_DATA = "{\"grabbableKey\":{\"grabbable\":false}}"; |
| 50 | 50 | ||
| 51 | void staticEntityScriptInitializer(ScriptManager* manager) { | 51 | void staticEntityScriptInitializer(ScriptManager* manager) { |
| 52 | auto scriptEngine = manager->engine().data(); | 52 | auto scriptEngine = manager->engine().get(); |
| 53 | 53 | ||
| 54 | auto entityScriptingInterface = DependencyManager::get<EntityScriptingInterface>(); | 54 | auto entityScriptingInterface = DependencyManager::get<EntityScriptingInterface>(); |
| 55 | entityScriptingInterface->init(); | 55 | entityScriptingInterface->init(); |
| @@ -145,7 +145,8 @@ void EntityScriptingInterface::attachDefaultEventHandlers(ScriptManager* manager · 89 unmodified lines | |||
| 145 | using SingleEntityHandler = std::function<void(const EntityItemID&)>; | 145 | using SingleEntityHandler = std::function<void(const EntityItemID&)>; |
| 146 | auto makeSingleEntityHandler = [manager](QString eventName) -> SingleEntityHandler { | 146 | auto makeSingleEntityHandler = [manager](QString eventName) -> SingleEntityHandler { |
| 147 | return [manager, eventName](const EntityItemID& entityItemID) { | 147 | return [manager, eventName](const EntityItemID& entityItemID) { |
| 148 | manager->forwardHandlerCall(entityItemID, eventName, { EntityItemIDtoScriptValue(manager->engine().data(), entityItemID) }); | 148 | manager->forwardHandlerCall(entityItemID, eventName, |
| 149 | { EntityItemIDtoScriptValue(manager->engine().get(), entityItemID) }); | ||
| 149 | }; | 150 | }; |
| 150 | }; | 151 | }; |
| 151 | 152 | ||
| @@ -159,7 +160,7 @@ void EntityScriptingInterface::attachDefaultEventHandlers(ScriptManager* manager · 7 unmodified lines | |||
| 159 | auto makePointerHandler = [manager](QString eventName) -> PointerHandler { | 160 | auto makePointerHandler = [manager](QString eventName) -> PointerHandler { |
| 160 | return [manager, eventName](const EntityItemID& entityItemID, const PointerEvent& event) { | 161 | return [manager, eventName](const EntityItemID& entityItemID, const PointerEvent& event) { |
| 161 | if (!EntityTree::areEntityClicksCaptured()) { | 162 | if (!EntityTree::areEntityClicksCaptured()) { |
| 162 | ScriptEngine* engine = manager->engine().data(); | 163 | ScriptEngine* engine = manager->engine().get(); |
| 163 | manager->forwardHandlerCall(entityItemID, eventName, | 164 | manager->forwardHandlerCall(entityItemID, eventName, |
| 164 | { EntityItemIDtoScriptValue(engine, entityItemID), event.toScriptValue(engine) }); | 165 | { EntityItemIDtoScriptValue(engine, entityItemID), event.toScriptValue(engine) }); |
| 165 | } | 166 | } |
| @@ -176,7 +177,7 @@ void EntityScriptingInterface::attachDefaultEventHandlers(ScriptManager* manager · 10 unmodified lines | |||
| 176 | using CollisionHandler = std::function<void(const EntityItemID&, const EntityItemID&, const Collision&)>; | 177 | using CollisionHandler = std::function<void(const EntityItemID&, const EntityItemID&, const Collision&)>; |
| 177 | auto makeCollisionHandler = [manager](QString eventName) -> CollisionHandler { | 178 | auto makeCollisionHandler = [manager](QString eventName) -> CollisionHandler { |
| 178 | return [manager, eventName](const EntityItemID& idA, const EntityItemID& idB, const Collision& collision) { | 179 | return [manager, eventName](const EntityItemID& idA, const EntityItemID& idB, const Collision& collision) { |
| 179 | ScriptEngine* engine = manager->engine().data(); | 180 | ScriptEngine* engine = manager->engine().get(); |
| 180 | manager->forwardHandlerCall(idA, eventName, | 181 | manager->forwardHandlerCall(idA, eventName, |
| 181 | { EntityItemIDtoScriptValue(engine, idA), | 182 | { EntityItemIDtoScriptValue(engine, idA), |
| 182 | EntityItemIDtoScriptValue(engine, idB), | 183 | EntityItemIDtoScriptValue(engine, idB), |
| @@ -1234,12 +1235,12 @@ QSizeF EntityScriptingInterface::textSize(const QUuid& id, const QString& text) · 1051 unmodified lines | |||
| 1234 | return EntityTree::textSize(id, text); | 1235 | return EntityTree::textSize(id, text); |
| 1235 | } | 1236 | } |
| 1236 | 1237 | ||
| 1237 | void EntityScriptingInterface::setPersistentEntitiesScriptEngine(QSharedPointer<EntitiesScriptEngineProvider> manager) { | 1238 | void EntityScriptingInterface::setPersistentEntitiesScriptEngine(std::shared_ptr<EntitiesScriptEngineProvider> manager) { |
| 1238 | std::lock_guard<std::recursive_mutex> lock(_entitiesScriptEngineLock); | 1239 | std::lock_guard<std::recursive_mutex> lock(_entitiesScriptEngineLock); |
| 1239 | _persistentEntitiesScriptManager = manager; | 1240 | _persistentEntitiesScriptManager = manager; |
| 1240 | } | 1241 | } |
| 1241 | 1242 | ||
| 1242 | void EntityScriptingInterface::setNonPersistentEntitiesScriptEngine(QSharedPointer<EntitiesScriptEngineProvider> manager) { | 1243 | void EntityScriptingInterface::setNonPersistentEntitiesScriptEngine(std::shared_ptr<EntitiesScriptEngineProvider> manager) { |
| 1243 | std::lock_guard<std::recursive_mutex> lock(_entitiesScriptEngineLock); | 1244 | std::lock_guard<std::recursive_mutex> lock(_entitiesScriptEngineLock); |
| 1244 | _nonPersistentEntitiesScriptManager = manager; | 1245 | _nonPersistentEntitiesScriptManager = manager; |
| 1245 | } | 1246 | } |
| @@ -1528,7 +1529,7 @@ bool EntityPropertyMetadataRequest::script(EntityItemID entityID, const ScriptVa · 282 unmodified lines | |||
| 1528 | request->deleteLater(); | 1529 | request->deleteLater(); |
| 1529 | }); | 1530 | }); |
| 1530 | auto entityScriptingInterface = DependencyManager::get<EntityScriptingInterface>(); | 1531 | auto entityScriptingInterface = DependencyManager::get<EntityScriptingInterface>(); |
| 1531 | entityScriptingInterface->withEntitiesScriptEngine([&](QSharedPointer<EntitiesScriptEngineProvider> entitiesScriptEngine) { | 1532 | entityScriptingInterface->withEntitiesScriptEngine([&](std::shared_ptr<EntitiesScriptEngineProvider> entitiesScriptEngine) { |
| 1532 | if (entitiesScriptEngine) { | 1533 | if (entitiesScriptEngine) { |
| 1533 | request->setFuture(entitiesScriptEngine->getLocalEntityScriptDetails(entityID)); | 1534 | request->setFuture(entitiesScriptEngine->getLocalEntityScriptDetails(entityID)); |
| 1534 | } | 1535 | } |
| @@ -2442,7 +2443,7 @@ void EntityScriptingInterface::getMeshes(const QUuid& entityID, const ScriptValu · 907 unmodified lines | |||
| 2442 | bool success = entity->getMeshes(result); | 2443 | bool success = entity->getMeshes(result); |
| 2443 | 2444 | ||
| 2444 | if (success) { | 2445 | if (success) { |
| 2445 | ScriptValue resultAsScriptValue = meshesToScriptValue(engine.data(), result); | 2446 | ScriptValue resultAsScriptValue = meshesToScriptValue(engine.get(), result); |
| 2446 | ScriptValueList args{ resultAsScriptValue, engine->newValue(true) }; | 2447 | ScriptValueList args{ resultAsScriptValue, engine->newValue(true) }; |
| 2447 | callback.call(ScriptValue(), args); | 2448 | callback.call(ScriptValue(), args); |
| 2448 | } else { | 2449 | } else { |