Hi, On Saturday 08 December 2012 20:18:50 Andy Mayer wrote: > Am 08.12.2012 19:25, schrieb Thomas McGuire: > > On Saturday 08 December 2012 11:34:17 Andy Mayer wrote: > >> I have a question regarding the possibilty of reading the body of a > >> javascript function from c++. I want to create a DSL based on QML and I > >> have to read the body of a javascript function. > >> > >> e.g. > >> > >> QML: > >> Item { > >> > >> function action() { > >> > >> console.log("Got message:", msg) > >> return "some return value" > >> > >> } > >> > >> } > >> > >> C++: > >> QDeclarativeEngine engine; > >> QDeclarativeContext context(&engine); > >> > >> QDeclarativeComponent component(&engine, > >> QUrl::fromLocalFile("MyItem.qml")); QObject* qmlSpenat = > >> component.beginCreate(&context); > >> > >> QString actionString=qmlSpenat->property("action");//??? it doesn't > >> work, anything else? > > > > Should work with QMetaObject::invokeMethod(). > > > > Thanks for the answer, but I don't want to invoke the javascript method. > I want to read out the body of the javascript method from C++. > > e.g.: If I have a Javascript method within a qml-file > > function action() { var x=0; return x+2;} > > the question is: Is it possible to get the body "var x=0; return x+2;" > as QString (or something else?) from C++ side?
Ah I see, that is quite an unusual usecase. Getting the function body as a string from the C++ side is not possible. However, the other way around is doable, you could pass the function body string from QML to C++, either with a function call or with a property binding. Something like myCppObj.passFunctionString(action.toString()) Assuming that passFunctionString() is a C++ function that takes a QString as argument. Regards, Thomas -- Thomas McGuire | thomas.mcgu...@kdab.com | Software Engineer KDAB (Deutschland) GmbH&Co KG, a KDAB Group company Tel. Germany +49-30-521325470, Sweden (HQ) +46-563-540090 KDAB - Qt Experts - Platform-independent software solutions
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ Interest mailing list Interest@qt-project.org http://lists.qt-project.org/mailman/listinfo/interest