Blt_TreeCreateNode(3)
NAME
Blt_TreeCreateNode - Creates a node in a tree data object.
SYNOPSIS
#include <bltTree.h> Blt_TreeNode Blt_TreeCreateNode(tree, parent, name, position)
ARGUMENTS
Blt_Tree tree (in) Tree containing the parent node.
- Blt_TreeNode parent (in) Node in which to insert the new
- child.
- const char *name (in) Node label. If NULL, a label will
- automatically be generated.
- int position (in) Position in the parent's list of
- children to insert the new node.
- _________________________________________________________________
DESCRIPTION
This procedure creates a new node is a tree data object. The node is
initially empty, but data values can be added with Blt_TreeSetValue.
Each node has a serial number that identifies it within the tree. No
two nodes in the same tree will ever have the same ID. You can find a
node's ID with Blt_TreeNodeId.
The arguments are as follows:
tree The tree containing the parent node.
parent Node in which the new child will be inserted.
- name Label of the new node. If name is NULL, a label in the form
- "node0", "node1", etc. will automatically be generated. Name can be any string. Labels are non-unique. A parent can contain two nodes with the same label. Nodes can be relabeled using Blt_TreeRelabelNode.
- position Position the parent's list of children to insert the new
- node. For example, if position is 0, then the new node is prepended to the beginning of the list. If position is -1, then the node is appended onto the end of the parent's list.
RETURNS
The new node returned is of type Blt_TreeNode. It's a token that can
be used with other routines to add/delete data values or children
nodes.
EXAMPLE
- The following example creates a new node from the root node.
- Blt_Tree token;
Blt_TreeNode root, node; - if (Blt_TreeGetToken(interp, "myTree", &token) != TCL_OK) {
return TCL_ERROR;
- }
root = Blt_TreeRootNode(token);
node = Blt_TreeCreateNode(token, root, "myNode", -1);
NOTIFICATIONS
Blt_TreeCreateNode can trigger tree notify events. You can be notified whenever a node is created by using the Blt_TreeCreateNotifyHandler. A callback routine is registered that will be automatically invoked whenever a new node is added via Blt_TreeCreateNode to the tree.
KEYWORDS
- tree, token