本文整理汇总了C++中kjs::Object::get方法的典型用法代码示例。如果您正苦于以下问题:C++ Object::get方法的具体用法?C++ Object::get怎么用?C++ Object::get使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类kjs::Object
的用法示例。
在下文中一共展示了Object::get方法的7个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: getValue
KJS::Value KJSEmbedPart::getValue( const QString & valueName ) const
{
KJS::ExecState *exec = js->globalExec();
KJS::Identifier id = KJS::Identifier( KJS::UString(valueName.latin1() ));
KJS::Object obj = js->globalObject();
return obj.get(exec, id );
}
示例2: addBindingsClass
void JSObjectProxy::addBindingsClass( KJS::ExecState *exec, KJS::Object & /*object*/ ) {
KJS::Identifier clazzid;
QObject *o = obj;
Bindings::BindingObject *bo = dynamic_cast<Bindings::BindingObject *>( o );
if ( bo ) {
clazzid = KJS::Identifier( bo->jsClassName() ? bo->jsClassName() : obj->className() );
} else {
clazzid = KJS::Identifier( obj->className() );
}
KJS::Object global = js->globalObject();
if ( global.hasProperty( exec, clazzid ) ) {
kdDebug( 80001 ) << "addBindingsClass() " << clazzid.qstring() << " already known" << endl;
KJS::Object clazz = global.get( exec, clazzid ).toObject( exec );
Bindings::JSFactoryImp *imp = dynamic_cast<Bindings::JSFactoryImp *>( clazz.imp() );
if ( !imp ) {
kdWarning() << "addBindingsClass() Class was not created by normal means" << endl;
return ;
}
kdDebug( 80001 ) << "addBindingsClass() Adding enums" << endl;
imp->setDefaultValue( js->builtinObject().construct( exec, KJS::List() ) );
addBindingsEnum( exec, clazz );
} else {
kdWarning() << "addBindingsClass() " << clazzid.qstring() << " not known" << endl;
}
}
示例3: callMethod
KJS::Value KJSEmbedPart::callMethod( const QString & methodName, const KJS::List & args ) const
{
KJS::ExecState *exec = js->globalExec();
KJS::Identifier id = KJS::Identifier( KJS::UString(methodName.latin1() ));
KJS::Object obj = js->globalObject();
KJS::Object fun = obj.get(exec, id ).toObject( exec );
KJS::Value retValue;
if ( !fun.implementsCall() )
{
// We need to create an exception here...
}
else
retValue = fun.call(exec, obj, args);
kdDebug( 80001 ) << "Returned type is: " << retValue.type() << endl;
if( exec->hadException() )
{
kdWarning( 80001 ) << "Got error: " << exec->exception().toString(exec).qstring() << endl;
return exec->exception();
}
else
{
if( retValue.type() == 1 && retValue.type() == 0)
{
kdDebug( 80001 ) << "Got void return type. " << endl;
return KJS::Null();
}
}
return retValue;
}
示例4: constructorList
KJS::List KJSEmbedPart::constructorList() const
{
KJS::List items;
KJS::Object obj = js->globalObject();
KJS::ExecState *exec = js->globalExec();
KJS::ReferenceList l = obj.propList( exec );
KJS::ReferenceListIterator propIt = l.begin();
while ( propIt != l.end() ) {
KJS::Identifier name = propIt->getPropertyName( exec );
if ( obj.hasProperty( exec, name ) ) {
KJS::Value v = obj.get( exec, name );
KJS::Object vobj = v.toObject( exec );
if ( vobj.implementsConstruct() )
items.append( KJS::String( name.ustring() ) );
}
propIt++;
}
return items;
}
示例5: hasMethod
bool KJSEmbedPart::hasMethod( const QString & methodName )
{
KJS::ExecState *exec = js->globalExec();
KJS::Identifier id = KJS::Identifier( KJS::UString(methodName.latin1() ));
KJS::Object obj = js->globalObject();
KJS::Object fun = obj.get(exec, id ).toObject( exec );
return fun.implementsCall();
}
示例6: scopeWalker
static KJS::Object scopeWalker( KJS::ExecState *exec, const KJS::Object &root, const QString &objectString )
{
KJS::Object returnObject = root;
QStringList objects = QStringList::split(".", objectString);
for( uint idx = 0; idx < objects.count(); ++idx)
{
KJS::Identifier id = KJS::Identifier( KJS::UString( objects[idx] ));
KJS::Value newObject = returnObject.get(exec, id );
if( newObject.isValid() )
returnObject = newObject.toObject(exec);
}
return returnObject;
}
示例7: callJS
static void callJS(KJSEmbed::KJSEmbedPart *p,KJS::Object o,const QString& funcName){
KJS::Interpreter *js = p->interpreter();
KJS::ExecState *exec = js->globalExec();
KJS::List param;
exec->clearException();
KJS::Value funcV=o.get(exec,KJS::Identifier(funcName));
if (exec->hadException()) {
#warning clear exception ?
return;
}
KJS::Object func=funcV.toObject(exec);
if (exec->hadException()) {
#warning clear exception ?
return;
}
if (func.implementsCall()) {
func.call(exec,o,param);
if (js->globalExec()->hadException()) {
#warning clear exception ?
return;
}
}
}