From cf58dcd5c5389e559316f99db825f786dbcc8ebe Mon Sep 17 00:00:00 2001 From: Michael Brasser Date: Wed, 26 Aug 2009 13:17:51 +1000 Subject: Some script engine cleanup. --- src/declarative/qml/qmlengine.cpp | 17 +---------------- 1 file changed, 1 insertion(+), 16 deletions(-) diff --git a/src/declarative/qml/qmlengine.cpp b/src/declarative/qml/qmlengine.cpp index 7923eda..ea00d65 100644 --- a/src/declarative/qml/qmlengine.cpp +++ b/src/declarative/qml/qmlengine.cpp @@ -266,9 +266,7 @@ QScriptValue QmlEnginePrivate::propertyObject(const QScriptString &propName, if (varobj) { return scriptEngine.newObject(objectClass, scriptEngine.newVariant(QVariant::fromValue(varobj))); } else { - if (var.type() == QVariant::Bool) - return QScriptValue(&scriptEngine, var.toBool()); - return scriptEngine.newVariant(var); + return qScriptValueFromValue(&scriptEngine, var); } } @@ -863,21 +861,14 @@ void QmlContextScriptClass::setProperty(QScriptValue &object, QmlContext *bindContext = static_cast(object.data().toQObject()); - int objIdx = (id & QmlScriptClass::ClassIdSelectorMask) >> 24; QObject *obj = bindContext->d_func()->defaultObjects.at(objIdx); - QScriptEngine *scriptEngine = QmlEnginePrivate::getScriptEngine(engine); - QScriptValue oldact = scriptEngine->currentContext()->activationObject(); - scriptEngine->currentContext()->setActivationObject(scriptEngine->globalObject()); - QmlMetaProperty prop; prop.restore(id, obj); QVariant v = QmlScriptClass::toVariant(engine, value); prop.write(v); - - scriptEngine->currentContext()->setActivationObject(oldact); } ///////////////////////////////////////////////////////////// @@ -1058,17 +1049,11 @@ void QmlObjectScriptClass::setProperty(QScriptValue &object, QObject *obj = object.data().toQObject(); - QScriptEngine *scriptEngine = QmlEnginePrivate::getScriptEngine(engine); - QScriptValue oldact = scriptEngine->currentContext()->activationObject(); - scriptEngine->currentContext()->setActivationObject(scriptEngine->globalObject()); - QmlMetaProperty prop; prop.restore(id, obj); QVariant v = QmlScriptClass::toVariant(engine, value); prop.write(v); - - scriptEngine->currentContext()->setActivationObject(oldact); } -- cgit v0.12