![]() |
![]() |
![]() |
IBus Reference Manual | ![]() |
---|---|---|---|---|
Top | Description | Object Hierarchy |
#define ibus_serializable_set_attachment (o, k, v) #define ibus_serializable_get_attachment (o, k, v) #define ibus_serializable_remove_attachment (o, k) gboolean (*IBusSerializableSerializeFunc) (IBusSerializable *object, IBusMessageIter *iter); gboolean (*IBusSerializableDeserializeFunc) (IBusSerializable *object, IBusMessageIter *iter); gboolean (*IBusSerializableCopyFunc) (IBusSerializable *dest, const IBusSerializable *src); IBusSerializable; IBusSerializable * ibus_serializable_new (void); gboolean ibus_serializable_set_qattachment (IBusSerializable *object, GQuark key, const GValue *value); const GValue * ibus_serializable_get_qattachment (IBusSerializable *object, GQuark key); void ibus_serializable_remove_qattachment (IBusSerializable *object, GQuark key); IBusSerializable * ibus_serializable_copy (IBusSerializable *object); gboolean ibus_serializable_serialize (IBusSerializable *object, IBusMessageIter *iter); IBusSerializable * ibus_serializable_deserialize (IBusMessageIter *iter);
GObject +----GInitiallyUnowned +----IBusObject +----IBusSerializable +----IBusHotkeyProfile +----IBusText +----IBusAttribute +----IBusAttrList +----IBusEngineDesc +----IBusLookupTable +----IBusComponent +----IBusProperty +----IBusPropList +----IBusObservedPath
An IBusSerializable is an IBus object which can be serialized, that is, to be to and from an IBusMessage.
This class is to be extended by other class that requires serialization. An extended class should overrides following methods:
serialize(object,iter)
: for serialize.
deserialize(object,iter)
: for deserialize.
copy(desc,src)
: for copy between IBusSerializable.
See IBusSerializableSerializeFunc()
, IBusSerializableDeserializeFunc()
, IBusSerializableCopyFunc()
for function prototype.
#define ibus_serializable_set_attachment(o, k, v)
Attach a value to an IBusSerializable.
This macro is an convenient wrapper of ibus_serializable_set_qattachment()
.
|
An IBusSerializable. |
|
String formatted key for indexing value. |
|
Value to be attached. Should be also serializable. |
#define ibus_serializable_get_attachment(o, k, v)
Get a value from attachment of an IBusSerializable.
This macro is an convenient wrapper of ibus_serializable_get_qattachment()
.
|
An IBusSerializable. |
|
String formatted key for indexing value. |
|
Value to be attached. Should be also serializable. |
#define ibus_serializable_remove_attachment(o, k)
Remove a value from attachment of an IBusSerializable.
This macro is an convenient wrapper of ibus_serializable_remove_qattachment()
.
|
An IBusSerializable. |
|
String formatted key for indexing value. |
gboolean (*IBusSerializableSerializeFunc) (IBusSerializable *object, IBusMessageIter *iter);
Prototype of serialize function. Serialize function convert an IBusSerializable to IBusMessageIter. Returns a gboolean value which indicates whether the conversion is success. Return TRUE if succeed.
|
An IBusSerializable. |
|
An IBusMessageIter. |
Returns : |
TRUE if succeed; FALSE otherwise. |
gboolean (*IBusSerializableDeserializeFunc) (IBusSerializable *object, IBusMessageIter *iter);
Prototype of deserialize function. Deserialize function convert an IBusMessageIter to IBusSerializable. Returns a gboolean value which indicates whether the conversion is success.
|
An IBusSerializable. |
|
An IBusMessageIter. |
Returns : |
TRUE if succeed; FALSE otherwise. |
gboolean (*IBusSerializableCopyFunc) (IBusSerializable *dest, const IBusSerializable *src);
Prototype of copy function. Copy function copy from source IBusSerializable to the destination one. Returns a gboolean value which indicates whether the copying is success.
|
The destination IBusSerializable. |
|
A source IBusMessageIter. |
Returns : |
TRUE if succeed; FALSE otherwise. |
typedef struct _IBusSerializable IBusSerializable;
All the fields in the IBusSerializable structure are private to the IBusSerializable and should never be accessed directly.
IBusSerializable * ibus_serializable_new (void);
Creates a new instance of an IBusSerializable.
Returns : |
a new instance of IBusSerializable. |
gboolean ibus_serializable_set_qattachment (IBusSerializable *object, GQuark key, const GValue *value);
Attach a value to an IBusSerializable. The value should be serializable as well. Basic type such as integer, string are deemed to be serializable.
see_also
: ibus_serializable_set_attachment()
.
|
An IBusSerializable. |
|
String formatted key for indexing value. |
|
Value to be attached. Should be also serializable. |
Returns : |
TRUE if succeed; FALSE otherwise. |
const GValue * ibus_serializable_get_qattachment (IBusSerializable *object, GQuark key);
Get a value from attachment of an IBusSerializable.
see_also
: ibus_serializable_set_attachment()
.
|
An IBusSerializable. |
|
String formatted key for indexing value. |
Returns : |
The attached value; or NULL if fail to retrieve the value. |
void ibus_serializable_remove_qattachment (IBusSerializable *object, GQuark key);
Remove a value from attachment of an IBusSerializable.
see_also
: ibus_serializable_remove_attachment()
.
|
An IBusSerializable. |
|
String formatted key for indexing value. |
IBusSerializable * ibus_serializable_copy (IBusSerializable *object);
Clone an IBusSerializable. The copy method should be implemented in extended class.
see_also
: IBusSerializableCopyFunc()
.
|
An IBusSerializable. |
Returns : |
A newly allocated clone object; or NULL if object is not serializable.
|
gboolean ibus_serializable_serialize (IBusSerializable *object, IBusMessageIter *iter);
Serialize an IBusSerializable to an IBusMessageIter. The serialize method should be implemented in extended class.
see_also
: IBusSerializableCopyFunc()
.
|
An IBusSerializable. |
|
An IBusMessageIter. |
Returns : |
TRUE if succeed; FALSE otherwise. |
IBusSerializable * ibus_serializable_deserialize (IBusMessageIter *iter);
Deserialize an IBusMessageIter to an IBusSerializable/ The deserialize method should be implemented in extended class.
see_also
: IBusSerializableCopyFunc()
.
|
An IBusMessageIter. |
Returns : |
The deserialized IBusSerializable. |