我正在试图找出如何处理dbus
列表unsigned short
的{{1}}属性。我是dbus
和Qt
的新手,示例根本不包含列表。
XML源代码如下:
<?xml version="1.0" encoding="UTF-8"?>
<node>
<interface name='com.Controller'>
<property name="ModeCycle" type="aq" access="readwrite">
<annotation name="org.freedesktop.DBus.Property.EmitsChangedSignal"
value="true"/>
<annotation name="org.qtproject.QtDBus.QtTypeName"
value="ModeCycleList"/>
</property>
</interface>
</node>
我最初尝试传递Qlist<unsigned short
的值,但qdbusxml2cpp无法处理那里的尖括号(并默默地删除条目)。所以,我创建了bits.h:
#include <QtCore/QList>
typedef QList<unsigned short> ModeCycleList;
我补充说:
QT += dbus
QDBUSXML2CPP_INTERFACE_HEADER_FLAGS = -i bits.h
到.pro文件中以包含typedef并获取要链接的内容。
我实际上无法运行代码(缺少dbus连接的另一面),但至少它编译和链接。
有没有人有dbus
列表属性的示例或知道我应该如何在此处指定列表?