Provided by: libmotif-dev_2.3.4-5ubuntu0.1_amd64 bug

NAME

       XmForm — The Form widget class "XmForm" "widget class" "Form"

SYNOPSIS

       #include <Xm/Form.h>

DESCRIPTION

       Form is a container widget with no input semantics of its own.  Constraints are placed on children of the
       Form to define attachments for each of the child's four sides.  These attachments can be to the Form,  to
       another child widget or gadget, to a relative position within the Form, or to the initial position of the
       child.  The attachments determine the layout behavior of the Form when resizing occurs.

       The default value for XmNinitialFocus is the value of XmNdefaultButton.

       Following are some important considerations in using a Form:

          •  Every child must have an attachment on  either  the  left  or  the  right.   If  initialization  or
             XtSetValues  leaves  a  widget  without  such  an  attachment, the result depends upon the value of
             XmNrubberPositioning.

                 If XmNrubberPositioning is False, the child is given an XmNleftAttachment of XmATTACH_FORM  and
                 an XmNleftOffset equal to its current x value.

                 If  XmNrubberPositioning  is True, the child is given an XmNleftAttachment of XmATTACH_POSITION
                 and an XmNleftPosition proportional to the current x value divided by the width of the Form.

                 In either case, if the child has not been previously given an x value, its x value is taken  to
                 be 0 (zero), which places the child at the left side of the Form.

          •  If  you want to create a child without any attachments, and then later (for example, after creating
             and managing it, but before realizing it) give it a right attachment through XtSetValues, you  must
             set its XmNleftAttachment to XmATTACH_NONE at the same time.

          •  The  XmNresizable  resource  controls only whether a geometry request by the child will be granted.
             It has no effect on whether the child's size can be changed because of changes in geometry  of  the
             Form or of other children.

          •  Every child has a preferred width, based on geometry requests it makes (whether they are granted or
             not).

          •  If a child has attachments on both the left and the right sides, its size is completely  controlled
             by the Form.  It can be shrunk below its preferred width or enlarged above it, if necessary, due to
             other constraints.  In addition, the child's geometry requests to  change  its  own  width  may  be
             refused.

          •  If a child has attachments on only its left or right side, it will always be at its preferred width
             (if resizable, otherwise at is current width).  This may cause it to be clipped by the Form  or  by
             other children.

          •  If  a child's left (or right) attachment is set to XmATTACH_SELF, its corresponding left (or right)
             offset is forced to 0 (zero).  The attachment is then changed to XmATTACH_POSITION, with a position
             that corresponds to the x value of the child's left (or right) edge.  To fix the position of a side
             at a specific x value, use XmATTACH_FORM or XmATTACH_OPPOSITE_FORM with the x value as the left (or
             right) offset.

          •  Unmapping a child has no effect on the Form except that the child is not mapped.

          •  Unmanaging  a child unmaps it.  If no other child is attached to it, or if all children attached to
             it and all children recursively attached to them are also all unmanaged, all of those children  are
             treated as if they did not exist in determining the size of the Form.

          •  When using XtSetValues to change the XmNx resource of a child, you must simultaneously set its left
             attachment to either XmATTACH_SELF or XmATTACH_NONE.  Otherwise, the request is  not  granted.   If
             XmNresizable is False, the request is granted only if the child's size can remain the same.

          •  A  left  (or right) attachment of XmATTACH_WIDGET, where XmNleftWidget (or XmNrightWidget) is NULL,
             acts like an attachment of XmATTACH_FORM.

          •  If an attachment is made to a widget that is not a child of the Form, but an ancestor of the widget
             is a child of the Form, the attachment is made to the ancestor.

       All  these  considerations  are  true  of  top and bottom attachments as well, with top acting like left,
       bottom acting like right, y acting like x, and height acting like width.

   Classes
       Form  inherits  behavior,  resources,  and  traits  from  Core,  Composite,  Constraint,  XmManager,  and
       XmBulletinBoard.

       The class pointer is xmFormWidgetClass.

       The class name is XmForm.

   New Resources
       The  following  table  defines  a  set  of  widget  resources used by the programmer to specify data. The
       programmer can also set the resource values for the inherited classes to set attributes for this  widget.
       To  reference  a  resource by name or by class in a .Xdefaults file, remove the XmN or XmC prefix and use
       the remaining letters.  To specify one of the defined values for a resource in a .Xdefaults file,  remove
       the  Xm  prefix  and  use  the  remaining  letters  (in  either  lowercase  or uppercase, but include any
       underscores between words). The codes in the access column indicate if the given resource can be  set  at
       creation time (C), set by using XtSetValues (S), retrieved by using XtGetValues (G), or is not applicable
       (N/A).

       ┌───────────────────────────────────────────────────────────────────────────┐
--

RELATED

       Composite(3),   Constraint(3),   Core(3),   XmBulletinBoard(3),   XmCreateForm,    XmCreateFormDialog(3),
       XmManager(3), XmVaCreateForm, and XmVaCreateManagedForm.

                                                                                                       XmForm(3)