From 918cfb0b28bb47ae0ffd3f921e7399aa75b61530 Mon Sep 17 00:00:00 2001 From: Christopher James Lahey Date: Mon, 8 May 2000 05:22:28 +0000 Subject: Made a minimal number of things be destroyed and recreated when updating a 2000-05-08 Christopher James Lahey * gui/minicard/e-minicard-view.c, gui/minicard/e-minicard.c, gui/minicard/e-minicard.h, gui/minicard/e-reflow-sorted.c, gui/minicard/e-reflow-sorted.h: Made a minimal number of things be destroyed and recreated when updating a field. svn path=/trunk/; revision=2904 --- addressbook/gui/minicard/e-minicard-view.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) (limited to 'addressbook/gui/minicard/e-minicard-view.c') diff --git a/addressbook/gui/minicard/e-minicard-view.c b/addressbook/gui/minicard/e-minicard-view.c index 812fee47f0..13f3d01f26 100644 --- a/addressbook/gui/minicard/e-minicard-view.c +++ b/addressbook/gui/minicard/e-minicard-view.c @@ -123,11 +123,13 @@ static void modify_card(EBookView *book_view, const GList *cards, EMinicardView *view) { for (; cards; cards = g_list_next(cards)) { - GnomeCanvasItem *item = gnome_canvas_item_new(GNOME_CANVAS_GROUP(view), - e_minicard_get_type(), - "card", cards->data, - NULL); - e_reflow_sorted_replace_item(E_REFLOW_SORTED(view), item); + ECard *card = cards->data; + gchar *id = e_card_get_id(card); + GnomeCanvasItem *item = e_reflow_sorted_get_item(E_REFLOW_SORTED(view), id); + gnome_canvas_item_set(item, + "card", card, + NULL); + e_reflow_sorted_reorder_item(E_REFLOW_SORTED(view), id); } } -- cgit v1.2.3