summaryrefslogtreecommitdiff
path: root/src/vcard-manager.h
diff options
context:
space:
mode:
authorSimon McVittie <simon.mcvittie@collabora.co.uk>2010-02-24 18:02:12 +0000
committerSimon McVittie <simon.mcvittie@collabora.co.uk>2010-02-24 18:02:12 +0000
commit409ed0ac22a244ecc900f683b2e7b107872820f3 (patch)
treeb2d357f6cfc231cd1dc9859dae1e5de5ee4db969 /src/vcard-manager.h
parent4e645be80875fd0ee7410f5407231c87f8616ccf (diff)
GabbleVCardManagerEditInfo: convert child elements into a list
This allows them to be repeated (multiple LINEs in a LABEL), and preserves order (important for LABELs!)
Diffstat (limited to 'src/vcard-manager.h')
-rw-r--r--src/vcard-manager.h22
1 files changed, 5 insertions, 17 deletions
diff --git a/src/vcard-manager.h b/src/vcard-manager.h
index 9fb88951b..f5c524998 100644
--- a/src/vcard-manager.h
+++ b/src/vcard-manager.h
@@ -85,23 +85,6 @@ typedef enum {
GABBLE_VCARD_EDIT_DELETE
} GabbleVCardEditType;
-struct _GabbleVCardManagerEditInfo {
- /* name of element to edit */
- gchar *element_name;
-
- /* value of element to edit or NULL if no value should be used */
- gchar *element_value;
-
- /* list of elements (hash gchar/gchar) to edit/add */
- GHashTable *to_edit;
-
- /* If REPLACE, the first element with this name (if any) will be updated;
- * if APPEND, an element with this name will be added;
- * if DELETE, all elements with this name will be removed.
- */
- GabbleVCardEditType edit_type;
-};
-
typedef void (*GabbleVCardManagerCb)(GabbleVCardManager *self,
GabbleVCardManagerRequest *request,
TpHandle handle,
@@ -163,6 +146,11 @@ GabbleVCardManagerEditInfo *gabble_vcard_manager_edit_info_new (
const gchar *element_value,
GabbleVCardEditType edit_type,
...) G_GNUC_NULL_TERMINATED;
+
+void gabble_vcard_manager_edit_info_add_child (
+ GabbleVCardManagerEditInfo *edit_info, const gchar *key,
+ const gchar *value);
+
void gabble_vcard_manager_edit_info_free (GabbleVCardManagerEditInfo *info);
/* For unit tests only */