# HG changeset patch # User Evan Schoenberg # Date 1167102908 0 # Node ID c95a05393dc3ba7edb5cd7ff203b916ca6f2be16 # Parent faa6afdcea39c9d05fcd4b3ef8dd3f90da3b8bf8 [gaim-migrate @ 18056] Fix a problem with [18053] and add gaim_notify_user_info_remove_entry() committer: Tailor Script diff -r faa6afdcea39 -r c95a05393dc3 libgaim/notify.c --- a/libgaim/notify.c Tue Dec 26 02:47:13 2006 +0000 +++ b/libgaim/notify.c Tue Dec 26 03:15:08 2006 +0000 @@ -475,7 +475,7 @@ return NULL; } -static GaimNotifyUserInfoEntry * +GaimNotifyUserInfoEntry * gaim_notify_user_info_entry_new(const char *label, const char *value) { GaimNotifyUserInfoEntry *user_info_entry; @@ -621,7 +621,7 @@ } void -gaim_notify_user_info_entry_set_value(GaimNotifyUserInfoEntry *user_info_entry, GaimNotifyUserInfoEntryType type) +gaim_notify_user_info_entry_set_type(GaimNotifyUserInfoEntry *user_info_entry, GaimNotifyUserInfoEntryType type) { g_return_if_fail(user_info_entry != NULL); @@ -647,6 +647,15 @@ } void +gaim_notify_user_info_remove_entry(GaimNotifyUserInfo *user_info, GaimNotifyUserInfoEntry *user_info_entry) +{ + g_return_if_fail(user_info != NULL); + g_return_if_fail(user_info_entry != NULL); + + user_info->user_info_entries = g_list_remove(user_info->user_info_entries, entry); +} + +void gaim_notify_user_info_add_section_header(GaimNotifyUserInfo *user_info, const char *label) { GaimNotifyUserInfoEntry *entry; diff -r faa6afdcea39 -r c95a05393dc3 libgaim/notify.h --- a/libgaim/notify.h Tue Dec 26 02:47:13 2006 +0000 +++ b/libgaim/notify.h Tue Dec 26 03:15:08 2006 +0000 @@ -448,6 +448,8 @@ * GaimNotifyUserInfoEntry are allowed in the list. If a GaimNotifyUserInfoEntry item is added to the list, * it should not be g_free()'d by the caller; GaimNotifyUserInfo will g_free it when destroyed. * + * To remove a GaimNotifyUserInfoEntry, use gaim_notify_user_info_remove_entry(). Do not use the GList directly. + * * @param user_info The GaimNotifyUserInfo * * @result A GList of GaimNotifyUserInfoEntry objects @@ -463,7 +465,8 @@ char *gaim_notify_user_info_get_text_with_newline(GaimNotifyUserInfo *user_info, const char *newline); /** - * Add a label/value pair to a GaimNotifyUserInfo object. GaimNotifyUserInfo keeps track of the order in which pairs are added. + * Add a label/value pair to a GaimNotifyUserInfo object. + * GaimNotifyUserInfo keeps track of the order in which pairs are added. * * @param user_info The GaimNotifyUserInfo * @param label A label, which for example might be displayed by a UI with a colon after it ("Status:"). Do not include a colon. @@ -487,6 +490,13 @@ void gaim_notify_user_info_prepend_pair(GaimNotifyUserInfo *user_info, const char *label, const char *value); /** + * Remove a GaimNotifyUserInfoEntry from a GaimNotifyUserInfo object + * + * @param user_info The GaimNotifyUserInfo + * @param user_info_entry The GaimNotifyUserInfoEntry + */ +void gaim_notify_user_info_remove_entry(GaimNotifyUserInfo *user_info, GaimNotifyUserInfoEntry *user_info_entry); +/** * Create a new GaimNotifyUserInfoEntry * * If added to a GaimNotifyUserInfo object, this should not be free()'d, as GaimNotifyUserInfo will do so