[gnome-builder] libide/gtk: add IdeTreeExpander:expanded convenience property
- From: Christian Hergert <chergert src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-builder] libide/gtk: add IdeTreeExpander:expanded convenience property
- Date: Tue, 20 Sep 2022 08:43:27 +0000 (UTC)
commit 644cef109eecdec74b3a300e686b7f2efbdb9caf
Author: Christian Hergert <chergert redhat com>
Date: Mon Sep 19 16:36:29 2022 -0700
libide/gtk: add IdeTreeExpander:expanded convenience property
src/libide/gtk/ide-tree-expander.c | 12 ++++++++++++
1 file changed, 12 insertions(+)
---
diff --git a/src/libide/gtk/ide-tree-expander.c b/src/libide/gtk/ide-tree-expander.c
index 1765dcabf..05eb5c920 100644
--- a/src/libide/gtk/ide-tree-expander.c
+++ b/src/libide/gtk/ide-tree-expander.c
@@ -45,6 +45,7 @@ struct _IdeTreeExpander
enum {
PROP_0,
+ PROP_EXPANDED,
PROP_EXPANDED_ICON_NAME,
PROP_ICON_NAME,
PROP_ITEM,
@@ -137,6 +138,8 @@ ide_tree_expander_notify_expanded_cb (IdeTreeExpander *self,
g_assert (GTK_IS_TREE_LIST_ROW (list_row));
ide_tree_expander_update_icon (self);
+
+ g_object_notify_by_pspec (G_OBJECT (self), properties [PROP_EXPANDED]);
}
static void
@@ -234,6 +237,10 @@ ide_tree_expander_get_property (GObject *object,
switch (prop_id)
{
+ case PROP_EXPANDED:
+ g_value_set_boolean (value, gtk_tree_list_row_get_expanded (self->list_row));
+ break;
+
case PROP_EXPANDED_ICON_NAME:
g_value_set_string (value, ide_tree_expander_get_expanded_icon_name (self));
break;
@@ -316,6 +323,11 @@ ide_tree_expander_class_init (IdeTreeExpanderClass *klass)
object_class->get_property = ide_tree_expander_get_property;
object_class->set_property = ide_tree_expander_set_property;
+ properties [PROP_EXPANDED] =
+ g_param_spec_boolean ("expanded", NULL, NULL,
+ FALSE,
+ (G_PARAM_READABLE | G_PARAM_STATIC_STRINGS));
+
properties[PROP_EXPANDED_ICON_NAME] =
g_param_spec_string ("expanded-icon-name", NULL, NULL,
NULL,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]