'\"!  tbl | tbl | tbl | tbl | tbl | tbl | tbl | tbl | tbl | tbl | tbl | tbl | mmdoc
'\"macro stdmacro
.if n .pH g3w.olFooterPanl @(#)olFooterPanl	40.3 of 1/8/90
.ig
Modified by lmh 10/18/89
..
.ds cW FOOTERPANEL
.ds rW FooterPanel
.ds nW FooterPane
.ds wW footerPanel
.ds bW \fB\*(rW\fP
.ds iW \fI\*(rW\fP
.ds oS \*(cW
.nr oN 0
.nr X
.if \nX=0 .ds x} ""FOOTER PANEL WIDGET" 3W "\&"
.if \nX=1 .ds x} ""FOOTER PANEL WIDGET" 3W
.if \nX=2 .ds x} ""FOOTER PANEL "" "\&"
.if \nX=3 .ds x} ""FOOTER "" "" "\&"
.TH \*(x}
.SH "WIDGET CLASS NAME"
\f3\*(rW\f1
.SH "SYNOPSIS"
.nf
\s-1\f4#include <Intrinsic.h>
#include <StringDefs.h>
#include <OpenLook.h>
#include <\*(nW.h>\f1\s+1\f1
.fi
.P
.nf
\s-1\f4widget = XtCreateWidget(\f2name\f4, \*(wWWidgetClass, ...);\f1\s+1
.fi
.SH "DESCRIPTION"
.sp
\f3Consistent Interface for Attaching Footer\f1
.P
The \*(bW widget is a simple composite that
provides a consistent interface for attaching a footer message
to the bottom of a base window.
The \*(bW composite accepts two children:
a Top Child and a Footer Child.
(These are attached to the top and bottom of the \*(bW widget,
respectively.)
The children are identified in the order they are added:
the Top Child is the first child added;
the Footer Child is the second.
.sp
\f3Initial Size\f1
.P
The initial height of the \*(bW widget is the sum of the
initial heights of its children.
The initial width is the widest of the initial widths of its
children.
.sp
\f3Sizing\f1
.P
The \*(bW widget attempts to allow its children to grow or
shrink to any size,
by asking its parent to allow it to grow to the width of the
widest child and the height of the sum of its children's
height.
When it is not allowed to grow to this desired size,
or when it is resized smaller by its parent,
the \f3FooterPanel\f1 imposes the size restriction as follows:
It resizes both children to its width,
but forces the Top Child to absorb all the height restriction;
it does not resize the height of the Footer Child.
Conversely,
when it is resized larger by its parent,
the \*(bW widget gives all the height increase to the Top
Child and resizes both children to the new width.
.P
The \*(bW widget never overlaps its children.
If necessary,
it will resize the Top Child to zero height.  If its 
height becomes too small to accommodate the Footer
Child's height,
it clips the Footer Child.
.P
If queried by its parent about its preferred size,
it in turn queries its children.
The width in this query is the same for each child:
the width in the parent's query.
The height in the query of the Footer Child is the child's
existing height, and
the height in the query of the Top Child is the height in the
parent's query minus the existing height of the Footer Child.
The \*(bW widget's response, then,
to its parent's query is a width equal to the wider preference
of its children and a height equal to the sum of their
preferred heights.
.bp
\f3Works with All Children\f1
.P
The \*(bW composite widget works with all the widgets defined
in this document,
except those that are sub-classed from the
\f3Shell\f1
widget class.
.sp
\f3\*(rW Coloration\f1
.P
The \*(bW widget is "invisible" in that it imposes no
coloration of its own.
.sp
.SH "RESOURCES"
.ds cO
.TS H
expand, allbox;
cB s s s s.
\*(bW Resource Set\\\\*(cO
.T&
lBp-2 lBp-2 lBp-2 lBp-2 lBp-2.
Name	Class	Type	Default	Access
_
.TH
.ds cO " (cont'd)
.T&
lp-2 lp-2 lp-2 lp-2 lp-2.
XtNancestorSensitive	XtCSenstitive	Boolean	TRUE	G*
XtNdepth	XtCDepth	int	(parent's)	GI
XtNdestroyCallback	XtCCallback	XtCallbackList	NULL	SI
XtNheight	XtCHeight	Dimension	(calculated)	SGI
XtNmappedWhenManaged	XtCMappedWhenManaged	Boolean	TRUE	SGI
XtNsensitive	XtCSensitive	Boolean	TRUE	GI*
XtNtraversalManager	XtCTraversalManager	Boolean	FALSE	SGI
XtNuserData	XtCUserData	XtPointer	NULL	SGI
XtNwidth	XtCWidth	Dimension	(calculated)	SGI
XtNx	XtCPosition	Position	0	SGI
XtNy	XtCPosition	Position	0	SGI
.TE
.sp
\fBXtNtraversalManager\fP
.P
This resource controls whether this widget manages traversal for its
descendants.
