48
41
#include <telepathy-glib/dbus-properties-mixin.h>
50
43
enum <a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinFlags" title="enum TpDBusPropertiesMixinFlags">TpDBusPropertiesMixinFlags</a>;
44
#define <a class="link" href="telepathy-glib-dbus-properties-mixin.html#TP-TYPE-DBUS-PROPERTIES-MIXIN-FLAGS:CAPS" title="TP_TYPE_DBUS_PROPERTIES_MIXIN_FLAGS">TP_TYPE_DBUS_PROPERTIES_MIXIN_FLAGS</a>
51
45
<a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinIfaceInfo" title="TpDBusPropertiesMixinIfaceInfo">TpDBusPropertiesMixinIfaceInfo</a>;
52
46
<a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinPropInfo" title="TpDBusPropertiesMixinPropInfo">TpDBusPropertiesMixinPropInfo</a>;
53
47
<span class="returnvalue">void</span> <a class="link" href="telepathy-glib-dbus-properties-mixin.html#tp-svc-interface-set-dbus-properties-info" title="tp_svc_interface_set_dbus_properties_info ()">tp_svc_interface_set_dbus_properties_info</a>
54
(<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Type-Information.html#GType"><span class="returnvalue">GType</span></a> g_interface,
55
<a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinIfaceInfo" title="TpDBusPropertiesMixinIfaceInfo"><span class="returnvalue">TpDBusPropertiesMixinIfaceInfo</span></a> *info);
48
(<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Type-Information.html#GType"><span class="type">GType</span></a> g_interface</code></em>,
49
<em class="parameter"><code><a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinIfaceInfo" title="TpDBusPropertiesMixinIfaceInfo"><span class="type">TpDBusPropertiesMixinIfaceInfo</span></a> *info</code></em>);
57
51
<a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinClass" title="TpDBusPropertiesMixinClass">TpDBusPropertiesMixinClass</a>;
58
52
<a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinIfaceImpl" title="TpDBusPropertiesMixinIfaceImpl">TpDBusPropertiesMixinIfaceImpl</a>;
59
53
<a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinPropImpl" title="TpDBusPropertiesMixinPropImpl">TpDBusPropertiesMixinPropImpl</a>;
60
<span class="returnvalue">void</span> (<a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinGetter" title="TpDBusPropertiesMixinGetter ()">*TpDBusPropertiesMixinGetter</a>) (<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *object,
61
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> iface,
62
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> name,
63
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *value,
64
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> getter_data);
54
<span class="returnvalue">void</span> (<a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinGetter" title="TpDBusPropertiesMixinGetter ()">*TpDBusPropertiesMixinGetter</a>) (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
55
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> iface</code></em>,
56
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> name</code></em>,
57
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
58
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> getter_data</code></em>);
65
59
<span class="returnvalue">void</span> <a class="link" href="telepathy-glib-dbus-properties-mixin.html#tp-dbus-properties-mixin-getter-gobject-properties" title="tp_dbus_properties_mixin_getter_gobject_properties ()">tp_dbus_properties_mixin_getter_gobject_properties</a>
66
(<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *object,
67
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> iface,
68
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> name,
69
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *value,
70
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> getter_data);
71
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> (<a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinSetter" title="TpDBusPropertiesMixinSetter ()">*TpDBusPropertiesMixinSetter</a>) (<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *object,
72
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> iface,
73
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> name,
74
const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *value,
75
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> setter_data,
76
<a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="returnvalue">GError</span></a> **error);
77
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="telepathy-glib-dbus-properties-mixin.html#tp-dbus-properties-mixin-setter-gobject-properties" title="tp_dbus_properties_mixin_setter_gobject_properties ()">tp_dbus_properties_mixin_setter_gobject_properties</a>
78
(<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *object,
79
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> iface,
80
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> name,
81
const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *value,
82
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> setter_data,
83
<a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="returnvalue">GError</span></a> **error);
84
<span class="returnvalue">void</span> <a class="link" href="telepathy-glib-dbus-properties-mixin.html#tp-dbus-properties-mixin-class-init" title="tp_dbus_properties_mixin_class_init ()">tp_dbus_properties_mixin_class_init</a> (<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObjectClass"><span class="returnvalue">GObjectClass</span></a> *cls,
85
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gsize"><span class="returnvalue">gsize</span></a> offset);
60
(<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
61
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> iface</code></em>,
62
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> name</code></em>,
63
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
64
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> getter_data</code></em>);
65
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> (<a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinSetter" title="TpDBusPropertiesMixinSetter ()">*TpDBusPropertiesMixinSetter</a>) (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
66
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> iface</code></em>,
67
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> name</code></em>,
68
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
69
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> setter_data</code></em>,
70
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
71
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="telepathy-glib-dbus-properties-mixin.html#tp-dbus-properties-mixin-setter-gobject-properties" title="tp_dbus_properties_mixin_setter_gobject_properties ()">tp_dbus_properties_mixin_setter_gobject_properties</a>
72
(<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
73
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> iface</code></em>,
74
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> name</code></em>,
75
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
76
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> setter_data</code></em>,
77
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
78
<span class="returnvalue">void</span> <a class="link" href="telepathy-glib-dbus-properties-mixin.html#tp-dbus-properties-mixin-class-init" title="tp_dbus_properties_mixin_class_init ()">tp_dbus_properties_mixin_class_init</a> (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a> *cls</code></em>,
79
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gsize"><span class="type">gsize</span></a> offset</code></em>);
86
80
<span class="returnvalue">void</span> <a class="link" href="telepathy-glib-dbus-properties-mixin.html#tp-dbus-properties-mixin-implement-interface" title="tp_dbus_properties_mixin_implement_interface ()">tp_dbus_properties_mixin_implement_interface</a>
87
(<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObjectClass"><span class="returnvalue">GObjectClass</span></a> *cls,
88
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> iface,
89
<a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinGetter" title="TpDBusPropertiesMixinGetter ()"><span class="returnvalue">TpDBusPropertiesMixinGetter</span></a> getter,
90
<a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinSetter" title="TpDBusPropertiesMixinSetter ()"><span class="returnvalue">TpDBusPropertiesMixinSetter</span></a> setter,
91
<a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinPropImpl" title="TpDBusPropertiesMixinPropImpl"><span class="returnvalue">TpDBusPropertiesMixinPropImpl</span></a> *props);
92
<span class="returnvalue">void</span> <a class="link" href="telepathy-glib-dbus-properties-mixin.html#tp-dbus-properties-mixin-iface-init" title="tp_dbus_properties_mixin_iface_init ()">tp_dbus_properties_mixin_iface_init</a> (<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> g_iface,
93
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> iface_data);
94
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="telepathy-glib-dbus-properties-mixin.html#tp-dbus-properties-mixin-get" title="tp_dbus_properties_mixin_get ()">tp_dbus_properties_mixin_get</a> (<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *self,
95
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *interface_name,
96
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *property_name,
97
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *value,
98
<a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="returnvalue">GError</span></a> **error);
99
<a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> * <a class="link" href="telepathy-glib-dbus-properties-mixin.html#tp-dbus-properties-mixin-make-properties-hash" title="tp_dbus_properties_mixin_make_properties_hash ()">tp_dbus_properties_mixin_make_properties_hash</a>
100
(<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *object,
101
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *first_interface,
102
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *first_property,
81
(<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a> *cls</code></em>,
82
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> iface</code></em>,
83
<em class="parameter"><code><a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinGetter" title="TpDBusPropertiesMixinGetter ()"><span class="type">TpDBusPropertiesMixinGetter</span></a> getter</code></em>,
84
<em class="parameter"><code><a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinSetter" title="TpDBusPropertiesMixinSetter ()"><span class="type">TpDBusPropertiesMixinSetter</span></a> setter</code></em>,
85
<em class="parameter"><code><a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinPropImpl" title="TpDBusPropertiesMixinPropImpl"><span class="type">TpDBusPropertiesMixinPropImpl</span></a> *props</code></em>);
86
<span class="returnvalue">void</span> <a class="link" href="telepathy-glib-dbus-properties-mixin.html#tp-dbus-properties-mixin-iface-init" title="tp_dbus_properties_mixin_iface_init ()">tp_dbus_properties_mixin_iface_init</a> (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> g_iface</code></em>,
87
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> iface_data</code></em>);
88
<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> <a class="link" href="telepathy-glib-dbus-properties-mixin.html#tp-dbus-properties-mixin-get" title="tp_dbus_properties_mixin_get ()">tp_dbus_properties_mixin_get</a> (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *self</code></em>,
89
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *interface_name</code></em>,
90
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *property_name</code></em>,
91
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
92
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);
93
<a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> * <a class="link" href="telepathy-glib-dbus-properties-mixin.html#tp-dbus-properties-mixin-make-properties-hash" title="tp_dbus_properties_mixin_make_properties_hash ()">tp_dbus_properties_mixin_make_properties_hash</a>
94
(<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
95
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_interface</code></em>,
96
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property</code></em>,
97
<em class="parameter"><code>...</code></em>);
106
100
<div class="refsect1" title="Description">
313
327
In addition to the documented fields, there are four pointers which must
314
be initialized to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
328
be initialized to <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
317
331
This structure must either be statically allocated, or duplicated and never
318
freed, so it always remains valid.</p>
332
freed, so it always remains valid.
319
334
<div class="variablelist"><table border="0">
320
335
<col align="left" valign="top">
323
<td><p><span class="term">const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="TpDBusPropertiesMixinIfaceImpl.name"></a>name</code></em>;</span></p></td>
324
<td> The name of the interface
338
<td><p><span class="term">const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *<em class="structfield"><code><a name="TpDBusPropertiesMixinIfaceImpl.name"></a>name</code></em>;</span></p></td>
339
<td>The name of the interface
328
343
<td><p><span class="term"><a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinGetter" title="TpDBusPropertiesMixinGetter ()"><span class="type">TpDBusPropertiesMixinGetter</span></a> <em class="structfield"><code><a name="TpDBusPropertiesMixinIfaceImpl.getter"></a>getter</code></em>;</span></p></td>
329
<td> A callback to get the current value of the property, to which
344
<td>A callback to get the current value of the property, to which
330
345
the <em class="parameter"><code>getter_data</code></em> from each property implementation will be passed
334
349
<td><p><span class="term"><a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinSetter" title="TpDBusPropertiesMixinSetter ()"><span class="type">TpDBusPropertiesMixinSetter</span></a> <em class="structfield"><code><a name="TpDBusPropertiesMixinIfaceImpl.setter"></a>setter</code></em>;</span></p></td>
335
<td> A callback to set a new value for the property, to which
350
<td>A callback to set a new value for the property, to which
336
351
the <em class="parameter"><code>setter_data</code></em> from each property implementation will be passed
340
355
<td><p><span class="term"><a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinPropImpl" title="TpDBusPropertiesMixinPropImpl"><span class="type">TpDBusPropertiesMixinPropImpl</span></a> *<em class="structfield"><code><a name="TpDBusPropertiesMixinIfaceImpl.props"></a>props</code></em>;</span></p></td>
341
<td> An array of property implementations, terminated by one with
342
<em class="parameter"><code>name</code></em> equal to <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
356
<td>An array of property implementations, terminated by one with
357
<em class="parameter"><code>name</code></em> equal to <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
391
407
<div class="refsect2" title="TpDBusPropertiesMixinGetter ()">
392
408
<a name="TpDBusPropertiesMixinGetter"></a><h3>TpDBusPropertiesMixinGetter ()</h3>
393
<pre class="programlisting"><span class="returnvalue">void</span> (*TpDBusPropertiesMixinGetter) (<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *object,
394
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> iface,
395
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> name,
396
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *value,
397
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> getter_data);</pre>
409
<pre class="programlisting"><span class="returnvalue">void</span> (*TpDBusPropertiesMixinGetter) (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
410
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> iface</code></em>,
411
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> name</code></em>,
412
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
413
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> getter_data</code></em>);</pre>
399
415
Signature of a callback used to get the value of a property.
402
418
For simplicity, in this mixin we don't allow getting a property to fail;
403
implementations must always be prepared to return *something*.</p>
419
implementations must always be prepared to return *something*.
404
421
<div class="variablelist"><table border="0">
405
422
<col align="left" valign="top">
408
425
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
409
<td> The exported object with the properties
426
<td>The exported object with the properties
413
430
<td><p><span class="term"><em class="parameter"><code>iface</code></em> :</span></p></td>
414
<td> A quark representing the D-Bus interface name
431
<td>A quark representing the D-Bus interface name
418
435
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
419
<td> A quark representing the D-Bus property name
436
<td>A quark representing the D-Bus property name
423
440
<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
424
<td> A GValue pre-initialized to the right type, into which to put
441
<td>A GValue pre-initialized to the right type, into which to put
429
446
<td><p><span class="term"><em class="parameter"><code>getter_data</code></em> :</span></p></td>
430
<td> The getter_data from the <a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinPropImpl" title="TpDBusPropertiesMixinPropImpl"><span class="type">TpDBusPropertiesMixinPropImpl</span></a>
447
<td>The getter_data from the <a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinPropImpl" title="TpDBusPropertiesMixinPropImpl"><span class="type">TpDBusPropertiesMixinPropImpl</span></a>
437
454
<div class="refsect2" title="tp_dbus_properties_mixin_getter_gobject_properties ()">
438
455
<a name="tp-dbus-properties-mixin-getter-gobject-properties"></a><h3>tp_dbus_properties_mixin_getter_gobject_properties ()</h3>
439
456
<pre class="programlisting"><span class="returnvalue">void</span> tp_dbus_properties_mixin_getter_gobject_properties
440
(<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *object,
441
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> iface,
442
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> name,
443
<a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *value,
444
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> getter_data);</pre>
457
(<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
458
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> iface</code></em>,
459
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> name</code></em>,
460
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
461
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> getter_data</code></em>);</pre>
446
463
An implementation of <a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinGetter" title="TpDBusPropertiesMixinGetter ()"><span class="type">TpDBusPropertiesMixinGetter</span></a> which assumes that
447
the <em class="parameter"><code>getter_data</code></em> is the name of a readable <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> property of an
448
appropriate type, and uses it for the value of the D-Bus property.</p>
464
the <em class="parameter"><code>getter_data</code></em> is the name of a readable <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> property of an
465
appropriate type, and uses it for the value of the D-Bus property.
449
467
<div class="variablelist"><table border="0">
450
468
<col align="left" valign="top">
453
471
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
454
<td> The exported object with the properties
472
<td>The exported object with the properties
458
476
<td><p><span class="term"><em class="parameter"><code>iface</code></em> :</span></p></td>
459
<td> A quark representing the D-Bus interface name
477
<td>A quark representing the D-Bus interface name
463
481
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
464
<td> A quark representing the D-Bus property name
482
<td>A quark representing the D-Bus property name
468
486
<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
469
<td> A GValue pre-initialized to the right type, into which to put
487
<td>A GValue pre-initialized to the right type, into which to put
474
492
<td><p><span class="term"><em class="parameter"><code>getter_data</code></em> :</span></p></td>
475
<td> The getter_data from the <a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinPropImpl" title="TpDBusPropertiesMixinPropImpl"><span class="type">TpDBusPropertiesMixinPropImpl</span></a>,
493
<td>The getter_data from the <a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinPropImpl" title="TpDBusPropertiesMixinPropImpl"><span class="type">TpDBusPropertiesMixinPropImpl</span></a>,
476
494
which must be a string containing the GObject property's name
483
501
<div class="refsect2" title="TpDBusPropertiesMixinSetter ()">
484
502
<a name="TpDBusPropertiesMixinSetter"></a><h3>TpDBusPropertiesMixinSetter ()</h3>
485
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> (*TpDBusPropertiesMixinSetter) (<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *object,
486
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> iface,
487
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> name,
488
const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *value,
489
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> setter_data,
490
<a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="returnvalue">GError</span></a> **error);</pre>
503
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> (*TpDBusPropertiesMixinSetter) (<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
504
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> iface</code></em>,
505
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> name</code></em>,
506
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
507
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> setter_data</code></em>,
508
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
492
Signature of a callback used to get the value of a property.</p>
510
Signature of a callback used to get the value of a property.
493
512
<div class="variablelist"><table border="0">
494
513
<col align="left" valign="top">
497
516
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
498
<td> The exported object with the properties
517
<td>The exported object with the properties
502
521
<td><p><span class="term"><em class="parameter"><code>iface</code></em> :</span></p></td>
503
<td> A quark representing the D-Bus interface name
522
<td>A quark representing the D-Bus interface name
507
526
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
508
<td> A quark representing the D-Bus property name
527
<td>A quark representing the D-Bus property name
512
531
<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
513
<td> The new value for the property
532
<td>The new value for the property
517
536
<td><p><span class="term"><em class="parameter"><code>setter_data</code></em> :</span></p></td>
518
<td> The setter_data from the <a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinPropImpl" title="TpDBusPropertiesMixinPropImpl"><span class="type">TpDBusPropertiesMixinPropImpl</span></a>
537
<td>The setter_data from the <a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinPropImpl" title="TpDBusPropertiesMixinPropImpl"><span class="type">TpDBusPropertiesMixinPropImpl</span></a>
522
541
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
523
<td> Used to return an error on failure
542
<td>Used to return an error on failure
527
546
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
528
<td> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success, <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> (setting <em class="parameter"><code>error</code></em>) on failure
547
<td> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> on success, <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#FALSE:CAPS"><code class="literal">FALSE</code></a> (setting <em class="parameter"><code>error</code></em>) on failure
535
554
<div class="refsect2" title="tp_dbus_properties_mixin_setter_gobject_properties ()">
536
555
<a name="tp-dbus-properties-mixin-setter-gobject-properties"></a><h3>tp_dbus_properties_mixin_setter_gobject_properties ()</h3>
537
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> tp_dbus_properties_mixin_setter_gobject_properties
538
(<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *object,
539
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> iface,
540
<a href="http://library.gnome.org/devel/glib/unstable/glib-Quarks.html#GQuark"><span class="returnvalue">GQuark</span></a> name,
541
const <a href="http://library.gnome.org/devel/gobject/unstable/gobject-Generic-values.html#GValue"><span class="returnvalue">GValue</span></a> *value,
542
<a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gpointer"><span class="returnvalue">gpointer</span></a> setter_data,
543
<a href="http://library.gnome.org/devel/glib/unstable/glib-Error-Reporting.html#GError"><span class="returnvalue">GError</span></a> **error);</pre>
556
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a> tp_dbus_properties_mixin_setter_gobject_properties
557
(<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
558
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> iface</code></em>,
559
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Quarks.html#GQuark"><span class="type">GQuark</span></a> name</code></em>,
560
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/gobject/gobject-Generic-values.html#GValue"><span class="type">GValue</span></a> *value</code></em>,
561
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"><span class="type">gpointer</span></a> setter_data</code></em>,
562
<em class="parameter"><code><a href="/usr/share/gtk-doc/html/glib/glib-Error-Reporting.html#GError"><span class="type">GError</span></a> **error</code></em>);</pre>
545
564
An implementation of <a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinSetter" title="TpDBusPropertiesMixinSetter ()"><span class="type">TpDBusPropertiesMixinSetter</span></a> which assumes that the
546
<em class="parameter"><code>setter_data</code></em> is the name of a writable <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> property of an appropriate
547
type, and sets that property to the given value.</p>
565
<em class="parameter"><code>setter_data</code></em> is the name of a writable <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> property of an appropriate
566
type, and sets that property to the given value.
548
568
<div class="variablelist"><table border="0">
549
569
<col align="left" valign="top">
552
572
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
553
<td> The exported object with the properties
573
<td>The exported object with the properties
557
577
<td><p><span class="term"><em class="parameter"><code>iface</code></em> :</span></p></td>
558
<td> A quark representing the D-Bus interface name
578
<td>A quark representing the D-Bus interface name
562
582
<td><p><span class="term"><em class="parameter"><code>name</code></em> :</span></p></td>
563
<td> A quark representing the D-Bus property name
583
<td>A quark representing the D-Bus property name
567
587
<td><p><span class="term"><em class="parameter"><code>value</code></em> :</span></p></td>
568
<td> The new value for the property
588
<td>The new value for the property
572
592
<td><p><span class="term"><em class="parameter"><code>setter_data</code></em> :</span></p></td>
573
<td> The setter_data from the <a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinPropImpl" title="TpDBusPropertiesMixinPropImpl"><span class="type">TpDBusPropertiesMixinPropImpl</span></a>,
593
<td>The setter_data from the <a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinPropImpl" title="TpDBusPropertiesMixinPropImpl"><span class="type">TpDBusPropertiesMixinPropImpl</span></a>,
574
594
which must be a string containing the GObject property's name
578
598
<td><p><span class="term"><em class="parameter"><code>error</code></em> :</span></p></td>
583
603
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
584
<td> <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>
604
<td> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a>
674
695
interface, only the implementations from the subclass S will be used,
675
696
regardless of whether the implementations in C and/or S were set up by
676
697
this function or via the array <em class="parameter"><code>interfaces</code></em> in the
677
<a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinClass" title="TpDBusPropertiesMixinClass"><span class="type">TpDBusPropertiesMixinClass</span></a>.</p>
698
<a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinClass" title="TpDBusPropertiesMixinClass"><span class="type">TpDBusPropertiesMixinClass</span></a>.
678
700
<div class="variablelist"><table border="0">
679
701
<col align="left" valign="top">
682
704
<td><p><span class="term"><em class="parameter"><code>cls</code></em> :</span></p></td>
683
<td> a subclass of <a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a>
705
<td>a subclass of <a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObjectClass"><span class="type">GObjectClass</span></a>
687
709
<td><p><span class="term"><em class="parameter"><code>iface</code></em> :</span></p></td>
688
<td> a quark representing the the name of the interface to implement
710
<td>a quark representing the the name of the interface to implement
692
714
<td><p><span class="term"><em class="parameter"><code>getter</code></em> :</span></p></td>
693
<td> a callback to get properties on this interface, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if they
715
<td>a callback to get properties on this interface, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if they
694
716
are all write-only
698
720
<td><p><span class="term"><em class="parameter"><code>setter</code></em> :</span></p></td>
699
<td> a callback to set properties on this interface, or <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if they
721
<td>a callback to set properties on this interface, or <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a> if they
700
722
are all read-only
704
726
<td><p><span class="term"><em class="parameter"><code>props</code></em> :</span></p></td>
705
<td> an array of <a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinPropImpl" title="TpDBusPropertiesMixinPropImpl"><span class="type">TpDBusPropertiesMixinPropImpl</span></a> representing individual
706
properties, terminated by one with <em class="parameter"><code>name</code></em> == <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
727
<td>an array of <a class="link" href="telepathy-glib-dbus-properties-mixin.html#TpDBusPropertiesMixinPropImpl" title="TpDBusPropertiesMixinPropImpl"><span class="type">TpDBusPropertiesMixinPropImpl</span></a> representing individual
728
properties, terminated by one with <em class="parameter"><code>name</code></em> == <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>
791
815
<div class="refsect2" title="tp_dbus_properties_mixin_make_properties_hash ()">
792
816
<a name="tp-dbus-properties-mixin-make-properties-hash"></a><h3>tp_dbus_properties_mixin_make_properties_hash ()</h3>
793
<pre class="programlisting"><a href="http://library.gnome.org/devel/glib/unstable/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> * tp_dbus_properties_mixin_make_properties_hash
794
(<a href="http://library.gnome.org/devel/gobject/unstable/gobject-The-Base-Object-Type.html#GObject"><span class="returnvalue">GObject</span></a> *object,
795
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *first_interface,
796
const <a href="http://library.gnome.org/devel/glib/unstable/glib-Basic-Types.html#gchar"><span class="returnvalue">gchar</span></a> *first_property,
817
<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Hash-Tables.html#GHashTable"><span class="returnvalue">GHashTable</span></a> * tp_dbus_properties_mixin_make_properties_hash
818
(<em class="parameter"><code><a href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#GObject"><span class="type">GObject</span></a> *object</code></em>,
819
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_interface</code></em>,
820
<em class="parameter"><code>const <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a> *first_property</code></em>,
821
<em class="parameter"><code>...</code></em>);</pre>
799
823
Retrieves the values of several D-Bus properties from an object, and builds
800
824
a hash mapping the fully-qualified name of the property to its value. This
801
825
is equivalent to calling <a class="link" href="telepathy-glib-dbus-properties-mixin.html#tp-dbus-properties-mixin-get" title="tp_dbus_properties_mixin_get ()"><code class="function">tp_dbus_properties_mixin_get()</code></a> for each property
802
826
and building the table yourself, with the proviso that this function will
803
<a href="http://library.gnome.org/devel/glib/unstable/glib-Testing.html#g-assert"><code class="function">g_assert()</code></a> if retrieving a property fails (for instance, because it does not
827
<a href="/usr/share/gtk-doc/html/glib/glib-Testing.html#g-assert"><code class="function">g_assert()</code></a> if retrieving a property fails (for instance, because it does not
807
831
Additional keys and values can be inserted into the returned hash table;
808
832
if this is done, the inserted keys and values will be freed when the
809
hash table is destroyed. The keys must be allocated with <a href="http://library.gnome.org/devel/glib/unstable/glib-String-Utility-Functions.html#g-strdup"><code class="function">g_strdup()</code></a> or
833
hash table is destroyed. The keys must be allocated with <a href="/usr/share/gtk-doc/html/glib/glib-String-Utility-Functions.html#g-strdup"><code class="function">g_strdup()</code></a> or
810
834
equivalent, and the values must be slice-allocated (for instance with
811
835
<a class="link" href="telepathy-glib-util.html#tp-g-value-slice-new-string" title="tp_g_value_slice_new_string ()"><code class="function">tp_g_value_slice_new_string()</code></a> or a similar function).
814
838
Note that in particular, <a class="link" href="telepathy-glib-asv.html#tp-asv-set-string" title="tp_asv_set_string ()"><code class="function">tp_asv_set_string()</code></a> and similar functions should
815
not be used with this hash table.</p>
839
not be used with this hash table.
816
841
<div class="variablelist"><table border="0">
817
842
<col align="left" valign="top">
820
845
<td><p><span class="term"><em class="parameter"><code>object</code></em> :</span></p></td>
821
<td> an object which uses the D-Bus properties mixin
846
<td>an object which uses the D-Bus properties mixin
825
850
<td><p><span class="term"><em class="parameter"><code>first_interface</code></em> :</span></p></td>
826
<td> the interface of the first property to be retrieved
851
<td>the interface of the first property to be retrieved
830
855
<td><p><span class="term"><em class="parameter"><code>first_property</code></em> :</span></p></td>
831
<td> the name of the first property to be retrieved
856
<td>the name of the first property to be retrieved
835
860
<td><p><span class="term"><em class="parameter"><code>...</code></em> :</span></p></td>
836
<td> more (interface name, property name) pairs, terminated by <a href="http://library.gnome.org/devel/glib/unstable/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.
861
<td>more (interface name, property name) pairs, terminated by <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL:CAPS"><code class="literal">NULL</code></a>.