comparison src/request.c @ 7962:cc77bd88cd72

[gaim-migrate @ 8639] Honestly, I don't know *what* I was thinking. We no longer delete all items in a multi-select list when trying to clear the selection. Sorry, faceprint :) committer: Tailor Script <tailor@pidgin.im>
author Christian Hammond <chipx86@chipx86.com>
date Wed, 31 Dec 2003 07:47:01 +0000
parents 5be22af4ebfc
children a5c70e43ee43
comparison
equal deleted inserted replaced
7961:aca39f227ea0 7962:cc77bd88cd72
725 gaim_request_field_list_clear_selected(GaimRequestField *field) 725 gaim_request_field_list_clear_selected(GaimRequestField *field)
726 { 726 {
727 g_return_if_fail(field != NULL); 727 g_return_if_fail(field != NULL);
728 g_return_if_fail(field->type == GAIM_REQUEST_FIELD_LIST); 728 g_return_if_fail(field->type == GAIM_REQUEST_FIELD_LIST);
729 729
730 if (field->u.list.items != NULL)
731 {
732 g_list_foreach(field->u.list.items, (GFunc)g_free, NULL);
733 g_list_free(field->u.list.items);
734 field->u.list.items = NULL;
735 }
736
737 g_hash_table_destroy(field->u.list.item_data);
738
739 field->u.list.item_data = g_hash_table_new_full(g_str_hash, g_str_equal,
740 g_free, NULL);
741 }
742
743 void
744 gaim_request_field_list_set_selected(GaimRequestField *field, GList *items)
745 {
746 g_return_if_fail(field != NULL);
747 g_return_if_fail(items != NULL);
748 g_return_if_fail(field->type == GAIM_REQUEST_FIELD_LIST);
749
750 if (field->u.list.selected != NULL) 730 if (field->u.list.selected != NULL)
751 { 731 {
752 g_list_foreach(field->u.list.selected, (GFunc)g_free, NULL); 732 g_list_foreach(field->u.list.selected, (GFunc)g_free, NULL);
753 g_list_free(field->u.list.selected); 733 g_list_free(field->u.list.selected);
754 field->u.list.selected = NULL; 734 field->u.list.selected = NULL;
755 } 735 }
736 }
737
738 void
739 gaim_request_field_list_set_selected(GaimRequestField *field, GList *items)
740 {
741 g_return_if_fail(field != NULL);
742 g_return_if_fail(items != NULL);
743 g_return_if_fail(field->type == GAIM_REQUEST_FIELD_LIST);
744
745 gaim_request_field_list_clear_selected(field);
756 746
757 field->u.list.selected = items; 747 field->u.list.selected = items;
758 } 748 }
759 749
760 const GList * 750 const GList *