### Class

# Ide TreeNode

#### Description

    final class Ide.TreeNode : GObject.Object {
      /* No available fields */
    }

No description available.

#### Ancestors

- GObject

#### Constructors

###### ide_tree_node_new

Create a new `IdeTreeNode`.

Available since: 3.32

#### Instance methods

###### ide_tree_node_add_emblem

No description available.

###### ide_tree_node_append

Appends `child` as a child of `self` at the last position.

Available since: 3.32

###### ide_tree_node_get_background_rgba

No description available.

###### ide_tree_node_get_children_possible

Checks if the node can have children, and if so, returns `TRUE`. It may not actually have children yet.

Available since: 3.32

###### ide_tree_node_get_display_name

Gets the `IdeTreeNode:display-name` property.

Available since: 3.32

###### ide_tree_node_get_expanded_icon

Gets the expanded icon associated with the tree node.

Available since: 3.32

###### ide_tree_node_get_flags

No description available.

###### ide_tree_node_get_foreground_rgba

No description available.

###### ide_tree_node_get_has_error

No description available.

###### ide_tree_node_get_icon

Gets the icon associated with the tree node.

Available since: 3.32

###### ide_tree_node_get_index

Gets the position of the `self`.

Available since: 3.32

###### ide_tree_node_get_is_header

Gets the `IdeTreeNode:is-header` property.

Available since: 3.32

###### ide_tree_node_get_item

Gets the item that has been associated with the node.

Available since: 3.32

###### ide_tree_node_get_n_children

Gets the number of children that `self` contains.

Available since: 3.32

###### ide_tree_node_get_next

Gets the next sibling after `self`.

Available since: 3.32

###### ide_tree_node_get_nth_child

Gets the `nth` child of the tree node or `NULL` if it does not exist.

Available since: 3.32

###### ide_tree_node_get_parent

Gets the parent node of `self`.

Available since: 3.32

###### ide_tree_node_get_path

Gets the path for the tree node.

Available since: 3.32

###### ide_tree_node_get_previous

Gets the previous sibling before `self`.

Available since: 3.32

###### ide_tree_node_get_reset_on_collapse

Checks if the node should have all children removed when collapsed.

Available since: 3.32

###### ide_tree_node_get_root

Gets the root `IdeTreeNode` by following the `IdeTreeNode:parent` properties of each node.

Available since: 3.32

###### ide_tree_node_get_tag

No description available.

###### ide_tree_node_get_use_markup

No description available.

###### ide_tree_node_has_child

Checks if `self` has any children.

Available since: 3.32

###### ide_tree_node_holds

Checks to see if the `IdeTreeNode:item` property matches `type` or is a subclass of `type`.

Available since: 3.32

###### ide_tree_node_insert_after

Inserts `child` directly after `self` by adding it to the parent of `self`.

Available since: 3.32

###### ide_tree_node_insert_before

Inserts `child` directly before `self` by adding it to the parent of `self`.

Available since: 3.32

###### ide_tree_node_insert_sorted

Insert `child` as a child of `self` at the sorted position determined by `cmpfn`.

Available since: 3.32

###### ide_tree_node_is_empty

This function checks if `self` is a synthesized “empty” node.

Available since: 3.32

###### ide_tree_node_is_first

Checks if `self` is the first sibling.

Available since: 3.32

###### ide_tree_node_is_last

Checks if `self` is the last sibling.

Available since: 3.32

###### ide_tree_node_is_root

Checks if `self` is the root node, meaning it has no parent.

Available since: 3.32

###### ide_tree_node_is_selected

No description available.

###### ide_tree_node_is_tag

No description available.

###### ide_tree_node_prepend

Prepends `child` as a child of `self` at the 0 index.

Available since: 3.32

###### ide_tree_node_remove

Removes the child node `child` from `self`. `self` must be the parent of `child`.

Available since: 3.32

###### ide_tree_node_set_background_rgba

No description available.

