manpagez: man pages & more
man XmTree(3)
Home | html | info | man
XmForm(3X)                                                          XmForm(3X)




NAME

       XmTree - The Tree widget class


SYNOPSIS

       #include <Xm/XTree.h>


DESCRIPTION

       The Tree widget is a container that shows the relationship of its chil-
       dren in a graphical tree-like format. Each child of the Tree widget  is
       a  node in the Tree. The parent-child relationships between these nodes
       are completely distinct from the widget hierarch..   The  hierarchy  of
       nodes is created by specifying the tree "parent" of each node as a con-
       straint resource. If a node's parent is NULL then it is assumed to be a
       root  of  the  tree. Although each widget can only have one parent, the
       Tree widget supports adding more than one "root" node to a single Tree.

       Note:  the  Tree widget assumes that is will be totally responsible for
       mapping and unmapping its children. Therefore no child of  this  widget
       should ever modify its mappedWhenManaged resource. If a child does mod-
       ify this resource the behavior is undefined.



User Interaction

       Each node in the tree can be in four states: open, closed, always open,
       and  hidden. The state of a node changes how it appears to the user and
       what actions are available to the user.

       Open           This node will have an open folder  shown  to  its  left
                      that  may  be  selected  by the user to close this node.
                      When a node is open all of its children will be  visible
                      to the user.


       Closed         This  node  will  have a closed folder shown to its left
                      that may be selected by the user to open this node. When
                      a node is closed none of its children will be visible to
                      the user.


       Always Open    This node will have no folder button associated with it.
                      All of its children will be visible to the user.


       Hidden         This  node  will not be shown to the user and all of its
                      children will appear and act exactly  as  if  they  were
                      children  of  this  node's parent. It will appear to the
                      user as if this node does not exist.

       To maintain consistency of the user interface we have found that it  is
       bestto  use  the  node  state "Always Open" for nodes with no children.
       This way the user will only see a folder button next to a node that has
       children to display. A folder button associated with a node that has no
       children has no defined semantics.



Normal Resources

       Name                  Class          Type                  Initial Value
       connectStyle          ConnectStyle   unsigned char         XmTreeDirect
       horizontalNodeSpace   Dimension      HorizontalDimension   20
       verticalNodeSpace     Dimension      VerticalDimension     2

       All resource names begin with XmN and all resource  class  names  begin
       with XmC.



connectStyle

       The  style  of  the  lines visually connecting parent nodes to children
       nodes. The valid styles are XmTreeDirect or XmTreeLadder.


horizontalNodeSpace


verticalNodeSpace

       The amount of space between each node in the tree and it nearest neigh-
       bor.

       The following resources are inherited from the XmHierarchy widget:


       Name                Class       Type                  Initial Value
       autoClose           AutoClose   Boolean               True
       closeFolderPixmap   Pixmap      Pixmap                XmUNSPECIFIED_PIXMAP
       horizontalMargin    Dimension   HorizontalDimension   2
       openFolderPixmap    Pixmap      Pixmap                XmUNSPECIFIED_PIXMAP
       refigureMode        Boolean     Boolean               True
       verticalMargin      Dimension   VerticalDimension     2

       All  resource  names  begin with XmN and all resource class names begin
       with XmC.



Constraint Resources

       Name               Class              Type        Initial Value
       openClosePadding   OpenClosePadding   Int         0
       lineColor          Foreground         Pixel       <dynamic>
       lineWidth          LineWidth          Dimension   0

       All resource names begin with XmN and all resource  class  names  begin
       with XmC.  openClosePadding

       The number of pixels between the folder button and the node it is asso-
       ciated with.



lineColor

       The color of the line connecting a node  to  its  parent.  The  default
       value for this resource is the foreground color of the Tree widget.



lineWidth

       The width of a connection line between a node and its parent

       The  following  constraint resources are inherited from the XmHierarchy
       widget:


       Name           Class          Type                   Initial Value
       insertBefore   InsertBefore   Widget                 NULL
       nodeState      NodeState      XmHierarchyNodeState   Open
       parentNode     ParentNode     Widget                 NULL

       All resource names begin with XmN and all resource  class  names  begin
       with XmC.  Geometry Management:

       The layout is performed by assigning each node a box that is just large
       enough to con- tain itself and all of its children. A recursive  layout
       is  then  performed that centers each node vertically in its box and at
       the extreme left horizontally. The children's boxes are then placed  to
       the  right  of the node separated by the horizontalNodeSpace from their
       parent, stacked above each other and  separated  by  verticalNodeSpace.
       This process is repeated recursively for each child in the tree.

       The preferred size of the entire tree will be just large enough to con-
       tain all nodes in the hierarchy. As the state of nodes change the  tree
       will  attempt  to resize itself to con- tain its current configuration.
       If the tree is forced larger than the desired size the  nodes  will  be
       centered  vertically  and flush to the left edge of the tree widget. If
       the tree is forced smaller, some nodes may be moved  or  drawn  outside
       the end of the tree. For this reason it is usually desirable to put the
       tree into a Scrolled Window widget.



SEE ALSO

       XmColumn(3X)



COPYRIGHT

       Copyright (c) 1992 by Integrated Computer Solutions, Inc.



                                 15 July 1992                       XmForm(3X)

openMotif 2.3.1 - Generated Thu Dec 4 20:36:15 CST 2008
© manpagez.com 2000-2024
Individual documents may contain additional copyright information.