Kross
Kross::Object Class Reference
The class Object does provide us scripting objects like class instances to the C++ world. More...
#include <object.h>

Public Types | |
| typedef KSharedPtr< Object > | Ptr |
Public Member Functions | |
| Object () | |
| Object (const Object &other) | |
| virtual | ~Object () |
| virtual QVariant | callMethod (const QString &name, const QVariantList &args=QVariantList()) |
| virtual QStringList | methodNames () |
| virtual void | virtual_hook (int id, void *ptr) |
Detailed Description
The class Object does provide us scripting objects like class instances to the C++ world.
This class implementates reference counting for shared objects. So, no need to take care of freeing objects.
Sample that does use the Object functionality to pass a Javascript classinstance to C++ code which then calls a method the classinstance provides.
class MyObject : public QObject { public Q_SLOTS: QVariant myFunction(Kross::Object::Ptr obj) { QVariantList args; return obj->callMethod("myMethod", args); } };
function MyClass(result) {
this.myMethod = function() {
return result;
}
}
var myclass = new MyClass("my string");
var r = MyObject.myFunction(myclass);
print(r); // prints "my string"
- Since:
- 4.1
Member Typedef Documentation
| typedef KSharedPtr<Object> Kross::Object::Ptr |
Constructor & Destructor Documentation
| Object::Object | ( | ) | [explicit] |
Default constructor.
Definition at line 29 of file object.cpp.
| Object::Object | ( | const Object & | other | ) |
Copy constructor.
Definition at line 36 of file object.cpp.
| Object::~Object | ( | ) | [virtual] |
Destructor.
Definition at line 44 of file object.cpp.
Member Function Documentation
| QVariant Object::callMethod | ( | const QString & | name, |
| const QVariantList & | args = QVariantList() |
||
| ) | [virtual] |
Pass a call to the object and evaluated it.
- Parameters:
-
name Each call has a name that says what should be called. args The optional list of arguments passed to the call.
- Returns:
- The call-result as QVariant.
Reimplemented in Kross::EcmaObject.
Definition at line 49 of file object.cpp.
| QStringList Object::methodNames | ( | ) | [virtual] |
Return a list of supported callable objects.
- Returns:
- List of supported calls.
Reimplemented in Kross::EcmaObject.
Definition at line 56 of file object.cpp.
| void Object::virtual_hook | ( | int | id, |
| void * | ptr | ||
| ) | [virtual] |
used virtual hook to easier the job to keep binary compatibility.
Definition at line 61 of file object.cpp.
The documentation for this class was generated from the following files:
KDE 4.6 API Reference