5 #include <QDBusInterface>
8 #define AUTOPROPERTY(type, name, Name) \
10 void set ## Name(type s) { m ## Name = s; } \
11 type name() { return m ## Name; } \
20 Q_PROPERTY(QString propertyName READ propertyName WRITE setPropertyName)
21 AUTOPROPERTY(QString, propertyName, PropertyName)
22 Q_PROPERTY(QVariant value READ value WRITE setValue NOTIFY valueChanged)
23 Q_PROPERTY(QString interfaceName READ interfaceName WRITE setInterfaceName)
24 AUTOPROPERTY(QString, interfaceName, InterfaceName)
25 Q_PROPERTY(QString objectPath READ objectPath WRITE setObjectPath)
26 AUTOPROPERTY(QString, objectPath, ObjectPath)
27 Q_PROPERTY(
int zone READ zone WRITE setZone)
28 AUTOPROPERTY(
int, zone,
Zone)
29 Q_PROPERTY(
double time READ time)
34 AmbProperty():mDBusInterface(NULL),mZone(0),mTime(0) { }
36 AmbProperty(QString op, QString iface, QString propName);
43 void setValue(QVariant v)
45 if(!mDBusInterface || !mDBusInterface->isValid())
47 qDebug()<<
"error Interface is not valid "<<interfaceName();
50 mDBusInterface->setProperty(propertyName().toUtf8(), v);
53 double time(){
return mTime; }
56 void valueChanged(QVariant val);
65 void propertyChangedSlot(QString, QVariantMap values, QVariantMap);
66 void propertyChanged1(QDBusVariant,
double);
70 QDBusInterface* mDBusInterface;