aboutsummaryrefslogtreecommitdiffstats
path: root/widgets/table/e-tree-sorted.c
diff options
context:
space:
mode:
authorChristopher James Lahey <clahey@ximian.com>2001-11-01 07:42:08 +0800
committerChris Lahey <clahey@src.gnome.org>2001-11-01 07:42:08 +0800
commit71a63f1498b615c98a543138532cbbfc64cd616f (patch)
tree413f3a87e737bd79661cf82567846ddc1f3d88c1 /widgets/table/e-tree-sorted.c
parentf553e16d8fc2a714a7f735ac2f7ee496afa37a57 (diff)
downloadgsoc2013-evolution-71a63f1498b615c98a543138532cbbfc64cd616f.tar
gsoc2013-evolution-71a63f1498b615c98a543138532cbbfc64cd616f.tar.gz
gsoc2013-evolution-71a63f1498b615c98a543138532cbbfc64cd616f.tar.bz2
gsoc2013-evolution-71a63f1498b615c98a543138532cbbfc64cd616f.tar.lz
gsoc2013-evolution-71a63f1498b615c98a543138532cbbfc64cd616f.tar.xz
gsoc2013-evolution-71a63f1498b615c98a543138532cbbfc64cd616f.tar.zst
gsoc2013-evolution-71a63f1498b615c98a543138532cbbfc64cd616f.zip
Bumped the version number to 0.16.99.0 and GAL_CURRENT to 17.
2001-10-31 Christopher James Lahey <clahey@ximian.com> * configure.in: Bumped the version number to 0.16.99.0 and GAL_CURRENT to 17. From gal/e-table/ChangeLog: 2001-10-31 Christopher James Lahey <clahey@ximian.com> * e-table-item.c (eti_unfreeze): Check for unfreezing past 0 here and give a warning. (eti_add_table_model): Call eti_freeze here since eti_table_model_changed will call unfreeze. * e-tree-memory.c (e_tree_memory_node_remove): Send deleted signal after freeing the child. * e-tree-model.c, e-tree-model.h: Added node_deleted signal. removed/deleted signals will always come in pairs in that order with a single pre_change for both of them. * e-tree-selection-model.c (etsm_node_deleted): Clear the tree on deleted here instead of on removed. * e-tree-sorted.c (ets_proxy_node_deleted): Chain deleted here. Chains to NULL node which is fine for now. svn path=/trunk/; revision=14557
Diffstat (limited to 'widgets/table/e-tree-sorted.c')
-rw-r--r--widgets/table/e-tree-sorted.c13
1 files changed, 13 insertions, 0 deletions
diff --git a/widgets/table/e-tree-sorted.c b/widgets/table/e-tree-sorted.c
index 21b49b339c..56bd3d3db6 100644
--- a/widgets/table/e-tree-sorted.c
+++ b/widgets/table/e-tree-sorted.c
@@ -99,6 +99,7 @@ struct ETreeSortedPriv {
int tree_model_node_col_changed_id;
int tree_model_node_inserted_id;
int tree_model_node_removed_id;
+ int tree_model_node_deleted_id;
int sort_info_changed_id;
int sort_idle_id;
@@ -611,6 +612,8 @@ ets_destroy (GtkObject *object)
priv->tree_model_node_inserted_id);
gtk_signal_disconnect (GTK_OBJECT (priv->source),
priv->tree_model_node_removed_id);
+ gtk_signal_disconnect (GTK_OBJECT (priv->source),
+ priv->tree_model_node_deleted_id);
gtk_object_unref (GTK_OBJECT (priv->source));
priv->source = NULL;
@@ -622,6 +625,7 @@ ets_destroy (GtkObject *object)
priv->tree_model_node_col_changed_id = 0;
priv->tree_model_node_inserted_id = 0;
priv->tree_model_node_removed_id = 0;
+ priv->tree_model_node_deleted_id = 0;
}
if (priv->sort_info) {
@@ -1154,6 +1158,12 @@ ets_proxy_node_removed (ETreeModel *etm, ETreePath parent, ETreePath child, int
}
static void
+ets_proxy_node_deleted (ETreeModel *etm, ETreePath child, ETreeSorted *ets)
+{
+ e_tree_model_node_deleted(E_TREE_MODEL(ets), NULL);
+}
+
+static void
ets_sort_info_changed (ETableSortInfo *sort_info, ETreeSorted *ets)
{
schedule_resort(ets, ets->priv->root, TRUE, TRUE);
@@ -1256,6 +1266,7 @@ e_tree_sorted_init (GtkObject *object)
priv->tree_model_node_col_changed_id = 0;
priv->tree_model_node_inserted_id = 0;
priv->tree_model_node_removed_id = 0;
+ priv->tree_model_node_deleted_id = 0;
priv->sort_info_changed_id = 0;
priv->sort_idle_id = 0;
@@ -1300,6 +1311,8 @@ e_tree_sorted_construct (ETreeSorted *ets, ETreeModel *source, ETableHeader *ful
GTK_SIGNAL_FUNC (ets_proxy_node_inserted), ets);
ets->priv->tree_model_node_removed_id = gtk_signal_connect (GTK_OBJECT (source), "node_removed",
GTK_SIGNAL_FUNC (ets_proxy_node_removed), ets);
+ ets->priv->tree_model_node_deleted_id = gtk_signal_connect (GTK_OBJECT (source), "node_deleted",
+ GTK_SIGNAL_FUNC (ets_proxy_node_deleted), ets);
ets->priv->sort_info_changed_id = gtk_signal_connect (GTK_OBJECT (sort_info), "sort_info_changed",
GTK_SIGNAL_FUNC (ets_sort_info_changed), ets);