inspector: More refactoring

Rename widget tree to object tree. It contains plenty of
non-widgets nowadays, after all.
This commit is contained in:
Matthias Clasen 2014-10-10 21:40:53 -04:00
parent 6194c90f74
commit a8dc098699
16 changed files with 142 additions and 138 deletions

View File

@ -38,6 +38,8 @@ libgtkinspector_la_SOURCES = \
misc-info.c \
object-hierarchy.h \
object-hierarchy.c \
object-tree.h \
object-tree.c \
prop-editor.h \
prop-editor.c \
prop-list.h \
@ -54,8 +56,6 @@ libgtkinspector_la_SOURCES = \
size-groups.c \
visual.h \
visual.c \
widget-tree.h \
widget-tree.c \
window.h \
window.c
@ -96,12 +96,12 @@ templates = \
menu.ui \
misc-info.ui \
object-hierarchy.ui \
object-tree.ui \
prop-list.ui \
resource-list.ui \
signals-list.ui \
style-prop-list.ui \
visual.ui \
widget-tree.ui \
window.ui
template_headers = $(templates:.ui=.ui.h)

View File

@ -19,7 +19,7 @@
#include <glib/gi18n-lib.h>
#include "gestures.h"
#include "widget-tree.h"
#include "object-tree.h"
#include "gtksizegroup.h"
#include "gtkcomboboxtext.h"
@ -32,14 +32,14 @@
enum
{
PROP_0,
PROP_WIDGET_TREE
PROP_OBJECT_TREE
};
struct _GtkInspectorGesturesPrivate
{
GtkSizeGroup *sizegroup;
GObject *object;
GtkWidget *widget_tree;
GtkWidget *object_tree;
};
G_DEFINE_TYPE_WITH_PRIVATE (GtkInspectorGestures, gtk_inspector_gestures, GTK_TYPE_BOX)
@ -92,7 +92,7 @@ row_activated (GtkListBox *box,
GObject *gesture;
gesture = G_OBJECT (g_object_get_data (G_OBJECT (row), "gesture"));
gtk_inspector_widget_tree_select_object (GTK_INSPECTOR_WIDGET_TREE (sl->priv->widget_tree),
gtk_inspector_object_tree_select_object (GTK_INSPECTOR_OBJECT_TREE (sl->priv->object_tree),
gesture);
}
@ -223,8 +223,8 @@ get_property (GObject *object,
switch (param_id)
{
case PROP_WIDGET_TREE:
g_value_take_object (value, sl->priv->widget_tree);
case PROP_OBJECT_TREE:
g_value_take_object (value, sl->priv->object_tree);
break;
default:
@ -243,8 +243,8 @@ set_property (GObject *object,
switch (param_id)
{
case PROP_WIDGET_TREE:
sl->priv->widget_tree = g_value_get_object (value);
case PROP_OBJECT_TREE:
sl->priv->object_tree = g_value_get_object (value);
break;
default:
@ -261,8 +261,8 @@ gtk_inspector_gestures_class_init (GtkInspectorGesturesClass *klass)
object_class->get_property = get_property;
object_class->set_property = set_property;
g_object_class_install_property (object_class, PROP_WIDGET_TREE,
g_param_spec_object ("widget-tree", "Widget Tree", "Widget tree",
g_object_class_install_property (object_class, PROP_OBJECT_TREE,
g_param_spec_object ("object-tree", "Widget Tree", "Widget tree",
GTK_TYPE_WIDGET, G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY));
}

View File

@ -33,6 +33,7 @@
#include "menu.h"
#include "misc-info.h"
#include "object-hierarchy.h"
#include "object-tree.h"
#include "prop-list.h"
#include "resource-list.h"
#include "resources.h"
@ -40,7 +41,6 @@
#include "size-groups.h"
#include "style-prop-list.h"
#include "visual.h"
#include "widget-tree.h"
#include "window.h"
void
@ -57,13 +57,13 @@ gtk_inspector_init (void)
g_type_ensure (GTK_TYPE_INSPECTOR_MENU);
g_type_ensure (GTK_TYPE_INSPECTOR_MISC_INFO);
g_type_ensure (GTK_TYPE_INSPECTOR_OBJECT_HIERARCHY);
g_type_ensure (GTK_TYPE_INSPECTOR_OBJECT_TREE);
g_type_ensure (GTK_TYPE_INSPECTOR_PROP_LIST);
g_type_ensure (GTK_TYPE_INSPECTOR_RESOURCE_LIST);
g_type_ensure (GTK_TYPE_INSPECTOR_SIGNALS_LIST);
g_type_ensure (GTK_TYPE_INSPECTOR_STYLE_PROP_LIST);
g_type_ensure (GTK_TYPE_INSPECTOR_SIZE_GROUPS);
g_type_ensure (GTK_TYPE_INSPECTOR_VISUAL);
g_type_ensure (GTK_TYPE_INSPECTOR_WIDGET_TREE);
g_type_ensure (GTK_TYPE_INSPECTOR_WINDOW);
}

View File

@ -25,7 +25,7 @@
#include <glib/gi18n-lib.h>
#include "window.h"
#include "widget-tree.h"
#include "object-tree.h"
#include "gtkstack.h"
#include "gtkmain.h"
@ -208,16 +208,16 @@ static void
select_widget (GtkInspectorWindow *iw,
GtkWidget *widget)
{
GtkInspectorWidgetTree *wt = GTK_INSPECTOR_WIDGET_TREE (iw->widget_tree);
GtkInspectorObjectTree *wt = GTK_INSPECTOR_OBJECT_TREE (iw->object_tree);
GtkTreeIter iter;
iw->selected_widget = widget;
gtk_stack_set_visible_child_name (GTK_STACK (iw->top_stack), "objects");
if (!gtk_inspector_widget_tree_find_object (wt, G_OBJECT (widget), &iter))
gtk_inspector_widget_tree_scan (wt, gtk_widget_get_toplevel (widget));
gtk_inspector_widget_tree_select_object (wt, G_OBJECT (widget));
if (!gtk_inspector_object_tree_find_object (wt, G_OBJECT (widget), &iter))
gtk_inspector_object_tree_scan (wt, gtk_widget_get_toplevel (widget));
gtk_inspector_object_tree_select_object (wt, G_OBJECT (widget));
}
static void

View File

@ -9,12 +9,12 @@
<file compressed="true">menu.ui</file>
<file compressed="true">misc-info.ui</file>
<file compressed="true">object-hierarchy.ui</file>
<file compressed="true">object-tree.ui</file>
<file compressed="true">prop-list.ui</file>
<file compressed="true">style-prop-list.ui</file>
<file compressed="true">resource-list.ui</file>
<file compressed="true">signals-list.ui</file>
<file compressed="true">visual.ui</file>
<file compressed="true">widget-tree.ui</file>
<file compressed="true">window.ui</file>
<file>logo.png</file>
</gresource>

View File

@ -20,7 +20,7 @@
#include "misc-info.h"
#include "window.h"
#include "widget-tree.h"
#include "object-tree.h"
#include "gtktypebuiltins.h"
#include "gtktreeview.h"
@ -29,7 +29,7 @@
#include "gtkframe.h"
struct _GtkInspectorMiscInfoPrivate {
GtkInspectorWidgetTree *widget_tree;
GtkInspectorObjectTree *object_tree;
GObject *object;
@ -50,7 +50,7 @@ struct _GtkInspectorMiscInfoPrivate {
enum
{
PROP_0,
PROP_WIDGET_TREE
PROP_OBJECT_TREE
};
G_DEFINE_TYPE_WITH_PRIVATE (GtkInspectorMiscInfo, gtk_inspector_misc_info, GTK_TYPE_SCROLLED_WINDOW)
@ -127,17 +127,17 @@ show_object (GtkInspectorMiscInfo *sl,
{
GtkTreeIter iter;
g_object_set_data (G_OBJECT (sl->priv->widget_tree), "next-tab", (gpointer)tab);
if (gtk_inspector_widget_tree_find_object (sl->priv->widget_tree, object, &iter))
g_object_set_data (G_OBJECT (sl->priv->object_tree), "next-tab", (gpointer)tab);
if (gtk_inspector_object_tree_find_object (sl->priv->object_tree, object, &iter))
{
gtk_inspector_widget_tree_select_object (sl->priv->widget_tree, object);
gtk_inspector_object_tree_select_object (sl->priv->object_tree, object);
}
else if (GTK_IS_WIDGET (object) &&
gtk_inspector_widget_tree_find_object (sl->priv->widget_tree, G_OBJECT (gtk_widget_get_parent (GTK_WIDGET (object))), &iter))
gtk_inspector_object_tree_find_object (sl->priv->object_tree, G_OBJECT (gtk_widget_get_parent (GTK_WIDGET (object))), &iter))
{
gtk_inspector_widget_tree_append_object (sl->priv->widget_tree, object, &iter, name);
gtk_inspector_widget_tree_select_object (sl->priv->widget_tree, object);
gtk_inspector_object_tree_append_object (sl->priv->object_tree, object, &iter, name);
gtk_inspector_object_tree_select_object (sl->priv->object_tree, object);
}
else
{
@ -301,8 +301,8 @@ get_property (GObject *object,
switch (param_id)
{
case PROP_WIDGET_TREE:
g_value_take_object (value, sl->priv->widget_tree);
case PROP_OBJECT_TREE:
g_value_take_object (value, sl->priv->object_tree);
break;
default:
@ -321,8 +321,8 @@ set_property (GObject *object,
switch (param_id)
{
case PROP_WIDGET_TREE:
sl->priv->widget_tree = g_value_get_object (value);
case PROP_OBJECT_TREE:
sl->priv->object_tree = g_value_get_object (value);
break;
default:
@ -340,8 +340,8 @@ gtk_inspector_misc_info_class_init (GtkInspectorMiscInfoClass *klass)
object_class->get_property = get_property;
object_class->set_property = set_property;
g_object_class_install_property (object_class, PROP_WIDGET_TREE,
g_param_spec_object ("widget-tree", "Widget Tree", "Widget tree",
g_object_class_install_property (object_class, PROP_OBJECT_TREE,
g_param_spec_object ("object-tree", "Object Tree", "Obect tree",
GTK_TYPE_WIDGET, G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY));
gtk_widget_class_set_template_from_resource (widget_class, "/org/gtk/inspector/misc-info.ui");

View File

@ -27,7 +27,7 @@
#include <string.h>
#include "widget-tree.h"
#include "object-tree.h"
#include "prop-list.h"
#include "gtkbuildable.h"
@ -59,12 +59,12 @@ enum
enum
{
WIDGET_CHANGED,
OBJECT_CHANGED,
LAST_SIGNAL
};
struct _GtkInspectorWidgetTreePrivate
struct _GtkInspectorObjectTreePrivate
{
GtkTreeView *tree;
GtkTreeStore *model;
@ -73,13 +73,13 @@ struct _GtkInspectorWidgetTreePrivate
gulong unmap_hook;
};
static guint widget_tree_signals[LAST_SIGNAL] = { 0 };
static guint signals[LAST_SIGNAL] = { 0 };
G_DEFINE_TYPE_WITH_PRIVATE (GtkInspectorWidgetTree, gtk_inspector_widget_tree, GTK_TYPE_BOX)
G_DEFINE_TYPE_WITH_PRIVATE (GtkInspectorObjectTree, gtk_inspector_object_tree, GTK_TYPE_BOX)
static void
on_widget_selected (GtkTreeSelection *selection,
GtkInspectorWidgetTree *wt)
GtkInspectorObjectTree *wt)
{
GObject *object;
GtkTreeIter iter;
@ -94,18 +94,18 @@ on_widget_selected (GtkTreeSelection *selection,
else
object = NULL;
g_signal_emit (wt, widget_tree_signals[WIDGET_CHANGED], 0, object);
g_signal_emit (wt, signals[OBJECT_CHANGED], 0, object);
}
typedef struct
{
GtkInspectorWidgetTree *wt;
GtkInspectorObjectTree *wt;
GObject *object;
GtkTreeRowReference *row;
} ObjectData;
static void
gtk_widget_tree_remove_dead_object (gpointer data, GObject *dead_object)
gtk_object_tree_remove_dead_object (gpointer data, GObject *dead_object)
{
ObjectData *od = data;
@ -130,7 +130,7 @@ object_data_free (gpointer data)
gtk_tree_row_reference_free (od->row);
if (od->object)
g_object_weak_unref (od->object, gtk_widget_tree_remove_dead_object, od);
g_object_weak_unref (od->object, gtk_object_tree_remove_dead_object, od);
g_free (od);
}
@ -141,12 +141,12 @@ map_or_unmap (GSignalInvocationHint *ihint,
const GValue *params,
gpointer data)
{
GtkInspectorWidgetTree *wt = data;
GtkInspectorObjectTree *wt = data;
GtkWidget *widget;
GtkTreeIter iter;
widget = g_value_get_object (params);
if (gtk_inspector_widget_tree_find_object (wt, G_OBJECT (widget), &iter))
if (gtk_inspector_object_tree_find_object (wt, G_OBJECT (widget), &iter))
gtk_tree_store_set (wt->priv->model, &iter,
SENSITIVE, gtk_widget_get_mapped (widget),
-1);
@ -155,11 +155,11 @@ map_or_unmap (GSignalInvocationHint *ihint,
}
static void
gtk_inspector_widget_tree_init (GtkInspectorWidgetTree *wt)
gtk_inspector_object_tree_init (GtkInspectorObjectTree *wt)
{
guint signal_id;
wt->priv = gtk_inspector_widget_tree_get_instance_private (wt);
wt->priv = gtk_inspector_object_tree_get_instance_private (wt);
wt->priv->iters = g_hash_table_new_full (g_direct_hash,
g_direct_equal,
NULL,
@ -173,13 +173,13 @@ gtk_inspector_widget_tree_init (GtkInspectorWidgetTree *wt)
wt->priv->unmap_hook = g_signal_add_emission_hook (signal_id, 0,
map_or_unmap, wt, NULL);
gtk_inspector_widget_tree_append_object (wt, G_OBJECT (gtk_settings_get_default ()), NULL, NULL);
gtk_inspector_object_tree_append_object (wt, G_OBJECT (gtk_settings_get_default ()), NULL, NULL);
}
static void
gtk_inspector_widget_tree_finalize (GObject *object)
gtk_inspector_object_tree_finalize (GObject *object)
{
GtkInspectorWidgetTree *wt = GTK_INSPECTOR_WIDGET_TREE (object);
GtkInspectorObjectTree *wt = GTK_INSPECTOR_OBJECT_TREE (object);
guint signal_id;
g_hash_table_unref (wt->priv->iters);
@ -189,35 +189,35 @@ gtk_inspector_widget_tree_finalize (GObject *object)
signal_id = g_signal_lookup ("unmap", GTK_TYPE_WIDGET);
g_signal_remove_emission_hook (signal_id, wt->priv->unmap_hook);
G_OBJECT_CLASS (gtk_inspector_widget_tree_parent_class)->finalize (object);
G_OBJECT_CLASS (gtk_inspector_object_tree_parent_class)->finalize (object);
}
static void
gtk_inspector_widget_tree_class_init (GtkInspectorWidgetTreeClass *klass)
gtk_inspector_object_tree_class_init (GtkInspectorObjectTreeClass *klass)
{
GObjectClass *object_class = G_OBJECT_CLASS (klass);
GtkWidgetClass *widget_class = GTK_WIDGET_CLASS (klass);
object_class->finalize = gtk_inspector_widget_tree_finalize;
object_class->finalize = gtk_inspector_object_tree_finalize;
widget_tree_signals[WIDGET_CHANGED] =
g_signal_new ("widget-changed",
signals[OBJECT_CHANGED] =
g_signal_new ("object-changed",
G_OBJECT_CLASS_TYPE (klass),
G_SIGNAL_RUN_FIRST | G_SIGNAL_NO_RECURSE,
G_STRUCT_OFFSET(GtkInspectorWidgetTreeClass, widget_changed),
G_STRUCT_OFFSET (GtkInspectorObjectTreeClass, object_changed),
NULL, NULL,
g_cclosure_marshal_VOID__OBJECT,
G_TYPE_NONE, 1, G_TYPE_OBJECT);
gtk_widget_class_set_template_from_resource (widget_class, "/org/gtk/inspector/widget-tree.ui");
gtk_widget_class_bind_template_child_private (widget_class, GtkInspectorWidgetTree, model);
gtk_widget_class_bind_template_child_private (widget_class, GtkInspectorWidgetTree, tree);
gtk_widget_class_set_template_from_resource (widget_class, "/org/gtk/inspector/object-tree.ui");
gtk_widget_class_bind_template_child_private (widget_class, GtkInspectorObjectTree, model);
gtk_widget_class_bind_template_child_private (widget_class, GtkInspectorObjectTree, tree);
gtk_widget_class_bind_template_callback (widget_class, on_widget_selected);
}
typedef struct
{
GtkInspectorWidgetTree *wt;
GtkInspectorObjectTree *wt;
GtkTreeIter *iter;
GObject *parent;
} FindAllData;
@ -228,7 +228,7 @@ child_callback (GtkWidget *widget,
{
FindAllData *d = data;
gtk_inspector_widget_tree_append_object (d->wt, G_OBJECT (widget), d->iter, NULL);
gtk_inspector_object_tree_append_object (d->wt, G_OBJECT (widget), d->iter, NULL);
}
static gboolean
@ -240,7 +240,7 @@ cell_callback (GtkCellRenderer *renderer,
cell_layout = g_object_get_data (d->parent, "gtk-inspector-cell-layout");
g_object_set_data (G_OBJECT (renderer), "gtk-inspector-cell-layout", cell_layout);
gtk_inspector_widget_tree_append_object (d->wt, G_OBJECT (renderer), d->iter, NULL);
gtk_inspector_object_tree_append_object (d->wt, G_OBJECT (renderer), d->iter, NULL);
return FALSE;
}
@ -253,12 +253,12 @@ tag_callback (GtkTextTag *tag,
gchar *name;
g_object_get (tag, "name", &name, NULL);
gtk_inspector_widget_tree_append_object (d->wt, G_OBJECT (tag), d->iter, name);
gtk_inspector_object_tree_append_object (d->wt, G_OBJECT (tag), d->iter, name);
g_free (name);
}
void
gtk_inspector_widget_tree_append_object (GtkInspectorWidgetTree *wt,
gtk_inspector_object_tree_append_object (GtkInspectorObjectTree *wt,
GObject *object,
GtkTreeIter *parent_iter,
const gchar *name)
@ -328,7 +328,7 @@ gtk_inspector_widget_tree_append_object (GtkInspectorWidgetTree *wt,
gtk_tree_path_free (path);
g_hash_table_insert (wt->priv->iters, object, od);
g_object_weak_ref (object, gtk_widget_tree_remove_dead_object, od);
g_object_weak_ref (object, gtk_object_tree_remove_dead_object, od);
g_free (address);
@ -351,14 +351,14 @@ gtk_inspector_widget_tree_append_object (GtkInspectorWidgetTree *wt,
{
GObject *child = G_OBJECT (gtk_tree_model_sort_get_model (GTK_TREE_MODEL_SORT (object)));
if (child)
gtk_inspector_widget_tree_append_object (wt, child, &iter, "model");
gtk_inspector_object_tree_append_object (wt, child, &iter, "model");
}
if (GTK_IS_TREE_MODEL_FILTER (object))
{
GObject *child = G_OBJECT (gtk_tree_model_filter_get_model (GTK_TREE_MODEL_FILTER (object)));
if (child)
gtk_inspector_widget_tree_append_object (wt, child, &iter, "model");
gtk_inspector_object_tree_append_object (wt, child, &iter, "model");
}
if (GTK_IS_MENU_ITEM (object))
@ -367,7 +367,7 @@ gtk_inspector_widget_tree_append_object (GtkInspectorWidgetTree *wt,
submenu = gtk_menu_item_get_submenu (GTK_MENU_ITEM (object));
if (submenu)
gtk_inspector_widget_tree_append_object (wt, G_OBJECT (submenu), &iter, "submenu");
gtk_inspector_object_tree_append_object (wt, G_OBJECT (submenu), &iter, "submenu");
}
if (GTK_IS_COMBO_BOX (object))
@ -377,11 +377,11 @@ gtk_inspector_widget_tree_append_object (GtkInspectorWidgetTree *wt,
popup = gtk_combo_box_get_popup (GTK_COMBO_BOX (object));
if (popup)
gtk_inspector_widget_tree_append_object (wt, G_OBJECT (popup), &iter, "popup");
gtk_inspector_object_tree_append_object (wt, G_OBJECT (popup), &iter, "popup");
child = G_OBJECT (gtk_combo_box_get_model (GTK_COMBO_BOX (object)));
if (child)
gtk_inspector_widget_tree_append_object (wt, child, &iter, "model");
gtk_inspector_object_tree_append_object (wt, child, &iter, "model");
}
if (GTK_IS_TREE_VIEW (object))
@ -391,17 +391,17 @@ gtk_inspector_widget_tree_append_object (GtkInspectorWidgetTree *wt,
child = G_OBJECT (gtk_tree_view_get_model (GTK_TREE_VIEW (object)));
if (child)
gtk_inspector_widget_tree_append_object (wt, child, &iter, "model");
gtk_inspector_object_tree_append_object (wt, child, &iter, "model");
child = G_OBJECT (gtk_tree_view_get_selection (GTK_TREE_VIEW (object)));
if (child)
gtk_inspector_widget_tree_append_object (wt, child, &iter, "selection");
gtk_inspector_object_tree_append_object (wt, child, &iter, "selection");
n_columns = gtk_tree_view_get_n_columns (GTK_TREE_VIEW (object));
for (i = 0; i < n_columns; i++)
{
child = G_OBJECT (gtk_tree_view_get_column (GTK_TREE_VIEW (object), i));
gtk_inspector_widget_tree_append_object (wt, child, &iter, NULL);
gtk_inspector_object_tree_append_object (wt, child, &iter, NULL);
}
}
@ -411,7 +411,7 @@ gtk_inspector_widget_tree_append_object (GtkInspectorWidgetTree *wt,
child = G_OBJECT (gtk_icon_view_get_model (GTK_ICON_VIEW (object)));
if (child)
gtk_inspector_widget_tree_append_object (wt, child, &iter, "model");
gtk_inspector_object_tree_append_object (wt, child, &iter, "model");
}
if (GTK_IS_CELL_AREA (object))
@ -430,7 +430,7 @@ gtk_inspector_widget_tree_append_object (GtkInspectorWidgetTree *wt,
area = gtk_cell_layout_get_area (GTK_CELL_LAYOUT (object));
g_object_set_data (G_OBJECT (area), "gtk-inspector-cell-layout", object);
gtk_inspector_widget_tree_append_object (wt, G_OBJECT (area), &iter, "cell-area");
gtk_inspector_object_tree_append_object (wt, G_OBJECT (area), &iter, "cell-area");
}
if (GTK_IS_TEXT_VIEW (object))
@ -438,7 +438,7 @@ gtk_inspector_widget_tree_append_object (GtkInspectorWidgetTree *wt,
GtkTextBuffer *buffer;
buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (object));
gtk_inspector_widget_tree_append_object (wt, G_OBJECT (buffer), &iter, "buffer");
gtk_inspector_object_tree_append_object (wt, G_OBJECT (buffer), &iter, "buffer");
}
if (GTK_IS_TEXT_BUFFER (object))
@ -446,7 +446,7 @@ gtk_inspector_widget_tree_append_object (GtkInspectorWidgetTree *wt,
GtkTextTagTable *tags;
tags = gtk_text_buffer_get_tag_table (GTK_TEXT_BUFFER (object));
gtk_inspector_widget_tree_append_object (wt, G_OBJECT (tags), &iter, "tag-table");
gtk_inspector_object_tree_append_object (wt, G_OBJECT (tags), &iter, "tag-table");
}
if (GTK_IS_TEXT_TAG_TABLE (object))
@ -481,7 +481,7 @@ gtk_inspector_widget_tree_append_object (GtkInspectorWidgetTree *wt,
for (l = list; l; l = l->next)
{
GObject *controller = l->data;
gtk_inspector_widget_tree_append_object (wt, controller, &iter, phases[i].name);
gtk_inspector_object_tree_append_object (wt, controller, &iter, phases[i].name);
}
g_list_free (list);
}
@ -490,7 +490,7 @@ gtk_inspector_widget_tree_append_object (GtkInspectorWidgetTree *wt,
}
void
gtk_inspector_widget_tree_scan (GtkInspectorWidgetTree *wt,
gtk_inspector_object_tree_scan (GtkInspectorObjectTree *wt,
GtkWidget *window)
{
GtkWidget *inspector_win;
@ -498,12 +498,12 @@ gtk_inspector_widget_tree_scan (GtkInspectorWidgetTree *wt,
gtk_tree_store_clear (wt->priv->model);
g_hash_table_remove_all (wt->priv->iters);
gtk_inspector_widget_tree_append_object (wt, G_OBJECT (gtk_settings_get_default ()), NULL, NULL);
gtk_inspector_object_tree_append_object (wt, G_OBJECT (gtk_settings_get_default ()), NULL, NULL);
if (g_application_get_default ())
gtk_inspector_widget_tree_append_object (wt, G_OBJECT (g_application_get_default ()), NULL, NULL);
gtk_inspector_object_tree_append_object (wt, G_OBJECT (g_application_get_default ()), NULL, NULL);
if (window)
gtk_inspector_widget_tree_append_object (wt, G_OBJECT (window), NULL, NULL);
gtk_inspector_object_tree_append_object (wt, G_OBJECT (window), NULL, NULL);
inspector_win = gtk_widget_get_toplevel (GTK_WIDGET (wt));
toplevels = gtk_window_list_toplevels ();
@ -513,7 +513,7 @@ gtk_inspector_widget_tree_scan (GtkInspectorWidgetTree *wt,
gtk_window_get_window_type (l->data) == GTK_WINDOW_TOPLEVEL &&
l->data != window &&
l->data != inspector_win)
gtk_inspector_widget_tree_append_object (wt, G_OBJECT (l->data), NULL, NULL);
gtk_inspector_object_tree_append_object (wt, G_OBJECT (l->data), NULL, NULL);
}
g_list_free (toplevels);
@ -521,7 +521,7 @@ gtk_inspector_widget_tree_scan (GtkInspectorWidgetTree *wt,
}
gboolean
gtk_inspector_widget_tree_find_object (GtkInspectorWidgetTree *wt,
gtk_inspector_object_tree_find_object (GtkInspectorObjectTree *wt,
GObject *object,
GtkTreeIter *iter)
{
@ -543,12 +543,12 @@ gtk_inspector_widget_tree_find_object (GtkInspectorWidgetTree *wt,
}
void
gtk_inspector_widget_tree_select_object (GtkInspectorWidgetTree *wt,
gtk_inspector_object_tree_select_object (GtkInspectorObjectTree *wt,
GObject *object)
{
GtkTreeIter iter;
if (gtk_inspector_widget_tree_find_object (wt, object, &iter))
if (gtk_inspector_object_tree_find_object (wt, object, &iter))
{
GtkTreePath *path = gtk_tree_model_get_path (GTK_TREE_MODEL (wt->priv->model), &iter);
gtk_tree_view_expand_to_path (GTK_TREE_VIEW (wt->priv->tree), path);

View File

@ -20,51 +20,51 @@
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*/
#ifndef _GTK_INSPECTOR_WIDGET_TREE_H_
#define _GTK_INSPECTOR_WIDGET_TREE_H_
#ifndef _GTK_INSPECTOR_OBJECT_TREE_H_
#define _GTK_INSPECTOR_OBJECT_TREE_H_
#include <gtk/gtkbox.h>
#include <gtk/gtktreemodel.h>
#define GTK_TYPE_INSPECTOR_WIDGET_TREE (gtk_inspector_widget_tree_get_type())
#define GTK_INSPECTOR_WIDGET_TREE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GTK_TYPE_INSPECTOR_WIDGET_TREE, GtkInspectorWidgetTree))
#define GTK_INSPECTOR_WIDGET_TREE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), GTK_TYPE_INSPECTOR_WIDGET_TREE, GtkInspectorWidgetTreeClass))
#define GTK_INSPECTOR_IS_WIDGET_TREE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), GTK_TYPE_INSPECTOR_WIDGET_TREE))
#define GTK_INSPECTOR_IS_WIDGET_TREE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), GTK_TYPE_INSPECTOR_WIDGET_TREE))
#define GTK_INSPECTOR_WIDGET_TREE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), GTK_TYPE_INSPECTOR_WIDGET_TREE, GtkInspectorWidgetTreeClass))
#define GTK_TYPE_INSPECTOR_OBJECT_TREE (gtk_inspector_object_tree_get_type())
#define GTK_INSPECTOR_OBJECT_TREE(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), GTK_TYPE_INSPECTOR_OBJECT_TREE, GtkInspectorObjectTree))
#define GTK_INSPECTOR_OBJECT_TREE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), GTK_TYPE_INSPECTOR_OBJECT_TREE, GtkInspectorObjectTreeClass))
#define GTK_INSPECTOR_IS_OBJECT_TREE(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), GTK_TYPE_INSPECTOR_OBJECT_TREE))
#define GTK_INSPECTOR_IS_OBJECT_TREE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), GTK_TYPE_INSPECTOR_OBJECT_TREE))
#define GTK_INSPECTOR_OBJECT_TREE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), GTK_TYPE_INSPECTOR_OBJECT_TREE, GtkInspectorObjectTreeClass))
typedef struct _GtkInspectorWidgetTreePrivate GtkInspectorWidgetTreePrivate;
typedef struct _GtkInspectorObjectTreePrivate GtkInspectorObjectTreePrivate;
typedef struct _GtkInspectorWidgetTree
typedef struct _GtkInspectorObjectTree
{
GtkBox parent;
GtkInspectorWidgetTreePrivate *priv;
} GtkInspectorWidgetTree;
GtkInspectorObjectTreePrivate *priv;
} GtkInspectorObjectTree;
typedef struct _GtkInspectorWidgetTreeClass
typedef struct _GtkInspectorObjectTreeClass
{
GtkBoxClass parent;
void (*widget_changed) (GtkInspectorWidgetTree *wt,
void (*object_changed) (GtkInspectorObjectTree *wt,
GObject *object);
} GtkInspectorWidgetTreeClass;
} GtkInspectorObjectTreeClass;
G_BEGIN_DECLS
GType gtk_inspector_widget_tree_get_type (void);
GType gtk_inspector_object_tree_get_type (void);
void gtk_inspector_widget_tree_scan (GtkInspectorWidgetTree *wt,
void gtk_inspector_object_tree_scan (GtkInspectorObjectTree *wt,
GtkWidget *window);
void gtk_inspector_widget_tree_select_object (GtkInspectorWidgetTree *wt,
void gtk_inspector_object_tree_select_object (GtkInspectorObjectTree *wt,
GObject *object);
void gtk_inspector_widget_tree_append_object (GtkInspectorWidgetTree *wt,
void gtk_inspector_object_tree_append_object (GtkInspectorObjectTree *wt,
GObject *object,
GtkTreeIter *parent_iter,
const gchar *name);
gboolean gtk_inspector_widget_tree_find_object (GtkInspectorWidgetTree *wt,
gboolean gtk_inspector_object_tree_find_object (GtkInspectorObjectTree *wt,
GObject *object,
GtkTreeIter *iter);

View File

@ -10,7 +10,7 @@
<column type="gboolean"/>
</columns>
</object>
<template class="GtkInspectorWidgetTree" parent="GtkBox">
<template class="GtkInspectorObjectTree" parent="GtkBox">
<property name="visible">True</property>
<property name="orientation">vertical</property>
<child>

View File

@ -0,0 +1,4 @@
N_("Object");
N_("Name");
N_("Label");
N_("Address");

View File

@ -19,7 +19,7 @@
#include <glib/gi18n-lib.h>
#include "prop-editor.h"
#include "widget-tree.h"
#include "object-tree.h"
#include "gtkactionable.h"
#include "gtkadjustment.h"

View File

@ -27,7 +27,7 @@
#include "prop-list.h"
#include "prop-editor.h"
#include "widget-tree.h"
#include "object-tree.h"
#include "gtkcelllayout.h"
#include "gtktreeview.h"
@ -46,7 +46,7 @@ enum
enum
{
PROP_0,
PROP_WIDGET_TREE,
PROP_OBJECT_TREE,
PROP_CHILD_PROPERTIES
};
@ -56,7 +56,7 @@ struct _GtkInspectorPropListPrivate
GtkListStore *model;
GHashTable *prop_iters;
gulong notify_handler_id;
GtkInspectorWidgetTree *widget_tree;
GtkInspectorObjectTree *object_tree;
gboolean child_properties;
GtkTreeViewColumn *attribute_column;
GtkWidget *tree;
@ -88,8 +88,8 @@ get_property (GObject *object,
switch (param_id)
{
case PROP_WIDGET_TREE:
g_value_take_object (value, pl->priv->widget_tree);
case PROP_OBJECT_TREE:
g_value_take_object (value, pl->priv->object_tree);
break;
case PROP_CHILD_PROPERTIES:
@ -112,8 +112,8 @@ set_property (GObject *object,
switch (param_id)
{
case PROP_WIDGET_TREE:
pl->priv->widget_tree = g_value_get_object (value);
case PROP_OBJECT_TREE:
pl->priv->object_tree = g_value_get_object (value);
break;
case PROP_CHILD_PROPERTIES:
@ -139,15 +139,15 @@ show_object (GtkInspectorPropEditor *editor,
popover = gtk_widget_get_ancestor (GTK_WIDGET (editor), GTK_TYPE_POPOVER);
gtk_widget_hide (popover);
g_object_set_data (G_OBJECT (pl->priv->widget_tree), "next-tab", (gpointer)tab);
if (gtk_inspector_widget_tree_find_object (pl->priv->widget_tree, object, &iter))
g_object_set_data (G_OBJECT (pl->priv->object_tree), "next-tab", (gpointer)tab);
if (gtk_inspector_object_tree_find_object (pl->priv->object_tree, object, &iter))
{
gtk_inspector_widget_tree_select_object (pl->priv->widget_tree, object);
gtk_inspector_object_tree_select_object (pl->priv->object_tree, object);
}
else if (gtk_inspector_widget_tree_find_object (pl->priv->widget_tree, pl->priv->object, &iter))
else if (gtk_inspector_object_tree_find_object (pl->priv->object_tree, pl->priv->object, &iter))
{
gtk_inspector_widget_tree_append_object (pl->priv->widget_tree, object, &iter, name);
gtk_inspector_widget_tree_select_object (pl->priv->widget_tree, object);
gtk_inspector_object_tree_append_object (pl->priv->object_tree, object, &iter, name);
gtk_inspector_object_tree_select_object (pl->priv->object_tree, object);
}
else
{
@ -215,8 +215,8 @@ gtk_inspector_prop_list_class_init (GtkInspectorPropListClass *klass)
object_class->get_property = get_property;
object_class->set_property = set_property;
g_object_class_install_property (object_class, PROP_WIDGET_TREE,
g_param_spec_object ("widget-tree", "Widget Tree", "Widget tree",
g_object_class_install_property (object_class, PROP_OBJECT_TREE,
g_param_spec_object ("object-tree", "Object Tree", "Object tree",
GTK_TYPE_WIDGET, G_PARAM_READWRITE | G_PARAM_CONSTRUCT_ONLY));
g_object_class_install_property (object_class, PROP_CHILD_PROPERTIES,
g_param_spec_boolean ("child-properties", "Child properties", "Child properties",

View File

@ -32,7 +32,7 @@
#include "classes-list.h"
#include "css-editor.h"
#include "object-hierarchy.h"
#include "widget-tree.h"
#include "object-tree.h"
#include "size-groups.h"
#include "style-prop-list.h"
#include "data-list.h"
@ -48,7 +48,7 @@
G_DEFINE_TYPE (GtkInspectorWindow, gtk_inspector_window, GTK_TYPE_WINDOW)
static void
on_widget_tree_selection_changed (GtkInspectorWidgetTree *wt,
on_object_tree_selection_changed (GtkInspectorObjectTree *wt,
GObject *selected,
GtkInspectorWindow *iw)
{
@ -109,7 +109,7 @@ gtk_inspector_window_constructed (GObject *object)
G_OBJECT_CLASS (gtk_inspector_window_parent_class)->constructed (object);
gtk_inspector_widget_tree_scan (GTK_INSPECTOR_WIDGET_TREE (iw->widget_tree), NULL);
gtk_inspector_object_tree_scan (GTK_INSPECTOR_OBJECT_TREE (iw->object_tree), NULL);
}
static void
@ -123,7 +123,7 @@ gtk_inspector_window_class_init (GtkInspectorWindowClass *klass)
gtk_widget_class_set_template_from_resource (widget_class, "/org/gtk/inspector/window.ui");
gtk_widget_class_bind_template_child (widget_class, GtkInspectorWindow, top_stack);
gtk_widget_class_bind_template_child (widget_class, GtkInspectorWindow, widget_tree);
gtk_widget_class_bind_template_child (widget_class, GtkInspectorWindow, object_tree);
gtk_widget_class_bind_template_child (widget_class, GtkInspectorWindow, prop_list);
gtk_widget_class_bind_template_child (widget_class, GtkInspectorWindow, child_prop_list);
gtk_widget_class_bind_template_child (widget_class, GtkInspectorWindow, signals_list);
@ -139,7 +139,7 @@ gtk_inspector_window_class_init (GtkInspectorWindowClass *klass)
gtk_widget_class_bind_template_child (widget_class, GtkInspectorWindow, gestures);
gtk_widget_class_bind_template_callback (widget_class, gtk_inspector_on_inspect);
gtk_widget_class_bind_template_callback (widget_class, on_widget_tree_selection_changed);
gtk_widget_class_bind_template_callback (widget_class, on_object_tree_selection_changed);
}
GtkWidget *

View File

@ -42,7 +42,7 @@ typedef struct
GtkWindow parent;
GtkWidget *top_stack;
GtkWidget *widget_tree;
GtkWidget *object_tree;
GtkWidget *prop_list;
GtkWidget *child_prop_list;
GtkWidget *signals_list;

View File

@ -48,9 +48,9 @@
<property name="visible">True</property>
<property name="orientation">horizontal</property>
<child>
<object class="GtkInspectorWidgetTree" id="widget_tree">
<object class="GtkInspectorObjectTree" id="object_tree">
<property name="visible">True</property>
<signal name="widget-changed" handler="on_widget_tree_selection_changed"/>
<signal name="object-changed" handler="on_object_tree_selection_changed"/>
</object>
<packing>
<property name="resize">True</property>
@ -65,7 +65,7 @@
<child>
<object class="GtkInspectorMiscInfo" id="misc_info">
<property name="visible">True</property>
<property name="widget-tree">widget_tree</property>
<property name="object-tree">object_tree</property>
</object>
<packing>
<property name="tab_expand">True</property>
@ -82,7 +82,7 @@
<object class="GtkInspectorPropList" id="prop_list">
<property name="visible">True</property>
<property name="child-properties">False</property>
<property name="widget-tree">widget_tree</property>
<property name="object-tree">object_tree</property>
</object>
<packing>
<property name="tab_expand">True</property>
@ -128,7 +128,7 @@
<child>
<object class="GtkInspectorPropList" id="child_prop_list">
<property name="child-properties">True</property>
<property name="widget-tree">widget_tree</property>
<property name="object-tree">object_tree</property>
</object>
<packing>
<property name="tab_expand">True</property>
@ -242,7 +242,7 @@
</child>
<child>
<object class="GtkInspectorGestures" id="gestures">
<property name="widget-tree">widget_tree</property>
<property name="object-tree">object_tree</property>
</object>
</child>
<child type="tab">