Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
XmContainer(3)		   Library Functions Manual		XmContainer(3)

NAME
       XmContainer -- The Container widget class

SYNOPSIS
       #include	<Xm/Container.h>

DESCRIPTION
       Container  manages  child  widgets  that	 have the ContainerItem	trait.
       These child widgets can be viewed in several different layout  formats,
       selected	 using	different selection types and techniques, and directly
       manipulated by the user.

       Three different formats or views	are supported by the Container.	  They
       are specified via the XmNentryViewType resource:

	    XmLARGE_ICON

	    XmSMALL_ICON

	    XmANY_ICON

       Three  different	layout types are supported by the Container.  They are
       specified by the	XmNlayoutType resource:

	    XmSPATIAL

	    XmOUTLINE

	    XmDETAIL

       In the XmSPATIAL	layout type, several other resources (XmNspatialStyle,
       XmNspatialIncludeModel, XmNspatialSnapModel) control the	positioning of
       the items within	the Container; an application programmer  can  specify
       these resources so that the Container strictly enforces the position of
       each  item  or  so that the Container positions items according to con-
       straint resources specified for each item.  The user, however, can  al-
       ter  the	 position  of  an item in the XmSPATIAL	layout type within the
       Container by direct manipulation; for example,  by  pressing  BTransfer
       over the	item and then dragging and releasing BTransfer over some loca-
       tion within the Container.

       In the XmOUTLINE	layout type, the Container controls the	positioning of
       the  items.  Items within the Container can have	parent-child relation-
       ships between them. Each	item's XmNentryParent resource can specify an-
       other item in the same Container	as its parent; items with  a  non-NULL
       value  for XmNentryParent can only be displayed in the XmOUTLINE	layout
       type. In	the XmOUTLINE layout type, items are positioned	in a tree con-
       figuration with connecting lines	drawn to illustrate the	relationships.
       Items are positioned top	to bottom in the order specified  by  XmNposi-
       tionIndex  within  their	parent.	 Container positions a PushButton next
       to each item that has a parent relationship to other items.  The	 Push-
       Button  contains	 a  pixmap  to	illustrate whether the child items are
       shown or	not; the user can activate the PushButton  to  toggle  between
       showing	or  hiding  the	child items.  Direct manipulation to alter the
       position	of the item is not supported in	 the  XmOUTLINE	 layout	 type.
       Note  that  the	XmNtraversalOn	resource of the	PushButtons created by
       Container are set to False.

       The XmDETAIL layout type	is the same as	XmOUTLINE,  except  that  each
       item  can  also	display	additional information as rows in columns with
       column headers specified	in the	XmNdetailColumnHeading	resources.  In
       each item row, the item's detail	information (see the reference page on
       XmIconGadget  for a description of the XmNentryDetail resource) is dis-
       played. Items are positioned top	to bottom in the  order	 specified  by
       XmNpositionIndex	within the parent.

   Selection
       When  a child widget of the container is	selected, the container	speci-
       fies that the item should display the appropriate visual	information to
       the user	via the	ContainerItem trait.  The application program is noti-
       fied of selection changes through XmNselectionCallback.

       The container uses four selection policies:

	    Single

	    Browse

	    Multiple

	    Extended

       In Single Select	and Browse Select modes, only one item can be selected
       at a time. Pressing BSelect on an item selects  it  and	deselects  any
       other  selected item.  Pressing BSelect over an empty space in the Con-
       tainer deselects	all items. In Browse Select,  dragging	BSelect	 moves
       the selection as	the pointer is moved.

       In  Multiple  Select and	Extended Select	modes, any number of items can
       be selected at the same time.  In Multiple Select, pressing  and	 drag-
       ging BSelect or BExtend to specify an item, range of items, or group of
       discontiguous  items  causes  the selection states of those items to be
       toggled.	In Extended Select, pressing and dragging BSelect to  indicate
       an  item, range of items, or group of discontiguous items selects those
       items and deselects all others. Pressing	and dragging  BExtend  in  Ex-
       tended  Select  to  indicate  an	item, range of items, or discontiguous
       group of	items causes the selection states of those items  to  be  tog-
       gled.

       Several	techniques  are	available to indicate an item, range of	items,
       or group	of discontiguous items in the Multiple Select and Extended Se-
       lect modes.

       In the XmSPATIAL	and XmOUTLINE layout types, the	 XmNselectionTechnique
       resource	specifies the techniques to be used to indicate	items. The de-
       fault  specification  of	 XmTOUCH_OVER allows both the Random-Swipe and
       Marquee techniques to be	used when XmNlayoutStyle is XmSPATIAL. The de-
       fault specification of  XmTOUCH_OVER  allows  the  Range-Swipe,	Range-
       Click,  and Marquee techniques to be used when XmNlayoutStyle is	XmOUT-
       LINE.

       Discontiguous groups of items can be selected  using  the  Random-Swipe
       technique.   In	the  Random-Swipe technique, pressing BSelect (or BEx-
       tend) over an item and dragging BSelect over other items	selects	all of
       those items. Only those items that pointer passed over are selected.

       In the Range-Swipe technique, the user  presses	BSelect	 (or  BExtend)
       over  the first item and	releases BSelect over the last item; all items
       within the range	between	the first and last item	are  selected  whether
       the pointer actually passed over	them or	not.  In the Range-Click tech-
       nique,  the  user  presses  and	releases BSelect (or BExtend) over the
       first item and then presses and releases	BExtend	over the last item.

       In the Marquee technique, pressing BSelect (or BExtend)	over  a	 blank
       space  within  the  Container indicates the starting point of a Marquee
       rectangle. Dragging BSelect draws a Marquee rectangle (rubberband line)
       between the starting point and current pointer.	All  items  completely
       within the Marquee rectangle are	selected.

       Specifying  XmTOUCH_ONLY	for XmNselectionTechnique enforces the Random-
       Swipe technique even when BSelect (or BExtend) is pressed over a	 blank
       space.	Similarly, specifying XmMARQUEE	enforces the Marquee technique
       even when BSelect (or BExtend) is pressed over an item; since the  item
       over  which  the	press occurs is	only partially included	in the Marquee
       rectangle, it  is  not  selected.   XmMARQUEE_EXTEND_START  and	XmMAR-
       QUEE_EXTEND_BOTH	 enforce the Marquee technique and also	cause the rec-
       tangle to extend	automatically around the first item indicated and, for
       XmMARQUEE_EXTEND_BOTH, the last item.

       In the XmDETAIL layout type, the	Range-Swipe and	Range-Click techniques
       are available to	indicate a range of items for selection.

       Container uses the XmQTcontainerItem, XmQTscrollFrame,  and  XmQTspeci-
       fyRenderTable  traits  and  holds  the  XmQTcontainer  and XmQTtransfer
       traits.

   Data	Transfer Behavior
       Container supports dragging of selected items from the widget.  Depend-
       ing on the value	of XmNprimaryOwnership,	 Container  can	 also  support
       primary selection.

       As a source of data, Container supports the following targets and asso-
       ciated conversions of data to these targets:

       locale	 If  the locale	target matches the widget's locale, the	widget
		 transfers the selected	items in the encoding of  the  locale.
		 The  value  for  each	item transferred, except the last, in-
		 cludes	a trailing separator.  Each item value is  the	XmNla-
		 belString of the item.

       COMPOUND_TEXT
		 The   widget  transfers  the  selected	 items	as  type  COM-
		 POUND_TEXT.  The value	for each item transferred, except  the
		 last,	includes a trailing separator.	Each item value	is the
		 XmNlabelString	of the item.

       DELETE	 The widget deletes the	selected items.

       PIXMAP	 The widget transfers a	list of	the pixmap IDs of the selected
		 items as type DRAWABLE.

       STRING	 The widget transfers the selected items as type STRING.   The
		 value	for each item transferred, except the last, includes a
		 trailing separator.  Each item	value is the XmNlabelString of
		 the item.

       TEXT	 If the	selected items are fully convertible to	 the  encoding
		 of the	locale,	the widget transfers the selected items	in the
		 encoding  of the locale.  Otherwise, the widget transfers the
		 selected items	as type	COMPOUND_TEXT.	 The  value  for  each
		 item  transferred, except the last, includes a	trailing sepa-
		 rator.	 Each item value is the	XmNlabelString of the item.

       _MOTIF_CLIPBOARD_TARGETS
		 The widget transfers, as type ATOM, a list of the targets  it
		 supports  for immediate transfer for the CLIPBOARD selection.
		 These include _MOTIF_COMPOUND_STRING and PIXMAP.  If the  se-
		 lected	 items are fully convertible to	STRING,	these also in-
		 clude STRING; otherwise, they also include COMPOUND_TEXT  and
		 UTF8_STRING.

       _MOTIF_COMPOUND_STRING
		 The  widget transfers the selected items as a compound	string
		 in Byte Stream	format.	 The value for each item  transferred,
		 except	 the  last,  includes a	trailing separator.  Each item
		 value is the XmNlabelString of	the item.

       UTF8_STRING
		 The widget transfers the selected items as type  UTF8_STRING.
		 The  value  for  each	item transferred, except the last, in-
		 cludes	a trailing separator.  Each item value is  the	XmNla-
		 belString of the item.

       _MOTIF_DEFERRED_CLIPBOARD_TARGETS
		 The  widget transfers,	as type	ATOM, a	list of	the targets it
		 supports for delayed transfer for  the	 CLIPBOARD  selection.
		 This  widget  currently  supplies  no	targets	for _MOTIF_DE-
		 FERRED_CLIPBOARD_TARGETS.

       _MOTIF_DRAG_OFFSET
		 The widget transfers a	list of	two 16-bit  numbers,  of  type
		 INTEGER,  representing	 an  x	and y offset for an item being
		 dragged.  This	offset is calculated so	that,  if  the	offset
		 were  added  to the x and y coordinates at the	drop site, and
		 the dragged pixmap placed at that position, it	 would	corre-
		 spond	to  the	 position  the user would expect the pixmap to
		 placed	at, based on the drag icon used	at the drop site.

       _MOTIF_EXPORT_TARGETS
		 The widget transfers, as type ATOM, a list of the targets  to
		 be used as the	value of the DragContext's XmNexportTargets in
		 a   drag-and-drop   transfer.	  These	  include  _MOTIF_COM-
		 POUND_STRING, PIXMAP, COMPOUND_TEXT, the encoding of the  lo-
		 cale, STRING, TEXT, BACKGROUND, FOREGROUND, and UTF8_STRING.

       As a source of data, Container also supports the	following standard Mo-
       tif targets:

       BACKGROUND
		 The widget transfers XmNbackground as type PIXEL.

       CLASS	 The widget finds the first shell in the widget	hierarchy that
		 has a WM_CLASS	property and transfers the contents as text in
		 the current locale.

       CLIENT_WINDOW
		 The  widget finds the first shell in the widget hierarchy and
		 transfers its window as type WINDOW.

       COLORMAP	 The widget transfers XmNcolormap as type COLORMAP.

       FOREGROUND
		 The widget transfers XmNforeground as type PIXEL.

       NAME	 The widget finds the first shell in the widget	hierarchy that
		 has a WM_NAME property	and transfers the contents as text  in
		 the current locale.

       TARGETS	 The  widget transfers,	as type	ATOM, a	list of	the targets it
		 supports.  These include the standard targets in  this	 list.
		 These	 also  include	_MOTIF_COMPOUND_STRING,	 PIXMAP,  COM-
		 POUND_TEXT, the encoding of the  locale,  STRING,  TEXT,  and
		 UTF8_STRING.

       TIMESTAMP The widget transfers the timestamp used to acquire the	selec-
		 tion as type INTEGER.

       _MOTIF_RENDER_TABLE
		 The widget transfers XmNrenderTable if	it exists, or else the
		 default text render table, as type STRING.

       _MOTIF_ENCODING_REGISTRY
		 The  widget  transfers	 its encoding registry as type STRING.
		 The value is a	list of	NULL separated items in	 the  form  of
		 tag encoding pairs.  This target symbolizes the transfer tar-
		 get for the Motif Segment Encoding Registry.  Widgets and ap-
		 plications  can  use  this Registry to	register text encoding
		 formats for specified render table tags.  Applications	access
		 this  Registry	 by  calling   XmRegisterSegmentEncoding   and
		 XmMapSegmentEncoding.

       As  a  destination  for	data,  Container supports only the dropping of
       items being dragged from	the same widget.  Subclasses and the XmNdesti-
       nationCallback procedures are responsible for any other data  transfers
       to the widget.

   Classes
       Container  inherits behavior, resources,	and traits from	the Core, Com-
       posite, Constraint, and XmManager classes.

       The class pointer is xmContainerWidgetClass.

       The class name is XmContainer.

   New Resources
       The following table defines a set of widget resources used by the  pro-
       grammer	to specify data. The programmer	can also set the resource val-
       ues 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 whether 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).

       +----------------------------------------------------------------------------------------------------------------+
       |			     |		    XmContainer	Resource Set	    |			       |	|
       | Name			     | Class			   | Type	    | Default		       | Access	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNautomaticSelection	     | XmCAutomaticSelection	   | unsigned char  | XmAUTO_SELECT	       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNcollapsedStatePixmap     | XmCCollapsedStatePixmap	   | Pixmap	    | dynamic		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNconvertCallback	     | XmCCallback		   | XtCallbackList | NULL		       | C	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNdefaultActionCallback    | XmCCallback		   | XtCallbackList | NULL		       | C	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNdestinationCallback	     | XmCCallback		   | XtCallbackList | NULL		       | C	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNdetailColumnHeading	     | XmCDetailColumnHeading	   | XmStringTable  | NULL		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNdetailColumnHeadingCount | XmCDetailColumnHeadingCount | Cardinal	    | 0			       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNdetailOrder		     | XmCDetailOrder		   | Cardinal *	    | NULL		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNdetailOrderCount	     | XmCDetailOrderCount	   | Cardinal	    | dynamic		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNdetailTabList	     | XmCDetailTabList		   | XmTabList	    | NULL		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNentryViewType	     | XmCEntryViewType		   | unsigned char  | XmANY_ICON	       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNexpandedStatePixmap	     | XmCExpandedStatePixmap	   | Pixmap	    | dynamic		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNfontList		     | XmCFontList		   | XmFontList	    | NULL		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNlargeCellHeight	     | XmCCellHeight		   | Dimension	    | dynamic		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNlargeCellWidth	     | XmCCellWidth		   | Dimension	    | dynamic		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNlayoutType		     | XmCLayoutType		   | unsigned char  | XmSPATIAL		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNmarginHeight	     | XmCMarginHeight		   | Dimension	    | 0			       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNmarginWidth		     | XmCMarginWidth		   | Dimension	    | 0			       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNoutlineButtonPolicy	     | XmCOutlineButtonPolicy	   | unsigned char  | XmOUTLINE_BUTTON_PRESENT | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNoutlineChangedCallback   | XmCCallback		   | XtCallbackList | NULL		       | C	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNoutlineColumnWidth	     | XmCOutlineColumnWidth	   | Dimension	    | dynamic		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNoutlineIndentation	     | XmCOutlineIndentation	   | Dimension	    | 40		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNoutlineLineStyle	     | XmCLineStyle		   | unsigned char  | XmSINGLE		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNprimaryOwnership	     | XmCprimaryOwnership	   | unsigned char  | XmOWN_POSSIBLE_MULTIPLE  | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNrenderTable		     | XmCRenderTable		   | XmRenderTable  | dynamic		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNselectColor		     | XmCSelectColor		   | Pixel	    | dynamic		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNselectedObjects	     | XmCSelectedObjects	   | WidgetList	    | NULL		       | SG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNselectedObjectCount	     | XmCSelectedObjectCount	   | unsigned int   | 0			       | SG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNselectionCallback	     | XmCCallback		   | XtCallbackList | NULL		       | C	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNselectionPolicy	     | XmCSelectionPolicy	   | unsigned char  | XmEXTENDED_SELECT	       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNselectionTechnique	     | XmCSelectionTechnique	   | unsigned char  | XmTOUCH_OVER	       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNsmallCellHeight	     | XmCCellHeight		   | Dimension	    | dynamic		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNsmallCellWidth	     | XmCCellWidth		   | Dimension	    | dynamic		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNspatialIncludeModel	     | XmCSpatialIncludeModel	   | unsigned char  | XmAPPEND		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNspatialResizeModel	     | XmCSpatialResizeModel	   | unsigned char  | XmGROW_MINOR	       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNspatialSnapModel	     | XmCSpatialSnapModel	   | unsigned char  | XmNONE		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       | XmNspatialStyle	     | XmCSpatialStyle		   | unsigned char  | XmGRID		       | CSG	|
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+
       +-----------------------------+-----------------------------+----------------+--------------------------+--------+

       XmNautomaticSelection
		 Indicates whether the Container invokes  selection  callbacks
		 when  each item is selected (or toggled) or whether selection
		 callbacks are not invoked until the user has completed	selec-
		 tion actions (for example, the	user has  released  the	 mouse
		 button). It can have one of the following values:

		 XmAUTO_SELECT
			   Makes  selection  callbacks automatically when each
			   item	is selected or toggled.	This may also  be  the
			   value TRUE.

		 XmNO_AUTO_SELECT
			   Delays  selection callbacks until the user has fin-
			   ished selection actions. This may also be the value
			   FALSE.

       XmNcollapsedStatePixmap
		 Specifies the pixmap to display on a  PushButton  next	 to  a
		 Container  item with child items, when	XmNoutlineButtonPolicy
		 is XmOUTLINE_BUTTON_PRESENT.	XmNcollapsedStatePixmap	 indi-
		 cates	that  the  child  items	 are not displayed.  If	set to
		 XmUNSPECIFIED_PIXMAP,	a  default  pixmap  showing  an	 arrow
		 pointing up is	used.

       XmNconvertCallback
		 Specifies  a  list  of	callbacks called when the Container is
		 asked to convert a selection.	 The  type  of	the  structure
		 whose	address	is passed to these callbacks is	XmConvertCall-
		 backStruct.  The reason is XmCR_OK.

       XmNdefaultActionCallback
		 Specifies a list of callbacks to call when the	 user  double-
		 clicks	 an  item or presses <Enter> or	<Return> over an item.
		 The callback  structure  is  XmContainerSelectCallbackStruct.
		 The reason is XmCR_DEFAULT_ACTION.

       XmNdestinationCallback
		 Specifies  a  list  of	callbacks called when the Container is
		 the destination of a transfer operation.   The	 type  of  the
		 structure  whose  address  is	passed	to  these callbacks is
		 XmDestinationCallbackStruct.  The reason is XmCR_OK.

       XmNdetailColumnHeading
		 Specifies a table of XmStrings	to display as the headings  to
		 columns.   If	NULL,  or if XmNlayoutType is not XmDETAIL, no
		 heading is displayed.

       XmNdetailColumnHeadingCount
		 Specifies a count of XmStrings	in the table specified for Xm-
		 NdetailColumnHeading.

       XmNdetailOrder
		 Specifies an array of Cardinals that  indicate	 which	column
		 detail	 information, and in which order, each Container child
		 will display its detail information.  This  resource  is  ig-
		 nored if XmNlayoutType	is not XmDETAIL.  If NULL, the the de-
		 fault behavior	is determined by XmNdetailOrderCount.

       XmNdetailOrderCount
		 Specifies a count of Cardinals	in the array specified for Xm-
		 NdetailOrder.	 If XmNdetailOrder is NULL and XmNdetailOrder-
		 Count is not 0, then each Container child displays its	detail
		 information in	order from column 1 to the XmNdetailOrderCount
		 column	number.	If XmNdetailOrderCount is 0, then a default is
		 calculated from the detail order count	 information  of  each
		 item accessed via the ContainerItem trait.

       XmNdetailTabList
		 Indicates an XmTabList	specifying the start of	each column in
		 the  XmDETAIL	layout.	 If this resource is set to NULL, then
		 Container calculates an XmTabList.  This resource is  ignored
		 if XmNlayoutType is not XmDETAIL.

       XmNentryViewType
		 Specifies  the	view type for all Container children. The view
		 type is specified for each item via the ContainerItem	trait.
		 It can	have one of the	following values:

		 XmANY_ICON
			   No  specification  is  made for Container children.
			   Children use	their own default specifications.

		 XmLARGE_ICON
			   The view type for all children is XmLARGE_ICON.

		 XmSMALL_ICON
			   The view type for all children is XmSMALL_ICON.

       XmNexpandedStatePixmap
		 Specifies the pixmap to display on a  PushButton  next	 to  a
		 Container  item with child items, when	XmNoutlineButtonPolicy
		 is  XmOUTLINE_BUTTON_PRESENT.	 XmNexpandedStatePixmap	 indi-
		 cates	that  the  child items are displayed.  If set to XmUN-
		 SPECIFIED_PIXMAP, a default pixmap showing an arrow  pointing
		 down is used.

       XmNfontList
		 Specifies  the	 fontlist  associated  with  XmContainer.  The
		 fontlist is an	obsolete construct and has been	superseded  by
		 the render table.  It is included for compatibility with ear-
		 lier versions of Motif, and for applications that do not eas-
		 ily  support  render  tables. The default fontlist is derived
		 from the default render table;	and if both a fontlist	and  a
		 render	 table	are  specified,	 the render table takes	prece-
		 dence.

       XmNlargeCellHeight
		 Specifies the height of a cell	for XmGRID or XmCELLS  spatial
		 style when XmNentryViewType is	XmLARGE_ICON or	XmANY_ICON.

       XmNlargeCellWidth
		 Specifies  the	 width of a cell for XmGRID or XmCELLS spatial
		 style when XmNentryViewType is	XmLARGE_ICON or	XmANY_ICON.

       XmNlayoutType
		 Specifies the policy for laying out child widgets within  the
		 Container.  It	can have one of	the following values:

		 XmDETAIL  Displays  items  in the same	manner as when the re-
			   source is XmOUTLINE,	except that each item displays
			   detail information next to it.

		 XmOUTLINE Displays items in a tree configuration, in XmNposi-
			   tionIndex within XmNentryParent  order,  with  con-
			   necting  lines drawn	to show	their parent-child re-
			   lationships.

		 XmSPATIAL Displays items according to XmNspatialStyle.	 Items
			   with	XmNentryParent values are not displayed.

       XmNmarginHeight
		 Specifies the margin spacing at the top  and  bottom  of  the
		 Container.

       XmNmarginWidth
		 Specifies  the	 margin	spacing	at the left and	right sides of
		 the Container.

       XmNoutlineButtonPolicy
		 Specifies whether or not to display buttons for users to  ex-
		 pand  and  collapse the display of items.  It can have	one of
		 the following values:

		 XmOUTLINE_BUTTON_ABSENT
			   Do not display the outline buttons.

		 XmOUTLINE_BUTTON_PRESENT
			   Display the outline buttons.

       XmNoutlineChangedCallback
		 Specifies a list of callbacks to call when an item's  XmNout-
		 lineState is changed.	The callback structure is XmContainer-
		 OutlineCallbackStruct.	   The	reason	is  XmCR_COLLAPSED  or
		 XmCR_EXPANDED,	depending on the new value of XmNoutlineState.

       XmNoutlineColumnWidth
		 Specifies the width of	the first column displayed  when  XmN-
		 layoutType  is	XmDETAIL. Specifies the	preferred width	of the
		 Container (without the	margins) when XmNlayoutType is	XmOUT-
		 LINE.	 If  not specified, Container will determine a default
		 value equal to	the  widest  space  necessary  to  display  an
		 item's	pixmap and XmNoutlineIndentation.

       XmNoutlineIndentation
		 Specifies  the	 distance  to  indent for the display of child
		 items when XmNlayoutType is XmOUTLINE or XmDETAIL.

       XmNoutlineLineStyle
		 Specifies whether to draw lines between  items	 with  parent-
		 child	relationships when XmNlayoutType is XmOUTLINE or XmDE-
		 TAIL.	It can have one	of the following values:

		 XmNO_LINE Draws no line.

		 XmSINGLE  Draws a line	one pixel wide.

       XmNprimaryOwnership
		 Specifies whether Container takes ownership  of  the  primary
		 selection  when  a selection is made inside it. This resource
		 can take the following	values:

		 XmOWN_NEVER
			   Never takes ownership.

		 XmOWN_ALWAYS
			   Always takes	ownership.

		 XmOWN_MULTIPLE
			   Only	takes ownership	if more	than one  element  has
			   been	selected.

		 XmOWN_POSSIBLE_MULTIPLE
			   Only	 takes	ownership if more than one element can
			   be selected at a time.

       XmNrenderTable
		 Specifies the XmRenderTable that is inherited by all children
		 of the	Container.  The	default	is  implementation  dependent.
		 If both a render table	and a fontlist are specified, the ren-
		 der table will	take precedence.

       XmNselectColor
		 Specifies  a  Pixel  that  can	be accessed by children	of the
		 Container and used to indicate	that the child	is  in	a  se-
		 lected	 state.	 In  addition  to a Pixel value, the following
		 symbolic values can be	specified:

		 XmDEFAULT_SELECT_COLOR
			   Specifies a color between the  background  and  the
			   bottom shadow color.

		 XmREVERSED_GROUND_COLORS
			   Forces the select color to the foreground color and
			   causes  the default color of	any text rendered over
			   the select color to be the background color.

		 HIGHLIGHT_COLOR
			   Forces the fill color to use	the highlight color.

       XmNselectedObjectCount
		 Specifies the number of widgets in the	selected  items	 list.
		 The value must	be the number of items in XmNselectedObjects.

       XmNselectedObjects
		 An  array of widgets that represents the Container items that
		 are currently selected, either	by the user or by the applica-
		 tion.

		 If the	application sets XmNselectedObjects  to	 an  array  of
		 widgets,  those array elements	that are valid Container items
		 are selected.

       XmNselectionCallback
		 Specifies a list of callbacks to call when  an	 item  is  se-
		 lected.  The callback structure is XmContainerSelectCallback-
		 Struct.   The	reason	is XmCR_SINGLE_SELECT, XmCR_BROWSE_SE-
		 LECT, XmCR_MULTIPLE_SELECT,  or  XmCR_EXTENDED_MULTIPLE,  de-
		 pending on XmNselectionPolicy.

       XmNselectionPolicy
		 Defines  the interpretation of	the selection action. This can
		 be one	of the following values:

		 XmSINGLE_SELECT
			   Allows only single selections.

		 XmBROWSE_SELECT
			   Allows "drag	and browse" selections.

		 XmMULTIPLE_SELECT
			   Allows multiple selections.

		 XmEXTENDED_SELECT
			   Allows extended selections.

       XmNselectionTechnique
		 Specifies the selection technique to use when	the  Container
		 displays items	in a 2-dimensional layout (XmNentryViewType is
		 XmLARGE_ICON  or  XmSMALL_ICON).  In the XmDETAIL layout, the
		 XmNselectionTechnique resource	is treated as XmTOUCH_ONLY. In
		 either	case, it can have one of the following values:

		 XmMARQUEE Uses	the Marquee technique only.

		 XmMARQUEE_EXTEND_START
			   Uses	the Marquee technique  only  and  extends  the
			   Marquee rectangle around any	item under the Marquee
			   start point.

		 XmMARQUEE_EXTEND_BOTH
			   Uses	 the  Marquee  technique  only and extends the
			   Marquee rectangle around any	items under  the  Mar-
			   quee	start and end points.

		 XmTOUCH_ONLY
			   Uses	 the Random-Swipe technique only if XmNlayout-
			   Type	is XmSPATIAL.  Otherwise, uses the Range-Swipe
			   and Range-Click techniques.

		 XmTOUCH_OVER
			   If the selection action begins  over	 an  item  and
			   XmNlayoutType  is  XmSPATIAL, uses the Random-Swipe
			   technique.  If the selection	action begins over  an
			   item	 and  XmNlayoutType  is	XmOUTLINE or XmDETAIL,
			   uses	the Range-Swipe	 and  Range-Click  techniques.
			   Uses	the Marquee technique if the select action be-
			   gins	over an	unoccupied area	in the Container.

       XmNsmallCellHeight
		 Specifies  the	height of a cell for XmGRID or XmCELLS spatial
		 style when XmNentryViewType is	XmSMALL_ICON.

       XmNsmallCellWidth
		 Specifies the width of	a cell for XmGRID or  XmCELLS  spatial
		 style when XmNentryViewType is	XmSMALL_ICON.

       XmNspatialIncludeModel
		 Specifies  the	 layout	of an item when	the item is managed in
		 the Container when XmNlayoutType is XmSPATIAL and XmNspatial-
		 Style is XmGRID or XmCELLS.  It can have one of the following
		 values:

		 XmAPPEND  Places the item after the last  occupied  cell  ac-
			   cording to XmNlayoutDirection.

		 XmCLOSEST Places the item in the free cell closest to the po-
			   sition specified by XmNx and	XmNy.

		 XmFIRST_FIT
			   Places the item in the first	free cell according to
			   XmNlayoutDirection.

       XmNspatialResizeModel
		 Specifies  how	 Container will	attempt	to grow	its dimensions
		 when XmNlayoutType is XmSPATIAL and XmNspatialStyle is	XmGRID
		 or XmCELLS and	there are not enough cells to  contain	a  new
		 Container item.  It can have one of the following values:

		 XmGROW_BALANCED
			   Container will request both width and height	growth
			   from	its parent.

		 XmGROW_MAJOR
			   Container  will  request growth in its major	dimen-
			   sion	from its parent.  Container's major  dimension
			   is  width when the precedence of XmNlayoutDirection
			   is horizontal, and height when vertical.

		 XmGROW_MINOR
			   Container will request growth in its	 minor	dimen-
			   sion	 from its parent.  Container's minor dimension
			   is height when the precedence of XmNlayoutDirection
			   is horizontal, and width when vertical.

       XmNspatialSnapModel
		 Specifies how Container will position an item within the cell
		 layout	when XmNlayoutType is XmSPATIAL	and XmNspatialStyle is
		 XmGRID	or XmCELLS.  It	can have one of	the following values:

		 XmCENTER  Center the items as follows,	depending on the value
			   of XmNentryViewType:

			   XmLARGE_ICON
				     The child is centered in the  cell	 hori-
				     zontally and baseline-aligned vertically.

			   XmSMALL_ICON
				     The  child	is centered in the cell	verti-
				     cally on its baseline  and	 aligned  with
				     the  left	or  right of the cell horizon-
				     tally, depending on the value of  XmNlay-
				     outDirection.

		 XmSNAP_TO_GRID
			   Position  the item at the upper-left	or upper-right
			   corner of the cell(s), depending on	the  value  of
			   XmNlayoutDirection.

		 XmNONE	   Position  the item according	to the position	speci-
			   fied	by XmNx	and XmNy.   If	the  position  is  not
			   within  the	coordinates of the cell(s), then posi-
			   tion	the item at the	upper-left or upper-right cor-
			   ner of the cell(s), depending on the	value of  XmN-
			   layoutDirection.

       XmNspatialStyle
		 Specifies the layout of Container items when XmNlayoutType is
		 XmSPATIAL. It can have	one of the following values:

		 XmCELLS   Lays	 out  items  within a grid of same-size	cells.
			   Each	item occupies as many  cells  as  required  to
			   contain the item dimensions.

		 XmGRID	   Lays	 out  items  within a grid of same-size	cells.
			   Each	item occupies only one cell.  Items  that  are
			   larger than the cell	size may overlap other items.

		 XmNONE	   Lays	out items according to XmNx and	XmNy.

       +----------------------------------------------------------------------------+
       |		  | XmContainer	Constraint Resource Set		   |	    |
       | Name		  | Class	     | Type	     | Default	   | Access |
       +------------------+------------------+---------------+-------------+--------+
       | XmNentryParent	  | XmCWidget	     | Widget	     | NULL	   | CSG    |
       +------------------+------------------+---------------+-------------+--------+
       | XmNoutlineState  | XmCOutlineState  | unsigned	char | XmCOLLAPSED | CSG    |
       +------------------+------------------+---------------+-------------+--------+
       | XmNpositionIndex | XmCPositionIndex | int	     | dynamic	   | CSG    |
       +------------------+------------------+---------------+-------------+--------+
       +------------------+------------------+---------------+-------------+--------+

       XmNentryParent
		 Specifies  the	 widget	that is	this item's logical parent.  A
		 value of NULL indicates that this is a	root-level item.  Par-
		 ent-child  information	 is displayed only when	the XmNlayout-
		 Policy	is XmOUTLINE or	XmDETAIL.

       XmNoutlineState
		 Specifies whether to display child items when XmNlayoutPolicy
		 is XmOUTLINE or XmDETAIL.  It can have	one of	the  following
		 values:

		 XmCOLLAPSED
			   Does	not display child items.

		 XmEXPANDED
			   Displays child items.

       XmNpositionIndex
		 Specifies  the	 order	of items in the	Container for display.
		 When XmNlayoutType is XmOUTLINE or XmDETAIL, items  are  dis-
		 played	  in  XmNpositionIndex	order  within  XmNentryParent.
		 Items that have an XmNentryParent resource are	 ignored  when
		 XmNlayoutType is XmSPATIAL.  If XmNpositionIndex is not spec-
		 ified,	 it  defaults  to the XmNpositionIndex value plus 1 of
		 the item with the highest XmNpositionIndex that has the  same
		 XmNentryParent	if such	an item	exists;	otherwise, it defaults
		 to 0.

   Inherited Resources
       Container  inherits  behavior  and  resources from the superclasses de-
       scribed in the following	tables.	 For a complete	 description  of  each
       resource, refer to the reference	page for that superclass.

       +-----------------------------------------------------------------------------------------------------+
       |			 |	       XmManager Resource Set	     |			    |	     |
       | Name			 | Class		 | Type		     | Default		    | Access |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       | XmNbottomShadowColor	 | XmCBottomShadowColor	 | Pixel	     | dynamic		    | CSG    |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       | XmNbottomShadowPixmap	 | XmCBottomShadowPixmap | Pixmap	     | XmUNSPECIFIED_PIXMAP | CSG    |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       | XmNforeground		 | XmCForeground	 | Pixel	     | dynamic		    | CSG    |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       | XmNhelpCallback	 | XmCCallback		 | XtCallbackList    | NULL		    | C	     |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       | XmNhighlightColor	 | XmCHighlightColor	 | Pixel	     | dynamic		    | CSG    |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       | XmNhighlightPixmap	 | XmCHighlightPixmap	 | Pixmap	     | dynamic		    | CSG    |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       | XmNinitialFocus	 | XmCInitialFocus	 | Widget	     | NULL		    | CSG    |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       | XmNlayoutDirection	 | XmCLayoutDirection	 | XmDirection	     | dynamic		    | CG     |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       | XmNnavigationType	 | XmCNavigationType	 | XmNavigationType  | XmTAB_GROUP	    | CSG    |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       | XmNpopupHandlerCallback | XmCCallback		 | XtCallbackList    | NULL		    | C	     |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       | XmNshadowThickness	 | XmCShadowThickness	 | Dimension	     | 0		    | CSG    |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       | XmNstringDirection	 | XmCStringDirection	 | XmStringDirection | dynamic		    | CG     |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       | XmNtopShadowColor	 | XmCTopShadowColor	 | Pixel	     | dynamic		    | CSG    |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       | XmNtopShadowPixmap	 | XmCTopShadowPixmap	 | Pixmap	     | dynamic		    | CSG    |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       | XmNtraversalOn		 | XmCTraversalOn	 | Boolean	     | True		    | CSG    |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       | XmNunitType		 | XmCUnitType		 | unsigned char     | dynamic		    | CSG    |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       | XmNuserData		 | XmCUserData		 | XtPointer	     | NULL		    | CSG    |
       +-------------------------+-----------------------+-------------------+----------------------+--------+
       +-------------------------+-----------------------+-------------------+----------------------+--------+

       +------------------------------------------------------------------------+
       |		   |	 Composite Resource Set	     |	       |	|
       | Name		   | Class	       | Type	     | Default | Access	|
       +-------------------+-------------------+-------------+---------+--------+
       | XmNchildren	   | XmCReadOnly       | WidgetList  | NULL    | G	|
       +-------------------+-------------------+-------------+---------+--------+
       | XmNinsertPosition | XmCInsertPosition | XtOrderProc | NULL    | CSG	|
       +-------------------+-------------------+-------------+---------+--------+
       | XmNnumChildren	   | XmCReadOnly       | Cardinal    | 0       | G	|
       +-------------------+-------------------+-------------+---------+--------+
       +-------------------+-------------------+-------------+---------+--------+
       +----------------------------------------------------------------------------------------------------------------+
       |			       |	       Core Resource Set		|		       |	|
       | Name			       | Class			       | Type		| Default	       | Access	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNaccelerators	       | XmCAccelerators	       | XtAccelerators	| dynamic	       | CSG	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNancestorSensitive	       | XmCSensitive		       | Boolean	| dynamic	       | G	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNbackground		       | XmCBackground		       | Pixel		| dynamic	       | CSG	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNbackgroundPixmap	       | XmCPixmap		       | Pixmap		| XmUNSPECIFIED_PIXMAP | CSG	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNborderColor		       | XmCBorderColor		       | Pixel		| XtDefaultForeground  | CSG	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNborderPixmap	       | XmCPixmap		       | Pixmap		| XmUNSPECIFIED_PIXMAP | CSG	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNborderWidth		       | XmCBorderWidth		       | Dimension	| 0		       | CSG	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNcolormap		       | XmCColormap		       | Colormap	| dynamic	       | CG	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNdepth		       | XmCDepth		       | int		| dynamic	       | CG	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNdestroyCallback	       | XmCCallback		       | XtCallbackList	| NULL		       | C	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNheight		       | XmCHeight		       | Dimension	| dynamic	       | CSG	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNinitialResourcesPersistent | XmCInitialResourcesPersistent | Boolean	| True		       | C	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNmappedWhenManaged	       | XmCMappedWhenManaged	       | Boolean	| True		       | CSG	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNscreen		       | XmCScreen		       | Screen	*	| dynamic	       | CG	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNsensitive		       | XmCSensitive		       | Boolean	| True		       | CSG	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNtranslations	       | XmCTranslations	       | XtTranslations	| dynamic	       | CSG	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNwidth		       | XmCWidth		       | Dimension	| dynamic	       | CSG	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNx			       | XmCPosition		       | Position	| 0		       | CSG	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       | XmNy			       | XmCPosition		       | Position	| 0		       | CSG	|
       +-------------------------------+-------------------------------+----------------+----------------------+--------+
       +-------------------------------+-------------------------------+----------------+----------------------+--------+

   Callback Information
       A pointer to the	following structure is passed to callbacks for XmNout-
       lineChangedCallback.

       typedef struct
       {
	       int reason;
	       XEvent *	event;
	       Widget item;
	       unsigned	char new_outline_state;
       } XmContainerOutlineCallbackStruct;

       reason	 Specifies the reason for the callback.

       event	 Points	 to  the XEvent	that triggered the callback. It	can be
		 NULL.

       item	 Specifies the container item affected by the event.

       new_outline_state
		 Specifies the next XmNoutlineState for	 item.	The  user  can
		 change	this value in the callback.

       A  pointer to the following structure is	passed to callbacks for	XmNde-
       faultActionCallback and XmNselectionCallback.

       typedef struct
       {
	       int reason;
	       XEvent *	event;
	       WidgetList selected_items;
	       int selected_item_count;
	       unsigned	char auto_selection_type;
       } XmContainerSelectCallbackStruct;

       reason	 Specifies the reason for the callback.	It corresponds to  the
		 XmNselectionPolicy at the time	the selection was made,	or in-
		 dicates that the default action should	be taken.

       event	 Points	 to  the XEvent	that triggered the callback. It	can be
		 NULL.

       selected_items
		 Specifies a list of items selected at the time	of  the	 event
		 that caused the callback.  The	selected_items field points to
		 a  temporary  storage space that is reused after the callback
		 is finished.  Therefore, if an	application needs to save  the
		 selected  list,  it  should  copy  the	list into its own data
		 space.

       selected_item_count
		 Specifies the number of items	in  the	 selected_items	 list.
		 This number must be positive or 0 (zero).

       auto_selection_type
		 Indicates  the	cause of the selection when XmNautomaticSelec-
		 tion is XmAUTO_SELECT.	Valid values are the following:

		 XmAUTO_UNSET
			   Returned	when	 XmNautomaticSelection	    is
			   XmNO_AUTO_SELECT.

		 XmAUTO_BEGIN
			   Indicates the beginning of automatic	selection.

		 XmAUTO_MOTION
			   Indicates that there	is a button drag selection.

		 XmAUTO_CANCEL
			   Indicates that the new selection is canceled.

		 XmAUTO_NO_CHANGE
			   Indicates  that the currently selected item matches
			   the initial item.

		 XmAUTO_CHANGE
			   Indicates that the currently	selected item does not
			   match the initial item.

       A pointer to the	following structure is passed to  the  XmNconvertCall-
       back procedures:

       typedef struct
       {
	       int reason;
	       XEvent  *event;
	       Atom selection;
	       Atom target;
	       XtPointer source_data;
	       XtPointer location_data;
	       int flags;
	       XtPointer parm;
	       int parm_format;
	       unsigned	long parm_length;
	       int status;
	       XtPointer value;
	       Atom type;
	       int format;
	       unsigned	long length;
       } XmConvertCallbackStruct;

       reason	 Indicates why the callback was	invoked.

       event	 Points	 to the	XEvent that triggered the callback.  It	can be
		 NULL.

       selection Indicates the selection for which  conversion	is  being  re-
		 quested.   Possible values are	CLIPBOARD, PRIMARY, SECONDARY,
		 and _MOTIF_DROP.

       target	 Indicates the conversion target.

       source_data
		 Contains information about the	selection  source.   When  the
		 selection  is	_MOTIF_DROP,  source_data  is the DragContext.
		 Otherwise, it is NULL.

       location_data
		 Contains information about the	location of data  to  be  con-
		 verted.   If  the  value  is NULL, the	data to	be transferred
		 consists of the widget's current selection.  Otherwise, it is
		 the widget ID of the item being transferred, or the widget ID
		 of the	Container if all items are being transferred.

       flags	 Indicates the status of the  conversion.  Following  are  the
		 possible values:

		 XmCONVERTING_NONE
			   This	flag is	currently unused.

		 XmCONVERTING_PARTIAL
			   The	target	widget	was  able to be	converted, but
			   some	data was lost.

		 XmCONVERTING_SAME
			   The conversion target is the	source of the data  to
			   be transferred.

		 XmCONVERTING_TRANSACT
			   This	flag is	currently unused.

       parm	 Contains  parameter  data  for	 this target.  If no parameter
		 data exists, the value	is NULL.

		 When  selection  is  CLIPBOARD	 and  target  is  _MOTIF_CLIP-
		 BOARD_TARGETS or _MOTIF_DEFERRED_CLIPBOARD_TARGETS, the value
		 is the	requested operation (XmCOPY, XmMOVE, or	XmLINK).

       parm_format
		 Specifies whether the data in parm should be viewed as	a list
		 of  char,  short,  or long quantities.	 Possible values are 0
		 (when parm is NULL), 8	(when  the  data  in  parm  should  be
		 viewed	 as a list of chars), 16 (when the data	in parm	should
		 be viewed as a	list of	shorts), or 32 (when the data in  parm
		 should	 be viewed as a	list of	longs).	 Note that parm_format
		 symbolizes a data type, not the number	of bits	in  each  list
		 element.   For	example, on some machines, a parm_format of 32
		 means that the	data in	parm should be viewed  as  a  list  of
		 64-bit	quantities, not	32-bit quantities.

       parm_length
		 Specifies  the	number of elements of data in parm, where each
		 element has the size specified	by parm_format.	 When parm  is
		 NULL, the value is 0.

       status	 An IN/OUT member that specifies the status of the conversion.
		 The  initial value is XmCONVERT_DEFAULT.  The callback	proce-
		 dure can set this member to one of the	following values:

		 XmCONVERT_DEFAULT
			   The widget class conversion procedure, if  any,  is
			   called  after  the  callback	procedures return.  If
			   the widget class conversion procedure produces  any
			   data,  it overwrites	the data provided by the call-
			   back	procedures in the value	member.

		 XmCONVERT_MERGE
			   The widget class conversion procedure, if  any,  is
			   called  after  the  callback	procedures return.  If
			   the widget class conversion procedure produces  any
			   data,  it  appends its data to the data provided by
			   the callback	procedures in the value	member.	  This
			   value  is intended for use with targets that	result
			   in lists of data, such as TARGETS.

		 XmCONVERT_DONE
			   The callback	procedure  has	successfully  finished
			   the conversion.  The	widget class conversion	proce-
			   dure, if any, is not	called after the callback pro-
			   cedures return.

		 XmCONVERT_REFUSE
			   The	callback  procedure has	terminated the conver-
			   sion	process	without	completing the requested  con-
			   version.  The widget	class conversion procedure, if
			   any,	 is  not  called after the callback procedures
			   return.

       value	 An IN/OUT parameter that contains any data that the  callback
		 procedure  produces  as a result of the conversion.  The ini-
		 tial value is NULL.  If the callback procedure	sets this mem-
		 ber, it must ensure that the type, format, and	length members
		 correspond to the data	in value.  The callback	 procedure  is
		 responsible  for allocating, but not for freeing, memory when
		 it sets this member.

       type	 An IN/OUT parameter that indicates the	type of	 the  data  in
		 the value member.  The	initial	value is INTEGER.

       format	 An  IN/OUT parameter that specifies whether the data in value
		 should	be viewed as a list of char, short,  or	 long  quanti-
		 ties.	 The  initial  value is	8.  The	callback procedure can
		 set this member to 8 (for a list of char), 16 (for a list  of
		 short), or 32 (for a list of long).

       length	 An  IN/OUT  member  that  specifies the number	of elements of
		 data in value,	where each element has the size	symbolized  by
		 format.  The initial value is 0 (zero).

       A  pointer to the following callback structure is passed	to the XmNdes-
       tinationCallback	procedures:

       typedef struct
       {
	       int reason;
	       XEvent  *event;
	       Atom selection;
	       XtEnum operation;
	       int flags;
	       XtPointer transfer_id;
	       XtPointer destination_data;
	       XtPointer location_data;
	       Time time;
       } XmDestinationCallbackStruct;

       reason	 Indicates why the callback was	invoked.

       event	 Points	to the XEvent that triggered the callback.  It can  be
		 NULL.

       selection Indicates  the	selection for which data transfer is being re-
		 quested.  Possible values are CLIPBOARD, PRIMARY,  SECONDARY,
		 and _MOTIF_DROP.

       operation Indicates the type of transfer	operation requested.

		      When  the selection is PRIMARY, possible	values are Xm-
		       MOVE, XmCOPY, and XmLINK.

		      When the	selection is SECONDARY or CLIPBOARD,  possible
		       values are XmCOPY and XmLINK.

		      When  the selection is _MOTIF_DROP, possible values are
		       XmMOVE,	XmCOPY,	 XmLINK,  and  XmOTHER.	  A  value  of
		       XmOTHER means that the callback procedure must get fur-
		       ther  information  from the XmDropProcCallbackStruct in
		       the destination_data member.

       flags	 Indicates whether or not the destination widget is  also  the
		 source	of the data to be transferred.	Following are the pos-
		 sible values:

		 XmCONVERTING_NONE
			   The	destination  widget  is	 not the source	of the
			   data	to be transferred.

		 XmCONVERTING_SAME
			   The destination widget is the source	of the data to
			   be transferred.

       transfer_id
		 Serves	as a unique ID to identify the transfer	transaction.

       destination_data
		 Contains information about the	destination.  When the	selec-
		 tion  is  _MOTIF_DROP,	 the callback procedures are called by
		 the  drop  site's  XmNdropProc,  and  destination_data	 is  a
		 pointer  to  the  XmDropProcCallbackStruct passed to the XmN-
		 dropProc procedure.  When the selection is SECONDARY,	desti-
		 nation_data  is an Atom representing a	target recommmended by
		 the selection owner for  use  in  converting  the  selection.
		 Otherwise, destination_data is	NULL.

       location_data
		 Contains  information	about the location where data is to be
		 transferred.  The value is always NULL	when the selection  is
		 SECONDARY or CLIPBOARD.  If the value is NULL,	the data is to
		 be  inserted at the widget's cursor position.	Otherwise, the
		 value is a pointer to an XPoint structure  containing	the  x
		 and  y	 coordinates  at  the location where the data is to be
		 transferred.  Once  XmTransferDone  procedures	 start	to  be
		 called, location_data will no longer be stable.

       time	 Indicates the time when the transfer operation	began.

   Translations
       The XmContainer translations are	listed below.

       The following key names are listed in the X standard key	event transla-
       tion table syntax.  This	format is the one used by Motif	to specify the
       widget  actions	corresponding to a given key.  A brief overview	of the
       format is provided under	VirtualBindings(3).  For a  complete  descrip-
       tion  of	the format, please refer to the	X Toolkit Instrinsics Documen-
       tation.

       ~c ~s ~m	~a <Btn1Down>:
		 ContainerBeginSelect()

       <Btn1Motion>:
		 ContainerButtonMotion()

       ~c ~s ~m	~a <Btn1Up>:
		 ContainerEndSelect()

       c ~s ~m ~a <Btn1Down>:
		 ContainerBeginToggle()

       c ~s ~m ~a <Btn1Up>:
		 ContainerEndToggle()

       ~c s ~m ~a <Btn1Down>:
		 ContainerBeginExtend()

       ~c s ~m ~a <Btn1Up>:
		 ContainerEndExtend()

       c s ~m ~a <Btn1Down>:
		 ContainerBeginExtend()

       c s ~m ~a <Btn1Up>:
		 ContainerEndExtend()

       ~c ~s ~m	~a <Btn2Down>:
		 ContainerStartTransfer(Copy)

       c s ~m ~a <Btn2Down>:
		 ContainerStartTransfer(Link)

       ~c s ~m ~a <Btn2Down>:
		 ContainerStartTransfer(Move)

       ~m ~a <Btn2Up>:
		 ContainerEndTransfer()

       :c s a <Key><osfInsert>:
		 ContainerPrimaryLink()

       :c s m <Key><osfInsert>:
		 ContainerPrimaryLink()

       :a <Key><osfInsert>:
		 ContainerPrimaryCopy()

       :m <Key><osfInsert>:
		 ContainerPrimaryCopy()

       :s a <Key><osfDelete>:
		 ContainerPrimaryMove()

       :s m <Key><osfDelete>:
		 ContainerPrimaryMove()

       :<Key><osfCancel>:
		 ContainerCancel()

       :s <Key><osfSelect>:
		 ContainerExtend()

       :<Key><osfSelect>:
		 ContainerSelect()

       :<Key><osfSelectAll>:
		 ContainerSelectAll()

       :<Key><osfDeselectAll>:
		 ContainerDeselectAll()

       :<Key><osfAddMode>:
		 ContainerToggleMode()

       :<Key><osfActivate>:
		 ContainerActivate()

       s ~c ~m ~a <Key>space:
		 ContainerExtend()

       ~s ~c ~m	~a <Key>space:
		 ContainerSelect()

       ~s ~c ~m	~a <Key>Return:
		 ContainerActivate()

       ~s c ~m ~a <Key>slash:
		 ContainerSelectAll()

       ~s c ~m ~a <Key>backslash:
		 ContainerDeselectAll()

       :c s <Key><osfBeginLine>:
		 ContainerExtendCursor(First)

       :c s <Key><osfEndLine>:
		 ContainerExtendCursor(Last)

       :c <Key><osfBeginLine>:
		 ContainerMoveCursor(First)

       :c <Key><osfEndLine>:
		 ContainerMoveCursor(Last)

       :c <Key><osfLeft>:
		 ContainerExpandOrCollapse(Left)

       :c <Key><osfRight>:
		 ContainerExpandOrCollapse(Right)

       :s <Key><osfUp>:
		 ContainerExtendCursor(Up)

       :s <Key><osfDown>:
		 ContainerExtendCursor(Down)

       :s <Key><osfLeft>:
		 ContainerExtendCursor(Left)

       :s <Key><osfRight>:
		 ContainerExtendCursor(Right)

       :<Key><osfUp>:
		 ContainerMoveCursor(Up)

       :<Key><osfDown>:
		 ContainerMoveCursor(Down)

       :<Key><osfLeft>:
		 ContainerMoveCursor(Left)

       :<Key><osfRight>:
		 ContainerMoveCursor(Right)

       s ~m ~a <Key>Tab:
		 ManagerGadgetPrevTabGroup()

       ~s ~m ~a	<Key>Tab:
		 ManagerGadgetNextTabGroup()

       The Container button event translations are modified when Display's Xm-
       NenableBtn1Transfer resource does not have a value of XmOFF  (in	 other
       words,  it  is either XmBUTTON2_TRANSFER	or XmBUTTON2_ADJUST). This op-
       tion allows the actions for selection and transfer to be	integrated  on
       <Btn1>,	and  the  actions  for extending the selection can be bound to
       <Btn2>. The actions for <Btn1> that are defined in the  preceding  list
       still  apply  when  the	<Btn1>	event occurs over text that is not se-
       lected. The following actions apply when	the <Btn1> event  occurs  over
       text that is selected:

       ~c ~s ~m	~a <Btn1Down>:
		 ContainerHandleBtn1Down(ContainerBeginSelect,Copy)

       c ~s ~m ~a <Btn1Down>:
		 ContainerHandleBtn1Down(ContainerBeginToggle,Copy)

       c s ~m ~a <Btn1Down>:
		 ContainerHandleBtn1Down(ContainerNoop,Link)

       ~c s ~m ~a <Btn1Down>:
		 ContainerHandleBtn1Down(ContainerBeginExtend,Move)

       <Btn1Motion>:
		 ContainerHandleBtn1Motion(ContainerButtonMotion)

       ~c ~s ~m	~a <Btn1Up>:
		 ContainerHandleBtn1Up(ContainerEndSelect)

       c ~s ~m ~a <Btn1Up>:
		 ContainerHandleBtn1Up(ContainerEndToggle)

       ~c s ~m ~a <Btn1Up>:
		 ContainerHandleBtn1Up(ContainerEndExtend)

       c s ~m ~a <Btn1Down>:
		 ContainerHandleBtn1Down(ContainerBeginExtend)

       c s ~m ~a <Btn1Up>:
		 ContainerHandleBtn1Up(ContainerEndExtend)

       When  Display's	XmNenableBtn1Transfer  resource	 has a value of	XmBUT-
       TON2_ADJUST, the	following actions apply:

       ~c ~s ~m	~a <Btn2Down>:
		 ContainerHandleBtn2Down(ContainerStartTransfer,Copy)

       c s ~m ~a <Btn2Down>:
		 ContainerHandleBtn2Down(ContainerStartTransfer,Link)

       ~c s ~m ~a <Btn2Down>:
		 ContainerHandleBtn2Down(ContainerStartTransfer,Move)

       <Btn2Motion>:
		 ContainerHandleBtn2Motion(ContainerButtonMotion)

       ~m ~a <Btn2Up>:
		 ContainerHandleBtn2Up(ContainerEndTransfer)

   Action Routines
       The Container action routines are described below.  The current	selec-
       tions are always	shown with the background color	specified by the XmNs-
       electColor resource.

       ContainerActivate():
		 This	action	 calls	XmNdefaultActionCallback  with	reason
		 XmCR_DEFAULT_ACTION.

       ContainerBeginExtend():
		 Simply	returns	if XmNselectionPolicy  is  XmSINGLE_SELECT  or
		 XmBROWSE_SELECT.   Simply  returns if XmNlayoutType is	XmSPA-
		 TIAL.

		 Otherwise, this action	sets the selection state of all	 items
		 between the anchor item and the item under the	pointer	to the
		 selection  state  of the anchor item.	The location cursor is
		 moved to the item under the pointer.	If  XmNautomaticSelec-
		 tion  is XmAUTO_SELECT, the XmNselectionCallback(s) is	called
		 with either XmCR_MULTIPLE_SELECT or  XmCR_EXTENDED_SELECT  as
		 the reason depending on XmNselectionPolicy, and with auto_se-
		 lection_type XmAUTO_CHANGE.

       ContainerBeginSelect():
		 If  this  is  a second	ContainerBeginSelect() action that has
		 occurred within the time  specified  by  the  display's  mul-
		 ticlick time, this action calls XmNdefaultActionCallback with
		 reason	XmCR_DEFAULT_ACTION and	returns.

		 Otherwise,  processing	 depends on the	value of XmNselection-
		 Policy	as follows:

		 XmSINGLE_SELECT
			   This	action deselects all  items  and  toggles  the
			   item	(if any) under the pointer.

		 XmBROWSE_SELECT
			   This	 action	 deselects  all	 items and toggles the
			   item	(if any) under the pointer.  This item is  now
			   the anchor item for further selection.  If XmNauto-
			   maticSelection is XmAUTO_SELECT and a change	in any
			   item's  selection  state is made, the XmNselection-
			   Callback(s) is called with  reason  XmCR_BROWSE_SE-
			   LECT	and auto_selection_type	XmAUTO_BEGIN.

		 XmMULTIPLE_SELECT
			   If  the  pointer  is	over an	item and XmNselection-
			   Technique is	not XmMARQUEE, this action toggles the
			   selection state of that item.  The item becomes the
			   anchor item for further  selection.	 If  XmNselec-
			   tionTechnique is XmMARQUEE, XmMARQUEE_EXTEND_START,
			   or  XmMARQUEE_EXTEND_BOTH,  this  action  sets  the
			   start point for the Marquee rectangle.   If	XmNse-
			   lectionTechnique  is	 XmMARQUEE_EXTEND_START	or Xm-
			   MARQUEE_EXTEND_BOTH and  the	 pointer  is  over  an
			   item,  this	action	draws  the  Marquee  rectangle
			   around  the	item.	If  XmNautomaticSelection   is
			   XmAUTO_SELECT,   the	  XmNselectionCallback(s)   is
			   called   with   reason   XmCR_MULTIPLE_SELECT   and
			   auto_selection_type XmAUTO_BEGIN.

		 XmEXTENDED_SELECT
			   All	items are first	deselected. Processing is then
			   identical to	the case where	XmNselectionPolicy  is
			   XmMULTIPLE_SELECT, except that XmCR_EXTENDED_SELECT
			   is  the  callback reason given if XmNselectionCall-
			   back	is called.

       ContainerBeginToggle():
		 Simply	returns	if XmNselectionPolicy  is  XmSINGLE_SELECT  or
		 XmBROWSE_SELECT.

		 Otherwise,  if	 the pointer is	over an	item and XmNselection-
		 Technique is not XmMARQUEE, this action toggles the selection
		 state of that item.  The item becomes	the  anchor  item  for
		 further  selection.   If  XmNselectionTechnique is XmMARQUEE,
		 XmMARQUEE_EXTEND_START, or XmMARQUEE_EXTEND_BOTH this	action
		 sets the start	point for the Marquee rectangle.  If XmNselec-
		 tionTechnique	 is  XmMARQUEE_EXTEND_START  or	 XmMARQUEE_EX-
		 TEND_BOTH and the pointer is over an item, this action	 draws
		 the Marquee rectangle around the item.	 If XmNautomaticSelec-
		 tion  is XmAUTO_SELECT, the XmNselectionCallback(s) is	called
		 with either XmCR_MULTIPLE_SELECT or  XmCR_EXTENDED_SELECT  as
		 the   reason,	 depending  on	XmNselectionPolicy,  and  with
		 auto_selection_type XmAUTO_BEGIN.

       ContainerButtonMotion():
		 Processing depends on the  value  of  XmNselectionPolicy,  as
		 follows:

		 XmSINGLE_SELECT
			   This	action simply returns to the caller.

		 XmBROWSE_SELECT
			   Simply  returns if this action follows a Container-
			   BeginExtend() action	or ContainerBeginToggle()  ac-
			   tion.

			   If the pointer is no	longer over the	current	anchor
			   item,  this	action toggles the current anchor item
			   and then toggles the	item  under  the  pointer  (if
			   any)	 and  makes it the new anchor item for further
			   processing.	If XmNautomaticSelection is XmAUTO_SE-
			   LECT	and a change in	any item's selection state  is
			   made,  the  XmNselectionCallback(s)	is called with
			   reason XmCR_BROWSE_SELECT  and  auto_selection_type
			   XmAUTO_MOTION.

		 XmMULTIPLE_SELECT
			   If  a  previous  action has set a Marquee rectangle
			   start point,	this action draws the Marquee  rectan-
			   gle	between	 the  current pointer position and the
			   Marquee start point.	If  the	 XmNselectionTechnique
			   is XmMARQUEE_EXTEND_BOTH and	the pointer is over an
			   item, the end point of the Marquee rectangle	is ex-
			   tended to include the item. The selection states of
			   all	items within the Marquee rectangle are toggled
			   to match the	state of the anchor item.

			   If no Marquee rectangle start point is set and  the
			   pointer  is over an item, processing	depends	on the
			   XmNlayoutType resource.  The	anchor item  from  the
			   previous action is used. If XmNlayoutType is	XmSPA-
			   TIAL,  the  selection  state	 of the	item under the
			   pointer is toggled to match the selection state  of
			   the	anchor item.  If XmNlayoutType is XmOUTLINE or
			   XmDETAIL, the selection state of all	items  between
			   the	anchor item and	the item under the pointer are
			   toggled to match the	selection state	of the	anchor
			   item.

			   If  XmNautomaticSelection  is  XmAUTO_SELECT	 and a
			   change in any item's	selection state	is  made,  the
			   XmNselectionCallback(s)   is	  called  with	reason
			   XmCR_MULTIPLE_SELECT	   and	   auto_selection_type
			   XmAUTO_MOTION.

		 XmEXTENDED_SELECT
			   Processing is identical to the case where XmNselec-
			   tionPolicy	is   XmMULTIPLE_SELECT,	  except  that
			   XmCR_EXTENDED_SELECT	is the callback	 reason	 given
			   if XmNselectionCallback is called.

       ContainerCancel():
		 If a selection	is in progress,	this action restores selection
		 states	 of  all items to their	state before the selection be-
		 gan.  If XmNautomaticSelection	is True	and a  change  in  any
		 item's	 selection  state is made, the XmNselectionCallback is
		 called	with reason XmCR_BROWSE_SELECT,	XmMULTIPLE_SELECT,  or
		 XmCR_EXTENDED_SELECT  depending on the	XmNselectionPolicy re-
		 source	and auto_selection_type	XmAUTO_CANCEL.

       ContainerDeselectAll():
		 This action deselects all items and  calls  XmNselectionCall-
		 back with reason depending on XmNselectionPolicy.

       ContainerEndExtend():
		 Simply	 returns  if  XmNselectionPolicy is XmSINGLE_SELECT or
		 XmBROWSE_SELECT.  Simply returns if XmNlayoutType  is	XmSPA-
		 TIAL.

		 Otherwise,   if  XmNautomaticSelection	 is  XmNO_AUTO_SELECT,
		 XmNselectionCallback(s) is  called  with  either  XmCR_MULTI-
		 PLE_SELECT or XmCR_EXTENDED_SELECT as the reason depending on
		 XmNselectionPolicy.   If  XmNautomaticSelection is XmAUTO_SE-
		 LECT and no change is made in any item's selection  state  by
		 this  action,	XmNselectionCallback(s)	 is called with	either
		 XmCR_MULTIPLE_SELECT or XmCR_EXTENDED_SELECT  as  the	reason
		 depending   on	  XmNselectionPolicy  and  auto_selection_type
		 XmAUTO_CHANGE.	 If XmNautomaticSelection is XmAUTO_SELECT and
		 this action makes no change in	any  item's  selection	state,
		 XmNselectionCallback(s)  is  called  with  either XmCR_MULTI-
		 PLE_SELECT or XmCR_EXTENDED_SELECT as the reason depending on
		 XmNselectionPolicy and	auto_selection_type XmAUTO_NO_CHANGE.

       ContainerEndSelect():
		 Processing depends on the  value  of  XmNselectionPolicy,  as
		 follows:

		 XmSINGLE_SELECT
			   This	 action	calls XmNselectionCallback with	reason
			   XmCR_SINGLE_SELECT.

		 XmBROWSE_SELECT
			   If the pointer is no	longer over the	current	anchor
			   item, this action toggles the current  anchor  item
			   and	then  toggles  the  item under the pointer (if
			   any). If XmNautomaticSelection is XmNO_AUTO_SELECT,
			   the XmNselectionCallback(s) is called  with	reason
			   XmCR_BROWSE_SELECT.	 If  XmNautomaticSelection  is
			   XmAUTO_SELECT and a change in any item's  selection
			   state  is  made,  XmNselectionCallback(s) is	called
			   with	 reason	 XmCR_BROWSE_SELECT  and   auto_selec-
			   tion_type  XmAUTO_CHANGE.  If XmNautomaticSelection
			   is XmAUTO_SELECT and	 no  change  is	 made  in  any
			   item's  selection  state  by	this action, XmNselec-
			   tionCallback(s)    is    called     with	reason
			   XmCR_BROWSE_SELECT	   and	   auto_selection_type
			   XmAUTO_NO_CHANGE.

		 XmMULTIPLE_SELECT
			   This	action first performs the same	processing  as
			   the	ContainerButtonMotion()	 action,  except  that
			   XmNselectionCallback	is not called.	If XmNautomat-
			   icSelection is XmNO_AUTO_SELECT, the	 XmNselection-
			   Callback(s) is called with reason XmCR_MULTIPLE_SE-
			   LECT.   If  XmNautomaticSelection  is XmAUTO_SELECT
			   and a change	in any item's selection	state is made,
			   the XmNselectionCallback(s) is called  with	reason
			   XmCR_MULTIPLE_SELECT	    and	   auto_selection_type
			   XmAUTO_CHANGE.    If	   XmNautomaticSelection    is
			   XmAUTO_SELECT  and  this  action makes no change in
			   any item's selection	state, XmNselectionCallback(s)
			   is  called  with  reason  XmCR_MULTIPLE_SELECT  and
			   auto_selection_type XmAUTO_NO_CHANGE.

		 XmEXTENDED_SELECT
			   This	 action	 first performs	the same processing as
			   the	ContainerButtonMotion()	 action,  except  that
			   XmNselectionCallback	is not called.	If XmNautomat-
			   icSelection	is XmNO_AUTO_SELECT, the XmNselection-
			   Callback(s) is called with reason XmCR_EXTENDED_SE-
			   LECT.  If  XmNautomaticSelection  is	 XmAUTO_SELECT
			   and a change	in any item's selection	state is made,
			   XmNselectionCallback(s)   is	  called  with	reason
			   XmCR_EXTENDED_SELECT	   and	   auto_selection_type
			   XmAUTO_CHANGE.     If    XmNautomaticSelection   is
			   XmAUTO_SELECT and this action makes	no  change  in
			   any item's selection	state, XmNselectionCallback(s)
			   is  called  with  reason  XmCR_EXTENDED_SELECT  and
			   auto_selection_type XmAUTO_NO_CHANGE.

       ContainerEndToggle():
		 Simply	returns	if XmNselectionPolicy  is  XmSINGLE_SELECT  or
		 XmBROWSE_SELECT.   If XmNselectionPolicy is XmMULTIPLE_SELECT
		 or XmEXTENDED_SELECT, this action performs the	same  process-
		 ing as	the ContainerEndSelect() action.

       ContainerEndTransfer()::
		 If  the  elapsed time since a ContainerStartTransfer()	action
		 has occurred exceeds the time span specified by the display's
		 multiclick time, this action returns.

		 Otherwise,   the   ContainerPrimaryCopy(),    ContainerPrima-
		 ryLink(),  or	ContainerPrimaryMove()	action is invoked, de-
		 pending on the	value of the operation parameter saved by Con-
		 tainerStartTransfer().

       ContainerExpandOrCollapse(Left|Right|Collapse|Expand):
		 This action changes the value of the XmNoutlineState  of  the
		 current  focus	 widget.  If the argument value	is Collapse or
		 Left, the XmNoutlineState resource value  is  set  to	XmCOL-
		 LAPSED. If the	argument value is Expand or Right, the XmNout-
		 lineState resource value is set to XmEXPANDED.

		 If  the  argument is Left or Right and	the layout is right to
		 left, then the	setting	of the XmNoutlineState	value  is  re-
		 versed	from that described in the preceding paragraph.

		 Simply	returns	if XmNlayoutType is XmSPATIAL.

       ContainerExtend():
		 Processing  depends  on  the  value of	XmNselectionPolicy, as
		 follows:

		 If the	selection policy is  XmSINGLE_SELECT  or  XmBROWSE_SE-
		 LECT,	this  action  returns.	If XmNlayoutType is XmSPATIAL,
		 this action returns.

		 If the	selection policy  is  XmMULTIPLE_SELECT,  this	action
		 sets the selection state of all items between the anchor item
		 and  the location cursor to the selection state of the	anchor
		 item.

		 If the	selection policy is  XmEXTENDED_SELECT	and  the  Con-
		 tainer	is in Normal Mode, this	action deselects all items and
		 selects  all  items  between the anchor item and the location
		 cursor.  If the selection policy is XmEXTENDED_SELECT and the
		 Container is in Add Mode,  this  action  sets	the  selection
		 state	of  all	items between the anchor item and the location
		 cursor	to the selection state of the anchor item.

		 XmNselectionCallback is called	with reason  XmCR_MULTIPLE_SE-
		 LECT or XmCR_EXTENDED_SELECT depending	on XmNselectionPolicy.

       ContainerExtendCursor(Left|Right|Up|Down):
		 Processing  depends  on  the  value of	XmNselectionPolicy, as
		 follows:

		 If the	selection policy is  XmSINGLE_SELECT  or  XmBROWSE_SE-
		 LECT,	this  action  returns.	If XmNlayoutType is XmSPATIAL,
		 this action returns.

		 This action moves the location	cursor one item	in  the	 indi-
		 cated	direction,  if possible.  If the value of the argument
		 string	is First or Last, this action moves the	location  cur-
		 sor  to  the indicated	item. For other	values of the argument
		 string, the location cursor is	not affected.

		 If the	selection policy  is  XmMULTIPLE_SELECT,  this	action
		 sets the selection state of all items between the anchor item
		 and  the location cursor to the selection state of the	anchor
		 item.

		 If the	selection policy is  XmEXTENDED_SELECT	and  the  Con-
		 tainer	is in Normal Mode, this	action deselects all items and
		 selects  all  items  between the anchor item and the location
		 cursor.  If the selection policy is XmEXTENDED_SELECT and the
		 Container is in Add Mode,  this  action  sets	the  selection
		 state	of  all	items between the anchor item and the location
		 cursor	to the selection state of the anchor item.

		 XmNselectionCallback is called	with reason  XmCR_MULTIPLE_SE-
		 LECT or XmCR_EXTENDED_SELECT depending	on XmNselectionPolicy.

       ContainerHandleBtn1Down(string)
		 When  Display's  XmNenableBtn1Transfer	resource is not	XmOFF,
		 the actions for selection  and	 transfer  are	integrated  on
		 <Btn1>.   If  the pointer is over an unselected item or back-
		 ground, the item is first selected  before  the  transfer  is
		 started.  Otherwise,  if  the	item  is already selected, the
		 transfer is started.  The value of string can be one  of  the
		 following actions:

		      ContainerBeginSelect,Copy

		      ContainerBeginToggle,Copy

		      ContainerNoop,Link

		      ContainerBeginExtend,Move

       ContainerHandleBtn1Motion(string)
		 When  Display's  XmNenableBtn1Transfer	resource is not	XmOFF,
		 the actions for selection  and	 transfer  are	integrated  on
		 <Btn1>.  When	this  action is	invoked, and a selection is in
		 progress, a drag is performed.	Otherwise, the default	action
		 as  specified in string is performed. The value of string can
		 be ContainerButtonMotion.

       ContainerHandleBtn1Up(string)
		 If a Button 1 transfer	was in progress, then when this	action
		 is invoked, that transfer is cancelled.  Otherwise,  the  de-
		 fault	action	as specified in	string is performed. The value
		 of string can be one of the following actions:

		      ContainerEndSelect

		      ContainerEndToggle

		      ContainerEndExtend

       ContainerHandleBtn2Down(string)
		 When Display's	XmNenableBtn1Transfer resource has a value  of
		 XmBUTTON2_ADJUST,  the	 actions  for  extending selection are
		 bound on <Btn2>. Otherwise, the action	that is	performed  de-
		 pends on the value of string, which can be one	of the follow-
		 ing actions:

		      ContainerStartTransfer,Copy

		      ContainerStartTransfer,Link

		      ContainerStartTransfer,Move

       ContainerHandleBtn2Motion(string)
		 When  Display's  XmNenableBtn1Transfer	resource is not	XmBUT-
		 TON2_ADJUST, and a selection is in progress, a	drag  is  per-
		 formed.   Otherwise, the default action that is performed de-
		 pends on the value of string, which can be ContainerButtonMo-
		 tion.

       ContainerHandleBtn2Up(string)
		 When Display's	XmNenableBtn1Transfer resource has a value  of
		 XmBUTTON2_ADJUST,  this action	ends an	extend.	Otherwise, the
		 action	that is	performed depends  on  the  value  of  string,
		 which can be ContainerEndTransfer.

       ContainerMoveCursor(Left|Right|Up|Down|First|Last):
		 If  the  argument  is	Left,  Right, Up, or Down, this	action
		 moves the location cursor one item in	the  indicated	direc-
		 tion,	if  possible.	If the value of	the argument string is
		 First or Last,	this action moves the location cursor  to  the
		 indicated item. Any other arguments are ignored.

		 If XmNselectionPolicy is XmBROWSE_SELECT, or if XmNselection-
		 Policy	 is  XmEXTENDED_SELECT	and the	Container is in	Normal
		 Mode, this action deselects all items,	selects	 the  item  at
		 the  location cursor, and calls XmNselectionCallback with the
		 reason	depending on XmNselectionPolicy.

       ContainerPrimaryCopy():
		 This action requests that primary selection data be copied to
		 the Container.	 This action calls the	XmNdestinationCallback
		 procedures  for  the  PRIMARY selection and the XmCOPY	opera-
		 tion.	By default, the	Container does not  do	any  transfer,
		 and  copying  the selection is	the responsibility of the XmN-
		 destinationCallback procedures.

       ContainerPrimaryLink():
		 This action requests that primary selection data be linked to
		 the Container.	 This action calls the	XmNdestinationCallback
		 procedures  for  the  PRIMARY selection and the XmLINK	opera-
		 tion.	By default, the	Container does not  do	any  transfer,
		 and  linking  the selection is	the responsibility of the XmN-
		 destinationCallback procedures.

       ContainerPrimaryMove():
		 This action requests that primary selection data be copied to
		 the Container and deleted from	the primary source.  This  ac-
		 tion calls the	XmNdestinationCallback procedures for the PRI-
		 MARY  selection  and  the  XmMOVE operation.  By default, the
		 Container does	not do any transfer, and moving	the  selection
		 is  the  responsibility  of the XmNdestinationCallback	proce-
		 dures.	 If the	transfer is successful,	this action then calls
		 the selection owner's XmNconvertCallback procedures  for  the
		 PRIMARY selection and the DELETE target.

       ContainerSelect():
		 Processing  depends  on  the  value of	XmNselectionPolicy, as
		 follows:

		 If the	selection policy is  XmSINGLE_SELECT  or  XmBROWSE_SE-
		 LECT, this action deselects all items and selects the item at
		 the location cursor.

		 If  the  selection  policy  is	XmMULTIPLE_SELECT, this	action
		 toggles the selection state of	the item at the	location  cur-
		 sor.	This  item  becomes the	anchor item for	further	selec-
		 tions.

		 If the	selection policy is  XmEXTENDED_SELECT	and  the  Con-
		 tainer	is in Normal Mode, this	action deselects all items and
		 selects  the  item  at	 the location cursor. If the selection
		 policy	is XmEXTENDED_SELECT and the Container is in Add Mode,
		 this action toggles the selection state of the	 item  at  the
		 location  cursor.   The selected/toggled item becomes the an-
		 chor item for further selections.

		 XmNselectionCallback is called	with the reason	 depending  on
		 XmNselectionPolicy.

       ContainerSelectAll():
		 If  XmNselectionPolicy	is XmSINGLE_SELECT or XmBROWSE_SELECT,
		 this action deselects all items and selects the item  at  the
		 location cursor position.

		 If  XmNselectionPolicy	is XmMULTIPLE_SELECT or	XmEXTENDED_SE-
		 LECT, this action selects all items.

		 XmNselectionCallback is called	with the reason	 depending  on
		 the value of XmNselectionCallback.

       ContainerStartTransfer(Copy|Move|Link):
		 This  action  saves  the event	and the	operation specified in
		 the argument string for use by	 subsequent  actions.	If  no
		 ContainerEndTransfer()	 actions  occur	 within	 the time span
		 specified by the display's multiclick time and	if  XmNlayout-
		 Type  is  XmSPATIAL,  this  action  creates a DragContext and
		 starts	a drag transfer	by using string	to specify the	trans-
		 fer  operation.  If  no argument string is specified, Copy is
		 the default value.

		 Unless	default	drag and drop behavior has been	overridden  by
		 a  XmNconvertCallback procedure, if the drop operation	occurs
		 within	the Container, then the	item(s)	being dragged are  re-
		 located  at  the  position of the drop	operation. If the item
		 targeted by the Drag operation	is not in the selected	state,
		 then  only that item is moved.	If the item is in the selected
		 state,	however, all items in the selected state are moved.

       ContainerToggleMode():
		 If XmNselectionPolicy is XmEXTENDED_SELECT, this action  tog-
		 gles the Container between Normal Mode	and Add	Mode.

   Additional Behavior
       The Container widget has	the following additional behavior:

       <Btn1Down>(2+)
		 If  a button click is followed	by another button click	within
		 the time span specified by the	display's multiclick time, the
		 Container interprets that as a	double-click and calls the Xm-
		 NdefaultActionCallback	callbacks.

       <FocusIn>:
		 If the	focus policy is	explicit, sets the focus and draws the
		 location cursor.

       <FocusOut>:
		 If the	focus policy is	explicit, removes the focus and	erases
		 the location cursor.

   Virtual Bindings
       The bindings for	virtual	keys are  vendor  specific.   For  information
       about bindings for virtual buttons and keys, see	VirtualBindings(3).

RELATED
       Composite(3), Constraint(3), Core(3), XmContainerCopy, XmContainerCopy-
       Link, XmContainerCut, XmContainerGetItemChildren, XmContainerPaste, Xm-
       ContainerPasteLink,  XmContainerRelayout(3), XmContainerReorder(3), Xm-
       CreateContainer(3),  XmCreateIconGadget(3),   XmIconGadget(3),	XmMan-
       ager(3),	XmVaCreateContainer(3),	and XmVaCreateManagedContainer(3).

								XmContainer(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=XmContainer&sektion=3&manpath=FreeBSD+Ports+14.3.quarterly>

home | help