History

cleaned up some registration of global objects

ZappoMan committed 12 years ago

Commit febb3061 parent 7882d501 file · +11 −19Browse files

Showing the changes to libraries/script-engine/src/ScriptEngine.cpp (1 of 1 file). Show all

Unified · Split

libraries/script-engine/src/ScriptEngine.cpp+11−19
@@ -116,19 +116,12 @@ void ScriptEngine::init() { · 115 unmodified lines
116 116
117 // register meta-type for glm::vec3 conversions117 // register meta-type for glm::vec3 conversions
118 registerMetaTypes(&_engine);118 registerMetaTypes(&_engine);
119
120 registerEventTypes(&_engine);
119 qScriptRegisterMetaType(&_engine, ParticlePropertiesToScriptValue, ParticlePropertiesFromScriptValue);121 qScriptRegisterMetaType(&_engine, ParticlePropertiesToScriptValue, ParticlePropertiesFromScriptValue);
120 qScriptRegisterMetaType(&_engine, ParticleIDtoScriptValue, ParticleIDfromScriptValue);122 qScriptRegisterMetaType(&_engine, ParticleIDtoScriptValue, ParticleIDfromScriptValue);
121 qScriptRegisterSequenceMetaType<QVector<ParticleID> >(&_engine);123 qScriptRegisterSequenceMetaType<QVector<ParticleID> >(&_engine);
122 124
123 QScriptValue agentValue = _engine.newQObject(this);
124 _engine.globalObject().setProperty("Agent", agentValue);
125
126 QScriptValue voxelScripterValue = _engine.newQObject(&_voxelsScriptingInterface);
127 _engine.globalObject().setProperty("Voxels", voxelScripterValue);
128
129 QScriptValue particleScripterValue = _engine.newQObject(&_particlesScriptingInterface);
130 _engine.globalObject().setProperty("Particles", particleScripterValue);
131
132 QScriptValue soundConstructorValue = _engine.newFunction(soundConstructor);125 QScriptValue soundConstructorValue = _engine.newFunction(soundConstructor);
133 QScriptValue soundMetaObject = _engine.newQMetaObject(&Sound::staticMetaObject, soundConstructorValue);126 QScriptValue soundMetaObject = _engine.newQMetaObject(&Sound::staticMetaObject, soundConstructorValue);
134 _engine.globalObject().setProperty("Sound", soundMetaObject);127 _engine.globalObject().setProperty("Sound", soundMetaObject);
@@ -136,15 +129,12 @@ void ScriptEngine::init() { · 1 unmodified line
136 QScriptValue injectionOptionValue = _engine.scriptValueFromQMetaObject<AudioInjectorOptions>();129 QScriptValue injectionOptionValue = _engine.scriptValueFromQMetaObject<AudioInjectorOptions>();
137 _engine.globalObject().setProperty("AudioInjectionOptions", injectionOptionValue);130 _engine.globalObject().setProperty("AudioInjectionOptions", injectionOptionValue);
138 131
139 QScriptValue audioScriptingInterfaceValue = _engine.newQObject(&_audioScriptingInterface);132 registerGlobalObject("Agent", this);
140 _engine.globalObject().setProperty("Audio", audioScriptingInterfaceValue);133 registerGlobalObject("Audio", &_audioScriptingInterface);
141 134 registerGlobalObject("Controller", _controllerScriptingInterface);
142 registerGlobalObject("Data", &_dataServerScriptingInterface);135 registerGlobalObject("Data", &_dataServerScriptingInterface);
143 136 registerGlobalObject("Particles", &_particlesScriptingInterface);
144 if (_controllerScriptingInterface) {137 registerGlobalObject("Voxels", &_voxelsScriptingInterface);
145 QScriptValue controllerScripterValue = _engine.newQObject(_controllerScriptingInterface);
146 _engine.globalObject().setProperty("Controller", controllerScripterValue);
147 }
148 138
149 QScriptValue treeScaleValue = _engine.newVariant(QVariant(TREE_SCALE));139 QScriptValue treeScaleValue = _engine.newVariant(QVariant(TREE_SCALE));
150 _engine.globalObject().setProperty("TREE_SCALE", treeScaleValue);140 _engine.globalObject().setProperty("TREE_SCALE", treeScaleValue);
@@ -157,8 +147,10 @@ void ScriptEngine::init() { · 6 unmodified lines
157}147}
158 148
159void ScriptEngine::registerGlobalObject(const QString& name, QObject* object) {149void ScriptEngine::registerGlobalObject(const QString& name, QObject* object) {
160 QScriptValue value = _engine.newQObject(object);150 if (object) {
161 _engine.globalObject().setProperty(name, value);151 QScriptValue value = _engine.newQObject(object);
152 _engine.globalObject().setProperty(name, value);
153 }
162}154}
163 155
164void ScriptEngine::evaluate() {156void ScriptEngine::evaluate() {