--- a/gnttree.c Wed Jan 23 00:54:25 2008 +0000
+++ b/gnttree.c Wed Jan 23 21:45:43 2008 +0000
@@ -39,6 +39,7 @@
@@ -59,6 +60,7 @@
@@ -338,7 +340,7 @@
row->isselected ? 'X' : ' ');
- else if (row->parent == NULL && row->child)
+ else if (find_depth(row) < tree->priv->expander_level && row->child) @@ -951,6 +953,11 @@
_gnt_tree_init_internals(tree, g_value_get_int(value));
+ if (tree->priv->expander_level == g_value_get_int(value)) + tree->priv->expander_level = g_value_get_int(value); + g_object_notify(obj, "expander-level"); @@ -965,6 +972,9 @@
g_value_set_int(value, tree->ncol);
+ g_value_set_int(value, tree->priv->expander_level); @@ -995,6 +1005,14 @@
G_PARAM_READWRITE|G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB
+ g_object_class_install_property(gclass, + g_param_spec_int("expander-level", "Expander level", + "Number of levels to show expander in the tree.", + G_PARAM_READWRITE|G_PARAM_STATIC_NAME|G_PARAM_STATIC_NICK|G_PARAM_STATIC_BLURB signals[SIG_SELECTION_CHANGED] =
g_signal_new("selection-changed",
@@ -1618,6 +1636,7 @@
GntWidget *widget = g_object_new(GNT_TYPE_TREE,