17a84e134Smrg/*
27a84e134Smrg *
37a84e134Smrg
47a84e134SmrgCopyright 1990, 1994, 1998  The Open Group
57a84e134Smrg
67a84e134SmrgPermission to use, copy, modify, distribute, and sell this software and its
77a84e134Smrgdocumentation for any purpose is hereby granted without fee, provided that
87a84e134Smrgthe above copyright notice appear in all copies and that both that
97a84e134Smrgcopyright notice and this permission notice appear in supporting
107a84e134Smrgdocumentation.
117a84e134Smrg
127a84e134SmrgThe above copyright notice and this permission notice shall be included in
137a84e134Smrgall copies or substantial portions of the Software.
147a84e134Smrg
157a84e134SmrgTHE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
167a84e134SmrgIMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
177a84e134SmrgFITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
187a84e134SmrgOPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
197a84e134SmrgAN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
207a84e134SmrgCONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
217a84e134Smrg
227a84e134SmrgExcept as contained in this notice, the name of The Open Group shall not be
237a84e134Smrgused in advertising or otherwise to promote the sale, use or other dealings
247a84e134Smrgin this Software without prior written authorization from The Open Group.
257a84e134Smrg
267a84e134Smrg * Copyright 1989 Prentice Hall
277a84e134Smrg *
287a84e134Smrg * Permission to use, copy, modify, and distribute this software for any
297a84e134Smrg * purpose and without fee is hereby granted, provided that the above
307a84e134Smrg * copyright notice appear in all copies and that both the copyright notice
317a84e134Smrg * and this permission notice appear in supporting documentation.
32421c997bSmrg *
337a84e134Smrg * Prentice Hall and the authors disclaim all warranties with regard
347a84e134Smrg * to this software, including all implied warranties of merchantability and
357a84e134Smrg * fitness.  In no event shall Prentice Hall or the authors be liable
367a84e134Smrg * for any special, indirect or cosequential damages or any damages whatsoever
377a84e134Smrg * resulting from loss of use, data or profits, whether in an action of
387a84e134Smrg * contract, negligence or other tortious action, arising out of or in
397a84e134Smrg * connection with the use or performance of this software.
40421c997bSmrg *
417a84e134Smrg * Authors:  Jim Fulton, MIT X Consortium,
427a84e134Smrg *           based on a version by Douglas Young, Prentice Hall
43421c997bSmrg *
447a84e134Smrg * This widget is based on the Tree widget described on pages 397-419 of
45421c997bSmrg * Douglas Young's book "The X Window System, Programming and Applications
467a84e134Smrg * with Xt OSF/Motif Edition."  The layout code has been rewritten to use
477a84e134Smrg * additional blank space to make the structure of the graph easier to see
487a84e134Smrg * as well as to support vertical trees.
497a84e134Smrg */
507a84e134Smrg
517a84e134Smrg#ifndef _XawTree_h
527a84e134Smrg#define _XawTree_h
537a84e134Smrg
547a84e134Smrg#include <X11/Xmu/Converters.h>
557a84e134Smrg
567a84e134Smrg/******************************************************************************
57421c997bSmrg *
587a84e134Smrg * Tree Widget (subclass of ConstraintClass)
59421c997bSmrg *
607a84e134Smrg ******************************************************************************
61421c997bSmrg *
627a84e134Smrg * Parameters:
63421c997bSmrg *
647a84e134Smrg *  Name                Class              Type            Default
657a84e134Smrg *  ----                -----              ----            -------
66421c997bSmrg *
677a84e134Smrg *  autoReconfigure     AutoReconfigure    Boolean         FALSE
687a84e134Smrg *  background          Background         Pixel           XtDefaultBackground
697a84e134Smrg *  foreground          Foreground         Pixel           XtDefaultForeground
707a84e134Smrg *  gravity             Gravity            XtGravity       West
717a84e134Smrg *  hSpace              HSpace             Dimension       20
727a84e134Smrg *  lineWidth           LineWidth          Dimension       0
737a84e134Smrg *  vSpace              VSpace             Dimension       6
74421c997bSmrg *
75421c997bSmrg *
767a84e134Smrg * Constraint Resources attached to children:
77421c997bSmrg *
787a84e134Smrg *  treeGC              TreeGC             GC              NULL
797a84e134Smrg *  treeParent          TreeParent         Widget          NULL
80421c997bSmrg *
81421c997bSmrg *
827a84e134Smrg *****************************************************************************/
837a84e134Smrg
847a84e134Smrg                                        /* new instance field names */
857a84e134Smrg#ifndef _XtStringDefs_h_
867a84e134Smrg#define XtNhSpace "hSpace"
877a84e134Smrg#define XtNvSpace "vSpace"
887a84e134Smrg#define XtCHSpace "HSpace"
897a84e134Smrg#define XtCVSpace "VSpace"
907a84e134Smrg#endif
917a84e134Smrg
927a84e134Smrg#define XtNautoReconfigure "autoReconfigure"
937a84e134Smrg#define XtNlineWidth "lineWidth"
947a84e134Smrg#define XtNtreeGC "treeGC"
957a84e134Smrg#define XtNtreeParent "treeParent"
967a84e134Smrg#define XtNgravity "gravity"
977a84e134Smrg
987a84e134Smrg                                        /* new class field names */
997a84e134Smrg#define XtCAutoReconfigure "AutoReconfigure"
1007a84e134Smrg#define XtCLineWidth "LineWidth"
1017a84e134Smrg#define XtCTreeGC "TreeGC"
1027a84e134Smrg#define XtCTreeParent "TreeParent"
1037a84e134Smrg#define XtCGravity "Gravity"
1047a84e134Smrg
1057a84e134Smrg#define XtRGC "GC"
1067a84e134Smrg
1077a84e134Smrg#ifndef OLDXAW
1087a84e134Smrg#ifndef XawNdisplayList
1097a84e134Smrg#define XawNdisplayList "displayList"
1107a84e134Smrg#endif
111421c997bSmrg
1127a84e134Smrg#ifndef XawCDisplayList
1137a84e134Smrg#define XawCDisplayList "DisplayList"
1147a84e134Smrg#endif
1157a84e134Smrg
1167a84e134Smrg#ifndef XawRDisplayList
1177a84e134Smrg#define XawRDisplayList "XawDisplayList"
1187a84e134Smrg#endif
1197a84e134Smrg#endif
1207a84e134Smrg                                        /* external declarations */
1217a84e134Smrgextern WidgetClass treeWidgetClass;
1227a84e134Smrg
1237a84e134Smrgtypedef struct _TreeClassRec *TreeWidgetClass;
1247a84e134Smrgtypedef struct _TreeRec      *TreeWidget;
1257a84e134Smrg
1267a84e134Smrg_XFUNCPROTOBEGIN
1277a84e134Smrg
1287a84e134Smrgvoid XawTreeForceLayout
1297a84e134Smrg(
1307a84e134Smrg Widget		tree
1317a84e134Smrg );
1327a84e134Smrg
1337a84e134Smrg_XFUNCPROTOEND
1347a84e134Smrg
1357a84e134Smrg#endif /* _XawTree_h */
136