Sets our main struct and passes it to the parent class.
Creates a new #GNode containing the given data. Used to create the first node in a tree.
Gets the position of the first child of a #GNode which contains the given data.
Gets the position of a #GNode with respect to its siblings. @child must be a child of @node. The first child is numbered 0, the second 1, and so on.
Calls a function for each of the children of a #GNode. Note that it doesn't descend beneath the child nodes. @func must not do anything that would modify the structure of the tree.
Recursively copies a #GNode (but does not deep-copy the data inside the nodes, see g_node_copy_deep() if you need that).
Recursively copies a #GNode and its data.
Gets the depth of a #GNode.
Removes @root and its children from the tree, freeing any memory allocated.
Finds a #GNode in a tree.
Finds the first child of a #GNode with the given data.
Gets the first sibling of a #GNode. This could possibly be the node itself.
Get the main Gtk struct
Gets the root of a tree.
the main Gtk struct as a void*
Inserts a #GNode beneath the parent at the given position.
Inserts a #GNode beneath the parent after the given sibling.
Inserts a #GNode beneath the parent before the given sibling.
Returns %TRUE if @node is an ancestor of @descendant. This is true if node is the parent of @descendant, or if node is the grandparent of @descendant etc.
Gets the last child of a #GNode.
Gets the last sibling of a #GNode. This could possibly be the node itself.
Gets the maximum height of all branches beneath a #GNode. This is the maximum distance from the #GNode to all leaf nodes.
Gets the number of children of a #GNode.
Gets the number of nodes in a tree.
Gets a child of a #GNode, using the given index. The first child is at index 0. If the index is too big, %NULL is returned.
Inserts a #GNode as the first child of the given parent.
Reverses the order of the children of a #GNode. (It doesn't change the order of the grandchildren.)
Traverses a tree starting at the given root #GNode. It calls the given function for each node visited. The traversal can be halted at any point by returning %TRUE from @func. @func must not do anything that would modify the structure of the tree.
Unlinks a #GNode from a tree, resulting in two separate trees.
points to the first child of the #GNode. The other children are accessed by using the @next pointer of each child.
contains the actual data of the node.
points to the node's next sibling (a sibling is another #GNode with the same parent).
points to the parent of the #GNode, or is %NULL if the #GNode is the root of the tree.
points to the node's previous sibling.
The #GNode struct represents one node in a [n-ary tree][glib-N-ary-Trees].