diff options
author | Xavier Claessens <xclaesse@gmail.com> | 2010-05-30 16:39:19 +0200 |
---|---|---|
committer | Xavier Claessens <xclaesse@gmail.com> | 2010-06-03 15:02:18 +0200 |
commit | a29c29040335b22836b259e5783128db381db7df (patch) | |
tree | f6bc9e9623c4512722efe907e1f48b8af55b9854 /telepathy-glib/connection.h | |
parent | dc4bb11a62450935dd56656b13883910b0deb4a5 (diff) | |
download | telepathy-glib-a29c29040335b22836b259e5783128db381db7df.tar.gz |
Add ContactInfo support on TpConnection
Diffstat (limited to 'telepathy-glib/connection.h')
-rw-r--r-- | telepathy-glib/connection.h | 60 |
1 files changed, 60 insertions, 0 deletions
diff --git a/telepathy-glib/connection.h b/telepathy-glib/connection.h index d4761669e..2f57a8ccf 100644 --- a/telepathy-glib/connection.h +++ b/telepathy-glib/connection.h @@ -63,6 +63,51 @@ TpAvatarRequirements * tp_avatar_requirements_copy ( const TpAvatarRequirements *self); void tp_avatar_requirements_destroy (TpAvatarRequirements *self); +typedef struct _TpContactInfoFieldSpec TpContactInfoFieldSpec; +struct _TpContactInfoFieldSpec +{ + gchar *name; + gchar **parameters; + TpContactInfoFieldFlags flags; + guint max; + /*<private>*/ + gpointer priv; +}; + +#define TP_TYPE_CONTACT_INFO_FIELD_SPEC (tp_contact_info_field_spec_get_type ()) +GType tp_contact_info_field_spec_get_type (void); +TpContactInfoFieldSpec *tp_contact_info_field_spec_new (const gchar *name, + GStrv parameters, TpContactInfoFieldFlags flags, guint max); +TpContactInfoFieldSpec *tp_contact_info_field_spec_copy ( + TpContactInfoFieldSpec *self); +void tp_contact_info_field_spec_free (TpContactInfoFieldSpec *self); + +#define TP_TYPE_CONTACT_INFO_SPEC_LIST (tp_contact_info_spec_list_get_type ()) +GType tp_contact_info_spec_list_get_type (void); +GList *tp_contact_info_spec_list_copy (GList *list); +void tp_contact_info_spec_list_free (GList *list); + +typedef struct _TpContactInfoField TpContactInfoField; +struct _TpContactInfoField +{ + gchar *field_name; + gchar **parameters; + gchar **field_value; + /*<private>*/ + gpointer priv; +}; + +#define TP_TYPE_CONTACT_INFO_FIELD (tp_contact_info_field_get_type ()) +GType tp_contact_info_field_get_type (void); +TpContactInfoField *tp_contact_info_field_new (const gchar *field_name, + GStrv parameters, GStrv field_value); +TpContactInfoField *tp_contact_info_field_copy (TpContactInfoField *self); +void tp_contact_info_field_free (TpContactInfoField *self); + +#define TP_TYPE_CONTACT_INFO_LIST (tp_contact_info_list_get_type ()) +GType tp_contact_info_list_get_type (void); +GList *tp_contact_info_list_copy (GList *list); +void tp_contact_info_list_free (GList *list); typedef struct _TpConnection TpConnection; typedef struct _TpConnectionPrivate TpConnectionPrivate; @@ -120,6 +165,17 @@ TpCapabilities * tp_connection_get_capabilities (TpConnection *self); TpAvatarRequirements * tp_connection_get_avatar_requirements ( TpConnection *self); +TpContactInfoFlags tp_connection_get_contact_info_flags (TpConnection *self); + +GList *tp_connection_get_contact_info_supported_fields (TpConnection *self); + +void tp_connection_set_contact_info_async (TpConnection *self, + GList *info, GAsyncReadyCallback callback, + gpointer user_data); + +gboolean tp_connection_set_contact_info_finish (TpConnection *self, + GAsyncResult *result, GError **error); + gboolean tp_connection_is_ready (TpConnection *self); #ifndef TP_DISABLE_DEPRECATED @@ -171,6 +227,10 @@ GQuark tp_connection_get_feature_quark_capabilities (void) G_GNUC_CONST; (tp_connection_get_feature_quark_avatar_requirements ()) GQuark tp_connection_get_feature_quark_avatar_requirements (void) G_GNUC_CONST; +#define TP_CONNECTION_FEATURE_CONTACT_INFO \ + (tp_connection_get_feature_quark_contact_info ()) +GQuark tp_connection_get_feature_quark_contact_info (void) G_GNUC_CONST; + /* connection-handles.c */ typedef void (*TpConnectionHoldHandlesCb) (TpConnection *connection, |