Museum

Home

Lab Overview

Retrotechnology Articles

⇒ Online Manual

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Composite(3X)  —  OSF/Motif

NAME

Composite − The Composite widget class

SYNOPSIS

#include <Xm/Xm.h>

DESCRIPTION

Composite widgets are intended to be containers for other widgets and can have an arbitrary number of children.  Their responsibilities (implemented either directly by the widget class or indirectly by Intrinsics functions) include:

       •Overall management of children from creation to destruction. 

       •Destruction of descendants when the composite widget is destroyed. 

       •Physical arrangement (geometry management) of a displayable subset of managed children. 

       •Mapping and unmapping of a subset of the managed children.  Instances of composite widgets need to specify the order in which their children are kept.  For example, an application may want a set of command buttons in some logical order grouped by function, and it may want buttons that represent filenames to be kept in alphabetical order. 

Classes

Composite inherits behavior and resources from Core. 

The class pointer is compositeWidgetClass. 

The class name is Composite. 

New Resources

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

Composite Resource Set
Name Default Access
      Class       Type
XmNchildren NULL G
      XmCReadOnly        WidgetList
XmNinsertPosition NULL CSG
      XmCInsertPosition        XtOrderProc
XmNnumChildren 0 G
      XmCReadOnly        Cardinal

XmNchildren
A read-only list of the children of the widget.

XmNinsertPosition
Points to the XtOrderProc function described below. 

XmNnumChildren
A read-only resource specifying the length of the list of children in XmNchildren. 

The following procedure pointer in a composite widget instance is of type XtOrderProc:

Cardinal (* XtOrderProc) (widget)
Widgetw;

wSpecifies the widget. 

Composite widgets that allow clients to order their children (usually homogeneous boxes) can call their widget instance’s insert_position procedure from the class’s insert_child procedure to determine where a new child should go in its children array.  Thus, a client of a composite class can apply different sorting criteria to widget instances of the class, passing in a different insert_position procedure when it creates each composite widget instance. 

The return value of the insert_position procedure indicates how many children should go before the widget.  Returning zero indicates that the widget should go before all other children; returning num_children indicates that it should go after all other children.  The default insert_position function returns num_children and can be overridden by a specific composite widget’s resource list or by the argument list provided when the composite widget is created. 

Inherited Resources

Composite inherits behavior and resources from the following superclass.  For a complete description of each resource, refer to the manual page for that superclass. 

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

Translations

There are no translations for Composite. 

RELATED INFORMATION

Core(3X). 

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026