###### ide_tree_node_set_children_possible

Sets if the children are possible for the node.

Available since: 3.32

###### ide_tree_node_set_display_name

Sets the `IdeTreeNode:display-name` property, which is the text to use when displaying the item in the tree.

Available since: 3.32

###### ide_tree_node_set_expanded_icon

Sets the expanded icon for the tree node.

Available since: 3.32

###### ide_tree_node_set_expanded_icon_name

Sets the `IdeTreeNode:icon` property using an icon-name.

Available since: 3.32

###### ide_tree_node_set_flags

No description available.

###### ide_tree_node_set_foreground_rgba

No description available.

###### ide_tree_node_set_has_error

No description available.

###### ide_tree_node_set_icon

Sets the icon for the tree node.

Available since: 3.32

###### ide_tree_node_set_icon_name

Sets the `IdeTreeNode:icon` property using an icon-name.

Available since: 3.32

###### ide_tree_node_set_is_header

Sets the `IdeTreeNode:is-header` property.

Available since: 3.32

###### ide_tree_node_set_item

No description available.

###### ide_tree_node_set_reset_on_collapse

If `TRUE`, then children will be removed when the row is collapsed.

Available since: 3.32

###### ide_tree_node_set_tag

No description available.

###### ide_tree_node_set_use_markup

No description available.

###### ide_tree_node_traverse

Calls `traverse_func` for each node that matches the requested type, flags, and depth.

Available since: 3.32

##### Methods inherited from GObject (43)

Please see GObject for a full list of methods.

#### Properties

###### Ide.TreeNode:children-possible

The “children-possible” property denotes if the node may have children even if it doesn’t have children yet. This is useful for delayed loading of children nodes.

Available since: 3.32

###### Ide.TreeNode:destroy-item

If `TRUE` and `IdeTreeNode:item` is an `IdeObject`, it will be destroyed when the node is destroyed.

Available since: 3.32

###### Ide.TreeNode:display-name

The “display-name” property is the name for the node as it should be displayed in the tree.

Available since: 3.32

###### Ide.TreeNode:expanded-icon

The “expanded-icon” property is the icon that should be displayed to the user in the tree for this node.

Available since: 3.32

###### Ide.TreeNode:expanded-icon-name

The “expanded-icon-name” is a convenience property to set the `IdeTreeNode:expanded-icon` property using an icon-name.

Available since: 3.32

###### Ide.TreeNode:has-error

The “has-error” property is true if the node should be rendered with an error styling. This is useful when errors are known by the diagnostics manager for a given file or folder.

Available since: 3.32

###### Ide.TreeNode:icon

The “icon” property is the icon that should be displayed to the user in the tree for this node.

Available since: 3.32

###### Ide.TreeNode:icon-name

The “icon-name” is a convenience property to set the `IdeTreeNode:icon` property using an icon-name.

Available since: 3.32

###### Ide.TreeNode:is-header

The “is-header” property denotes the node should be styled as a group header.

Available since: 3.32

###### Ide.TreeNode:item

The “item” property is an optional `GObject` that can be used to store information about the node, which is sometimes useful when creating `IdeTreeAddin` plugins.

Available since: 3.32

###### Ide.TreeNode:reset-on-collapse

The “reset-on-collapse” denotes that children should be removed when the node is collapsed.

Available since: 3.32

###### Ide.TreeNode:tag

The “tag” property can be used to denote the type of node when you do not have an object to assign to `IdeTreeNode:item`.

Available since: 3.32

###### Ide.TreeNode:use-markup

If `TRUE`, the “use-markup” property denotes that `IdeTreeNode:display-name` contains pango markup.

Available since: 3.32

#### Signals

##### Signals inherited from GObject (1)

###### GObject.Object::notify

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

#### Class structure

    struct IdeTreeNodeClass {
      GObjectClass parent_class;

    }

###### Class members

`parent_class` |
    GObjectClass
| No description available.