QScriptValue QScriptDeclarativeClass::newObject(QScriptEngine *engine, QScriptDeclarativeClass *scriptClass, Object *object) { Q_ASSERT(engine); Q_ASSERT(scriptClass); QScriptEnginePrivate *p = static_cast<QScriptEnginePrivate *>(QObjectPrivate::get(engine)); JSC::ExecState* exec = p->currentFrame; QScriptObject *result = new (exec) QScriptObject(p->scriptObjectStructure); result->setDelegate(new QScript::DeclarativeObjectDelegate(scriptClass, object)); return p->scriptValueFromJSCValue(result); }
QScriptDeclarativeClass::Value QScriptDeclarativeClass::newObjectValue(QScriptEngine *engine,QScriptDeclarativeClass *scriptClass, Object *object) { Q_ASSERT(engine); Q_ASSERT(scriptClass); QScriptEnginePrivate *p = QScriptEnginePrivate::cs_getPrivate(engine); QScript::APIShim shim(p); JSC::ExecState* exec = p->currentFrame; QScriptObject *result = new (exec) QScriptObject(p->scriptObjectStructure); result->setDelegate(new QScript::DeclarativeObjectDelegate(scriptClass, object)); return jscToValue(JSC::JSValue(result)); }