1XmHierarchy(library call)                            XmHierarchy(library call)
2
3
4

NAME

6       XmHierarchy — The Hierarchy widget class
7

SYNOPSIS

9       #include <Xm/Hierarchy.h>
10

DESCRIPTION

12       The  Hierarchy  widget  is  not intended to be instantiated itself, but
13       rather should be used as the base class for any widget that would  like
14       to present a hierarchy of information to the user that is different for
15       the actual widget instance hierarchy of  the  application.   This  base
16       class  is  currently used for two widgets in the Motif widget set, Tree
17       and Outline, giving those two widgets a very similar API.
18
19       Note: The Hierarchy widget assumes that it will be totally  responsible
20       for mapping and unmapping its children. Therefore no child of this wid‐
21       get should ever modify its mappedWhenManaged resource. If a child  does
22       modify this resource the behavior is undefined.
23
24   Classes
25       Hierarchy  inherits behaviour, resources, and traits from Core, Compos‐
26       ite, Composite, Constraint, and XmManager classes.
27
28       The class pointer is xmHierarchyWidgetClass.
29
30       The class name is XmHierarchy.
31
32   New Resources
33       ┌─────────────────────────────────────────────────────────────────────────────────────────────┐
34       │                     │            XmHierarch│y Resource Set   │                      │        │
35Name                 Class                Type           Default              Access 
36       ├─────────────────────┼──────────────────────┼────────────────┼──────────────────────┼────────┤
37       │XmNautoClose         │ XmCAutoClose         │ Boolean        │ True                 │ CSG    │
38       ├─────────────────────┼──────────────────────┼────────────────┼──────────────────────┼────────┤
39       │XmNcloseFolderPixmap │ XmCPixmap            │ Pixmap         │ XmUNSPECIFIED_PIXMAP │ CSG    │
40       ├─────────────────────┼──────────────────────┼────────────────┼──────────────────────┼────────┤
41       │XmNhorizontalMargin  │ XmCDimension         │ Dimension      │ 2                    │ CSG    │
42       ├─────────────────────┼──────────────────────┼────────────────┼──────────────────────┼────────┤
43       │XmNnodeStateCallback │ XmCNodeStateCallback │ XtCallbackList │ NULL                 │ C      │
44       ├─────────────────────┼──────────────────────┼────────────────┼──────────────────────┼────────┤
45       │XmNopenFolderPixmap  │ XmCPixmap            │ Pixmap         │ XmUNSPECIFIED_PIXMAP │ CSG    │
46       ├─────────────────────┼──────────────────────┼────────────────┼──────────────────────┼────────┤
47       │XmNrefigureMode      │ XmCBoolean           │ Boolean        │ True                 │ CSG    │
48       ├─────────────────────┼──────────────────────┼────────────────┼──────────────────────┼────────┤
49       │XmNverticalMargin    │ XmCDimension         │ Dimension      │ 2                    │ CSG    │
50       ├─────────────────────┼──────────────────────┼────────────────┼──────────────────────┼────────┤
51       └─────────────────────┴──────────────────────┴────────────────┴──────────────────────┴────────┘
52       XmNautoClose
53                 This resource determines if the  hierarchy  should  automati‐
54                 cally  restore  a parent node's children when the parent node
55                 is reopened. If autoClose is  False,  and  the  hierarchy  is
56                 fully  expanded when the root node is closed, then the entire
57                 hierarchy will be displayed as expanded when the root node is
58                 reopened. If autoClose is True, then the root node's children
59                 are closed when the root node is reopened.
60
61       XmNcloseFolderPixmap
62                 This resource defines a pixmap for the closed  representation
63                 of  the  folder pixmap to be used throughout the tree. It can
64                 be a color pixmap or bitmap. If the user does not  specify  a
65                 pixmap the default bitmap will be used.
66
67       XmNhorizontalMargin
68
69       XmNverticalMargin
70                 The  exact definition of these resources are left to the sub‐
71                 class of the hierarchy widget that does the geometry  layout.
72                 They  are  intended to be used as the amount of space between
73                 the object and the edges of the window it  is  displayed  in.
74                 They are included here for consistency.
75
76       XmNopenFolderPixmap
77                 This resource defines a pixmap for the open representation of
78                 the folder pixmap to be used throughout the tree . It can  be
79                 a  color  pixmap  or  bitmap.  If the user does not specify a
80                 pixmap the default opened folder bitmap.
81
82       XmNnodeStateCallback
83                 The list of callback routines called when a folder button  is
84                 clicked. See "Callback Routine" for more details.
85
86       XmNrefigureMode
87                 This  resource determines whether the Hierarchy should adjust
88                 the sizes of the children after a geometry or resize request,
89                 or simply ignore the request. This resource is very useful in
90                 improving the performance of an application that is making  a
91                 large number of geometry changes all at once.
92
93                 ┌────────────────────────────────────────────────────────────────────────────┐
94                 │                │   XmHierarchy Co│nstraint Resource Set  │         │        │
95Name            Class           Type                 Default Access 
96                 ├────────────────┼─────────────────┼──────────────────────┼─────────┼────────┤
97                 │XmNinsertBefore │ XmCInsertbefore │ Widget               │ NULL    │ CSG    │
98                 ├────────────────┼─────────────────┼──────────────────────┼─────────┼────────┤
99                 │XmNnodeState    │ XmCNodeState    │ XMHierarchyNodeState │ XmOpen  │ CSG    │
100                 ├────────────────┼─────────────────┼──────────────────────┼─────────┼────────┤
101                 │XmNparentNode   │ XmCParentNode   │ Widget               │ NULL    │ CSG    │
102                 ├────────────────┼─────────────────┼──────────────────────┼─────────┼────────┤
103                 └────────────────┴─────────────────┴──────────────────────┴─────────┴────────┘
104       XmNinsertBefore
105                 Specifies  another  node  that  has the same parentNode. This
106                 node will then be placed immediately before that node in  the
107                 hierarchy.  If  this  value  is  NULL  then  the node will be
108                 inserted at the end of the list.  This  resource  allows  the
109                 hierarchy's children to be reordered.
110
111       XmNnodeState
112                 The  state  of  this  node.  Acceptable  values  are: XmOpen,
113                 XmClosed, XmAlwaysOpen, and XmHidden. A  type  converter  has
114                 been  registered  that  can  convert  the  following strings:
115                 "open", "close", "alwaysOpen", and "hidden".
116
117       XmNparentNode
118                 The hierarchy parent of this node. The parent node MUST be  a
119                 widget sibling of the current node.
120
121   Inherited Resources
122       Hierarchy   inherits  behavior  and  resources  from  the  superclasses
123       described in the following tables.  For a complete description of  each
124       resource, refer to the reference page for that superclass.
125
126       ┌────────────────────────────────────────────────────────────────────────────────────────────────────┐
127       │                        │             XmManager │Resource Set        │                      │        │
128Name                    Class                 Type              Default              Access 
129       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
130       │XmNbottomShadowColor    │ XmCBottomShadowColor  │ Pixel             │ dynamic              │ CSG    │
131       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
132       │XmNbottomShadowPixmap   │ XmCBottomShadowPixmap │ Pixmap            │ XmUNSPECIFIED_PIXMAP │ CSG    │
133       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
134       │XmNforeground           │ XmCForeground         │ Pixel             │ dynamic              │ CSG    │
135       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
136       │XmNhelpCallback         │ XmCCallback           │ XtCallbackList    │ NULL                 │ C      │
137       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
138       │XmNhighlightColor       │ XmCHighlightColor     │ Pixel             │ dynamic              │ CSG    │
139       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
140       │XmNhighlightPixmap      │ XmCHighlightPixmap    │ Pixmap            │ dynamic              │ CSG    │
141       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
142       │XmNinitialFocus         │ XmCInitialFocus       │ Widget            │ dynamic              │ CSG    │
143       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
144       │XmNlayoutDirection      │ XmCLayoutDirection    │ XmDirection       │ dynamic              │ CG     │
145       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
146       │XmNnavigationType       │ XmCNavigationType     │ XmNavigationType  │ XmTAB_GROUP          │ CSG    │
147       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
148       │XmNpopupHandlerCallback │ XmCCallback           │ XtCallbackList    │ NULL                 │ C      │
149       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
150       │XmNshadowThickness      │ XmCShadowThickness    │ Dimension         │ dynamic              │ CSG    │
151       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
152       │XmNstringDirection      │ XmCStringDirection    │ XmStringDirection │ dynamic              │ CG     │
153       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
154       │XmNtopShadowColor       │ XmCTopShadowColor     │ Pixel             │ dynamic              │ CSG    │
155       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
156       │XmNtopShadowPixmap      │ XmCTopShadowPixmap    │ Pixmap            │ dynamic              │ CSG    │
157       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
158       │XmNtraversalOn          │ XmCTraversalOn        │ Boolean           │ True                 │ CSG    │
159       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
160       │XmNunitType             │ XmCUnitType           │ unsigned char     │ dynamic              │ CSG    │
161       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
162       │XmNuserData             │ XmCUserData           │ XtPointer         │ NULL                 │ CSG    │
163       ├────────────────────────┼───────────────────────┼───────────────────┼──────────────────────┼────────┤
164       └────────────────────────┴───────────────────────┴───────────────────┴──────────────────────┴────────┘
165       ┌───────────────────────────────────────────────────────────────────────┐
166       │                  │     Composite Reso│urce Set      │         │        │
167Name              Class             Type        Default Access 
168       ├──────────────────┼───────────────────┼─────────────┼─────────┼────────┤
169       │XmNchildren       │ XmCReadOnly       │ WidgetList  │ NULL    │ G      │
170       ├──────────────────┼───────────────────┼─────────────┼─────────┼────────┤
171       │XmNinsertPosition │ XmCInsertPosition │ XtOrderProc │ NULL    │ CSG    │
172       ├──────────────────┼───────────────────┼─────────────┼─────────┼────────┤
173       │XmNnumChildren    │ XmCReadOnly       │ Cardinal    │ 0       │ G      │
174       ├──────────────────┼───────────────────┼─────────────┼─────────┼────────┤
175       └──────────────────┴───────────────────┴─────────────┴─────────┴────────┘
176       ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
177       │                              │               Core Resource Se│t                │                      │        │
178Name                          Class                         Type           Default              Access 
179       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
180       │XmNaccelerators               │ XmCAccelerators               │ XtAccelerators │ dynamic              │ N/A    │
181       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
182       │XmNancestorSensitive          │ XmCSensitive                  │ Boolean        │ dynamic              │ G      │
183       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
184       │XmNbackground                 │ XmCBackground                 │ Pixel          │ dynamic              │ CSG    │
185       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
186       │XmNbackgroundPixmap           │ XmCPixmap                     │ Pixmap         │ XmUNSPECIFIED_PIXMAP │ CSG    │
187       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
188       │XmNborderColor                │ XmCBorderColor                │ Pixel          │ XtDefaultForeground  │ CSG    │
189       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
190       │XmNborderPixmap               │ XmCPixmap                     │ Pixmap         │ XmUNSPECIFIED_PIXMAP │ CSG    │
191       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
192       │XmNborderWidth                │ XmCBorderWidth                │ Dimension      │ 0                    │ CSG    │
193       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
194       │XmNcolormap                   │ XmCColormap                   │ Colormap       │ dynamic              │ CG     │
195       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
196       │XmNdepth                      │ XmCDepth                      │ int            │ dynamic              │ CG     │
197       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
198       │XmNdestroyCallback            │ XmCCallback                   │ XtCallbackList │ NULL                 │ C      │
199       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
200       │XmNheight                     │ XmCHeight                     │ Dimension      │ dynamic              │ CSG    │
201       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
202       │XmNinitialResourcesPersistent │ XmCInitialResourcesPersistent │ Boolean        │ True                 │ C      │
203       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
204       │XmNmappedWhenManaged          │ XmCMappedWhenManaged          │ Boolean        │ True                 │ CSG    │
205       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
206       │XmNscreen                     │ XmCScreen                     │ Screen *       │ dynamic              │ CG     │
207       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
208       │XmNsensitive                  │ XmCSensitive                  │ Boolean        │ True                 │ CSG    │
209       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
210       │XmNtranslations               │ XmCTranslations               │ XtTranslations │ dynamic              │ CSG    │
211       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
212       │XmNwidth                      │ XmCWidth                      │ Dimension      │ dynamic              │ CSG    │
213       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
214       │XmNx                          │ XmCPosition                   │ Position       │ 0                    │ CSG    │
215       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
216       │XmNy                          │ XmCPosition                   │ Position       │ 0                    │ CSG    │
217       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
218       └──────────────────────────────┴───────────────────────────────┴────────────────┴──────────────────────┴────────┘
219   Callback Information
220       When  a folder is clicked, the routines registered on the XmNnodeState‐
221       Callback list are passed a pointer to the following structure as client
222       data:
223       typedef struct _XmHierarchyNodeStateData {
224                                     Widget widget;
225                                     XmHierarchyNodeState state;
226       } XmHierarchyNodeStateData;
227
228       widget    the child node of Hierarchy being opened or closed.
229
230       state     the current XmNnodeState (after the click) of the
231                 node. Legal values are XmOpen, XmClosed, XmAlwaysOpen,
232                 and XmHidden.
233
234   Children
235       The  hierarchy  maintains  IconButtons  for each node in the hierarchy.
236       Setting openFolderPixmap or closeFolderPixmap is done through XtSetVal‐
237       ues. IconButtons may only be manipulated by the Hierarchy.
238
240       Composite(3),  Constraint(3),  Core(3), XmCreateHierarchy(3), XmHierar‐
241       chyGetChildNodes(3), XmHierarchyOpenAllAncestors(3), XmManager(3).
242
243
244
245                                                     XmHierarchy(library call)
Impressum