Nonexclusives(3W) UNIX System V Nonexclusives(3W)
NAME
Nonexclusives - allows the end-user to select one or more of a set of
choices
SYNOPSIS
#include <Intrinsic.h>
#include <StringDefs.h>
#include <OpenLook.h>
#include <Nonexclusi.h>
widget = XtCreateWidget(name, nonexclusivesWidgetClass, ...);
DESCRIPTION
The Nonexclusives widget provides a simple way to build a several-of-many
button selection object. It manages a set of rectangular buttons or
check boxes, providing layout management and selection control.
Grid Layout and Button Labels
The Nonexclusives widget lays out the rectangular buttons or check boxes
in a grid in the order they are added as child widgets by the
application. The number of rows or columns in this grid can be
controlled by the application. If the grid has more than one row, the
Nonexclusives widget forces the rectangular buttons or check boxes in
each column to be the same size as the widest in the column. (Note: If
the grid is a single row, each button will be only as wide as necessary
to display the label.)
Figure 1. Example of Nonexclusive Buttons
Use in a Menu
The Nonexclusives widget can be added as a single child to a menu pane to
implement a several-of-many menu choice. Only RectButton widgets can be
used in a Nonexclusives widget in a menu.
Child Constraint
The Nonexclusives widget constrains its child widgets to be of class
rectButtonWidgetClass or checkBoxWidgetClass. Additionally, all the
child widgets must be of the same class.
Nonexclusives Coloration
There is no explicit foreground or background in the Nonexclusives
composite widget; each rectangular button has its own foreground and
background. The space between the rectangular buttons or check boxes is
the same color or pixmap as the parent of the Nonexclusives widget.
Keyboard Traversal
The Nonexclusives widget manages the traversal between a set of
RectButtons. When the user traverses to a Nonexclusives widget, the
first RectButton in the set will receive input focus. The MOVEUP,
MOVEDOWN, MOVERIGHT, and MOVELEFT keys move the input focus between the
RectButtons. To traverse out of the Nonexclusives widget, the following
keys can be used:
10/89 Page 1
Nonexclusives(3W) UNIX System V Nonexclusives(3W)
- NEXT_FIELD moves to the next traversable widget in the window
- PREV_FIELD moves to the previous traversable widget in the window
- NEXTWINDOW moves to the next window in the application.
- PREVWINDOW moves to the previous window in the application.
- NEXTAPP moves to the first window in the next application.
- PREVAPP moves to the first window in the previous application.
These controls have two states: "set" and "not set". Pressing the
SELECTKEY on a nonexclusive control will toggle the current state. If
the control is in a Menu, then the MENUKEY will also toggle the current
state. If the control is "set", then toggling the control will call the
XtNunselect callback list. If the control is "not set", then toggling
the control will call the XtNselect callback list.
RESOURCES
_______________________________________________________________________________________
| Nonexclusives Resource Set |
|_____________________|______________________|_________________|______________|________|
| Name | Class | Type | Default | Access|
|_____________________|______________________|_________________|______________|________|
_______________________________________________________________________________________
XtNancestorSensitive XtCSenstitive Boolean TRUE G*
_______________________________________________________________________________________
XtNconsumeEvent XtCConsumeEvent XtCallbackList NULL SG
_______________________________________________________________________________________
XtNdepth XtCDepth int (parent's) GI
_______________________________________________________________________________________
XtNdestroyCallback XtCCallback XtCallbackList NULL SI
_______________________________________________________________________________________
XtNheight XtCHeight Dimension (calculated) SGI
_______________________________________________________________________________________
XtNlayoutType XtCLayoutType OlDefine OL_FIXEDROWS SGI
_______________________________________________________________________________________
XtNmappedWhenManaged XtCMappedWhenManaged Boolean TRUE SGI
_______________________________________________________________________________________
XtNmeasure XtCMeasure int 1 SGI
_______________________________________________________________________________________
XtNreferenceName XtCReferenceName String NULL GI
_______________________________________________________________________________________
XtNreferenceWidget XtCReferenceWidget Widget NULL GI
_______________________________________________________________________________________
XtNsensitive XtCSensitive Boolean TRUE GI*
_______________________________________________________________________________________
XtNtraversalOn XtCTraversalOn Boolean TRUE SGI
_______________________________________________________________________________________
XtNuserData XtCUserData XtPointer NULL SGI
_______________________________________________________________________________________
Page 2 10/89
Nonexclusives(3W) UNIX System V Nonexclusives(3W)
_______________________________________________________________________________________
| Nonexclusives Resource Set (cont'd) |
|_____________________|______________________|_________________|______________|________|
| Name | Class | Type | Default | Access|
|_____________________|______________________|_________________|______________|________|
| XtNwidth | XtCWidth | Dimension | (calculated)| SGI |
|_____________________|______________________|_________________|______________|________|
| XtNx | XtCPosition | Position | 0 | SGI |
|_____________________|______________________|_________________|______________|________|
| XtNy | XtCPosition | Position | 0 | SGI |
|_____________________|______________________|_________________|______________|________|
XtNlayoutType
Range of Values:
OLFIXEDROWS/"fixedrows"
OLFIXEDCOLS/"fixedcols"
This resource controls the type of layout of the child widgets by the
Nonexclusives composite. The choices are to specify the number of rows
or the number of columns. Only one of these dimensions can be specified
directly; the other is determined by the number of child widgets added,
and will always be enough to show all the child widgets.
The values of the XtNlayoutType resource can be
OLFIXEDROWS if the layout should have a fixed number of rows;
OLFIXEDCOLS if the layout should have a fixed number of columns.
XtNmeasure
Range of Values:
0 < XtNmeasure
This resource gives the number of rows or columns in the layout of the
child widgets. If there are not enough child widgets to fill a row or
column, the remaining space is left blank. If there is only one row
(column), and it is not filled with child widgets, the remaining
``space'' is of zero width (height).
10/89 Page 3