00001 #ifndef __Q_IBUS_PROP_LIST_H_
00002 #define __Q_IBUS_PROP_LIST_H_
00003
00004 #include "qibusserializable.h"
00005 #include "qibusproperty.h"
00006 #include "qibustext.h"
00007
00008 namespace IBus {
00009
00010 class Property;
00011 class PropList;
00012 typedef Pointer<PropList> PropListPointer;
00013 typedef Pointer<Property> PropertyPointer;
00014
00015 class PropList: public Serializable
00016 {
00017 Q_OBJECT;
00018
00019 public:
00020 PropList () {}
00021 ~PropList () {}
00022
00023 public:
00024 virtual bool serialize (QDBusArgument &argument);
00025 virtual bool deserialize (const QDBusArgument &argument);
00026
00027 public :
00028 bool appendProperty (const PropertyPointer &prop);
00029 bool updateProperty (const PropertyPointer &prop);
00030
00031 private:
00032 QVector<PropertyPointer> m_props;
00033
00034 IBUS_SERIALIZABLE
00035 };
00036
00037 };
00038
00039 #endif