Details
-
Suggestion
-
Resolution: Out of scope
-
Not Evaluated
-
None
-
5.4.0
-
None
Description
Currently, QMetaClassInfo can only be set using the macro Q_CLASSINFO. The QMetaClassInfo is created by MOC and cannot be added to or changed at runtime.
This presents a problem if someone where to desire to create a DBus interface at runtime for exporting since the DBus interface name can only be set at compile time. This makes it difficult for QML or Javascript apps to expose DBus services without the hassle of writing native classes for every interface they want to export.
The alternative to this feature would be to overload QDBusConnection::exportObject with a QString interfaceName. This would tell QDBusConnection NOT to use the QMetaClassInfo to retrieve the interface name and use this argument instead.