summaryrefslogtreecommitdiff
path: root/gtk/gtktreemodel.c
diff options
context:
space:
mode:
authorJonathan Blandford <jrb@redhat.com>2002-09-11 19:52:31 +0000
committerJonathan Blandford <jrb@src.gnome.org>2002-09-11 19:52:31 +0000
commite8215b332540323dd3895c15d569e69c51ea462b (patch)
tree21e679acae41b387c9997ea687b79613f662d80a /gtk/gtktreemodel.c
parent429409d40f2072be84d41088f1828840480d92c4 (diff)
downloadgtk+-e8215b332540323dd3895c15d569e69c51ea462b.tar.gz
Make GtkTreeRowReference a boxed type.
Wed Sep 11 15:48:38 2002 Jonathan Blandford <jrb@redhat.com> * gtk/gtktreemodel.c (gtk_tree_row_reference_get_type): Make GtkTreeRowReference a boxed type. * gtk/gtkliststore.c (gtk_list_store_finalize): free the root list. * gtk/gtktreestore.c (gtk_tree_store_finalize): free the root nodes.
Diffstat (limited to 'gtk/gtktreemodel.c')
-rw-r--r--gtk/gtktreemodel.c23
1 files changed, 23 insertions, 0 deletions
diff --git a/gtk/gtktreemodel.c b/gtk/gtktreemodel.c
index 842e09c318..f10f97438f 100644
--- a/gtk/gtktreemodel.c
+++ b/gtk/gtktreemodel.c
@@ -1322,6 +1322,20 @@ static void gtk_tree_row_reference_unref_path (GtkTreePath *path,
gint depth);
+GType
+gtk_tree_row_reference_get_type (void)
+{
+ static GType our_type = 0;
+
+ if (our_type == 0)
+ our_type = g_boxed_type_register_static ("GtkTreeRowReference",
+ (GBoxedCopyFunc) gtk_tree_row_reference_copy,
+ (GBoxedFreeFunc) gtk_tree_row_reference_free);
+
+ return our_type;
+}
+
+
#define ROW_REF_DATA_STRING "gtk-tree-row-refs"
struct _GtkTreeRowReference
@@ -1745,6 +1759,15 @@ gtk_tree_row_reference_valid (GtkTreeRowReference *reference)
return TRUE;
}
+
+GtkTreeRowReference *
+gtk_tree_row_reference_copy (GtkTreeRowReference *reference)
+{
+ return gtk_tree_row_reference_new_proxy (reference->proxy,
+ reference->model,
+ reference->path);
+}
+
/**
* gtk_tree_row_reference_free:
* @reference: A #GtkTreeRowReference, or NULL