diff options
author | Peter Williams <peterw@src.gnome.org> | 2000-08-18 01:42:21 +0800 |
---|---|---|
committer | Peter Williams <peterw@src.gnome.org> | 2000-08-18 01:42:21 +0800 |
commit | 7cf30eb79276d4f255c1d603e2c203bb054cf50e (patch) | |
tree | 687a003be1d0fbcc0ff06eccd900a04c38ad7aa0 /mail/message-list.c | |
parent | b3f1da4f99afadb51862fe732d66b72437224b99 (diff) | |
download | gsoc2013-evolution-7cf30eb79276d4f255c1d603e2c203bb054cf50e.tar.gz gsoc2013-evolution-7cf30eb79276d4f255c1d603e2c203bb054cf50e.tar.zst gsoc2013-evolution-7cf30eb79276d4f255c1d603e2c203bb054cf50e.zip |
Filtering on demand! booyeah!
svn path=/trunk/; revision=4864
Diffstat (limited to 'mail/message-list.c')
-rw-r--r-- | mail/message-list.c | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/mail/message-list.c b/mail/message-list.c index f9772fa7b0..7499cbb651 100644 --- a/mail/message-list.c +++ b/mail/message-list.c @@ -71,6 +71,7 @@ static gint on_right_click (ETableScrolled *table, gint row, gint col, GdkEvent static void on_double_click (ETableScrolled *table, gint row, MessageList *list); static void select_msg (MessageList *message_list, gint row); static char *filter_date (const void *data); +static void nuke_uids (GtkObject *o); static struct { char **image_base; @@ -591,6 +592,8 @@ message_list_init (GtkObject *object) ml_tree_is_cell_editable, message_list); e_tree_model_root_node_set_visible ((ETreeModel *)message_list->table_model, FALSE); + gtk_signal_connect (GTK_OBJECT (message_list->table_model), "destroy", + (GtkSignalFunc) nuke_uids, NULL); message_list_init_renderers (message_list); message_list_init_header (message_list); @@ -846,6 +849,23 @@ build_subtree (MessageList *ml, ETreePath *parent, } } +static gboolean +nuke_uids_cb (GNode *node, gpointer data) +{ + g_free (e_tree_model_node_get_data (E_TREE_MODEL (data), node)); + return FALSE; +} + +static void +nuke_uids (GtkObject *o) +{ + ETreeModel *etm = E_TREE_MODEL (o); + + g_node_traverse (etm->root, G_IN_ORDER, + G_TRAVERSE_ALL, 0, + nuke_uids_cb, etm); +} + static void build_flat (MessageList *ml, GPtrArray *uids) { |