Smoke-GObject generates a heirachy of QMetaObjects from GObject Introspection typelib files. This allows the functions in GObject based libraries to be invoked as slots, and for GObject signals to be forwarded to Qt signals. The GObject based types being converted to and from their Qt equivalents. The bindings can be used either by dynamic runtimes such as QtScript or QML with no code generation necessary, or they can include generated C++ classes to be compiled against for C++ projects.
The project was described in these three blogs:
http://
http://
http://
http://
It was checked into the KDE playground SVN module, but nothing has been done for the last two years.
At the UDS in Budapest, we had discussions about using the bindings to create a wrapper for a common library that will be used by both Unity-3D and Unity-2D. The library will be written using Gnome GObjects for Unity-3D, but will need to be used from Qt C++ and QML code in Unity-2D.
Currently the marshalling and function invocation code is being written. The 'Everything' library from the GObject Introspection project is being used to test the marshalling via a QtTest program to invoke all the code in this 'Everything' library.
Once the marshalling code is reasonably complete, the next stage will be to implement getting and setting Q_PROPERTYs corresponding to GObject properties, and to unite GObject signals with Qt signals.
After that an option will be added to generate C++ code for the QObject classes.

Smoke-GObject从GObject Introspection类型库文件生成QMetaObject层次结构,使GObject库的功能可作为槽调用,并将GObject信号转发给Qt信号。转换支持动态运行时如QtScript或QML使用,无需代码生成,也可生成C++类供C++项目编译使用。
932

被折叠的 条评论
为什么被折叠?



