Handle<Value> TiUIObject::_createControlHelper(void* userContext, CREATEOBJECTCALLBACK createCallback, const Arguments& args) { HandleScope handleScope; TiUIObject* obj = (TiUIObject*) userContext; Handle<ObjectTemplate> global = getObjectTemplateFromJsObject(args.Holder()); Handle<Object> result; result = global->NewInstance(); TiProxy* newControl = (createCallback)(obj->objectFactory_); newControl->setValue(result); if ((args.Length() > 0) && (args[0]->IsObject())) { Local<Object> settingsObj = Local<Object>::Cast(args[0]); newControl->setParametersFromObject(newControl, settingsObj); } setTiObjectToJsObject(result, newControl); return handleScope.Close(result); }
Handle<Value> TiMedia::_createControlHelper(void* userContext, CREATEOBJECTCALLBACK createCallback, const Arguments& args) { HandleScope handleScope; TiMedia* obj = (TiMedia*) userContext; Handle<ObjectTemplate> global = getObjectTemplateFromJsObject(args.Holder()); Handle<Object> result; result = global->NewInstance(); TiProxy* newControl = (createCallback)(obj->objectFactory_); newControl->setAttachedObject(obj); newControl->setValue(result); newControl->makeWeak(); if (args.Length() > 0) { newControl->applyProperties(args[0]); } setTiObjectToJsObject(result, newControl); return handleScope.Close(result); }