Mercurial > pidgin
comparison src/request.h @ 7909:5be22af4ebfc
[gaim-migrate @ 8569]
Reworked the list field API a bit. Items now have data associated with them
(which is not automatically freed by the API).
committer: Tailor Script <tailor@pidgin.im>
author | Christian Hammond <chipx86@chipx86.com> |
---|---|
date | Sun, 21 Dec 2003 20:51:05 +0000 |
parents | 1d0bc32f8038 |
children | 96b71ea64386 |
comparison
equal
deleted
inserted
replaced
7908:ad4841411ada | 7909:5be22af4ebfc |
---|---|
102 } choice; | 102 } choice; |
103 | 103 |
104 struct | 104 struct |
105 { | 105 { |
106 GList *items; | 106 GList *items; |
107 GHashTable *item_data; | |
107 GList *selected; | 108 GList *selected; |
108 | 109 |
109 gboolean multiple_selection; | 110 gboolean multiple_selection; |
110 | 111 |
111 } list; | 112 } list; |
703 /*@{*/ | 704 /*@{*/ |
704 | 705 |
705 /** | 706 /** |
706 * Creates a multiple list item field. | 707 * Creates a multiple list item field. |
707 * | 708 * |
708 * @param id The field ID. | 709 * @param id The field ID. |
709 * @param text The optional label of the field. | 710 * @param text The optional label of the field. |
710 * @param items The list of items. | |
711 * | 711 * |
712 * @return The new field. | 712 * @return The new field. |
713 */ | 713 */ |
714 GaimRequestField *gaim_request_field_list_new(const char *id, const char *text, | 714 GaimRequestField *gaim_request_field_list_new(const char *id, const char *text); |
715 GList *items); | |
716 | |
717 /** | |
718 * Sets the list of items in a list field. | |
719 * | |
720 * The items are not copied. The actual list passed is assigned to the field. | |
721 * | |
722 * @param field The list field. | |
723 * @param items The items. | |
724 */ | |
725 void gaim_request_field_list_set_items(GaimRequestField *field, GList *items); | |
726 | 715 |
727 /** | 716 /** |
728 * Sets whether or not a list field allows multiple selection. | 717 * Sets whether or not a list field allows multiple selection. |
729 * | 718 * |
730 * @param field The list field. | 719 * @param field The list field. |
743 */ | 732 */ |
744 gboolean gaim_request_field_list_get_multi_select( | 733 gboolean gaim_request_field_list_get_multi_select( |
745 const GaimRequestField *field); | 734 const GaimRequestField *field); |
746 | 735 |
747 /** | 736 /** |
737 * Returns the data for a particular item. | |
738 * | |
739 * @param field The list field. | |
740 * @param item The item text. | |
741 * | |
742 * @return The data associated with the item. | |
743 */ | |
744 void *gaim_request_field_list_get_data(const GaimRequestField *field, | |
745 const char *text); | |
746 | |
747 /** | |
748 * Adds an item to a list field. | 748 * Adds an item to a list field. |
749 * | 749 * |
750 * @param field The list field. | 750 * @param field The list field. |
751 * @param item The list item. | 751 * @param item The list item. |
752 */ | 752 * @param data The associated data. |
753 void gaim_request_field_list_add(GaimRequestField *field, const char *item); | 753 */ |
754 void gaim_request_field_list_add(GaimRequestField *field, | |
755 const char *item, void *data); | |
754 | 756 |
755 /** | 757 /** |
756 * Adds a selected item to the list field. | 758 * Adds a selected item to the list field. |
757 * | 759 * |
758 * @param field The field. | 760 * @param field The field. |