summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Otte <otte@redhat.com>2019-10-14 06:22:41 +0200
committerBenjamin Otte <otte@redhat.com>2019-10-26 08:51:17 +0200
commit778a11748b8104a9e2adc7333cc561eaacace52a (patch)
tree22ebeb1f65524dd770b04a23f6dd43bc9c3fe103
parent98941cd696639df799f00e2a26bcb5c7ace7f4e8 (diff)
downloadgtk+-778a11748b8104a9e2adc7333cc561eaacace52a.tar.gz
inspector: Use a GtkTreeExpander in the object tree
-rw-r--r--gtk/inspector/object-tree.c37
1 files changed, 7 insertions, 30 deletions
diff --git a/gtk/inspector/object-tree.c b/gtk/inspector/object-tree.c
index 66af2c2fdb..3aca968b8c 100644
--- a/gtk/inspector/object-tree.c
+++ b/gtk/inspector/object-tree.c
@@ -46,6 +46,7 @@
#include "gtksizegroup.h"
#include "gtktextview.h"
#include "gtktogglebutton.h"
+#include "gtktreeexpander.h"
#include "gtktreelistmodel.h"
#include "gtktreeview.h"
#include "gtktreeselection.h"
@@ -1019,7 +1020,6 @@ gtk_inspector_object_tree_create_list_widget (gpointer row_item,
GtkInspectorObjectTree *wt = user_data;
gpointer item;
GtkWidget *row, *box, *column, *child;
- guint depth;
item = gtk_tree_list_row_get_item (row_item);
@@ -1036,37 +1036,14 @@ gtk_inspector_object_tree_create_list_widget (gpointer row_item,
box = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
gtk_container_add (GTK_CONTAINER (row), box);
- column = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
- gtk_size_group_add_widget (wt->priv->type_size_group, column);
- gtk_container_add (GTK_CONTAINER (box), column);
-
/* expander */
- depth = gtk_tree_list_row_get_depth (row_item);
- if (depth > 0)
- {
- child = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
- gtk_widget_set_size_request (child, 16 * depth, 0);
- gtk_container_add (GTK_CONTAINER (column), child);
- }
- if (gtk_tree_list_row_is_expandable (row_item))
- {
- GtkWidget *title, *arrow;
-
- child = g_object_new (GTK_TYPE_BOX, "css-name", "expander", NULL);
-
- title = g_object_new (GTK_TYPE_TOGGLE_BUTTON, "css-name", "title", NULL);
- gtk_button_set_relief (GTK_BUTTON (title), GTK_RELIEF_NONE);
- g_object_bind_property (row_item, "expanded", title, "active", G_BINDING_BIDIRECTIONAL | G_BINDING_SYNC_CREATE);
- gtk_container_add (GTK_CONTAINER (child), title);
+ child = gtk_tree_expander_new ();
+ gtk_tree_expander_set_list_row (GTK_TREE_EXPANDER (child), row_item);
+ gtk_size_group_add_widget (wt->priv->type_size_group, child);
+ gtk_container_add (GTK_CONTAINER (box), child);
- arrow = gtk_icon_new ("arrow");
- gtk_container_add (GTK_CONTAINER (title), arrow);
- }
- else
- {
- child = gtk_image_new (); /* empty whatever */
- }
- gtk_container_add (GTK_CONTAINER (column), child);
+ column = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0);
+ gtk_tree_expander_set_child (GTK_TREE_EXPANDER (child), column);
/* 1st column: type name */
child = gtk_label_new (G_OBJECT_TYPE_NAME (item));