|
Traits(file formats) Traits(file formats)
NAME
Traits -- Lists the traits used by the Motif Toolkit.
DESCRIPTION
A trait is a characteristic of a widget. A widget holding a particular trait is announcing
a particular ability to other widgets. The following table summarizes the standard Motif
traits.
+----------------------------------------------------------+
| Purpose of Each Trait |
|Trait Name | A Widget Holding This Trait Can |
| | Do The Following: |
+-----------------------+----------------------------------+
|XmQTaccessTextual | Display one primary text parcel. |
+-----------------------+----------------------------------+
|XmQTactivatable | Become a command button in a |
| | dialog box. |
+-----------------------+----------------------------------+
|XmQTcareParentVisual | Borrow its parent's visual |
| | information. |
+-----------------------+----------------------------------+
|XmQTcontainer | Manage container item children. |
+-----------------------+----------------------------------+
|XmQTcontainerItem | Become a child of a container |
| | widget. |
+-----------------------+----------------------------------+
|XmQTdialogShellSavvy | Become a child of a DialogShell. |
+-----------------------+----------------------------------+
|XmQTjoinSide | Attach itself to one side of a |
| | suitable parent. |
+-----------------------+----------------------------------+
|XmQTmenuSavvy | Become a menu child. |
+-----------------------+----------------------------------+
|XmQTmenuSystem | Manage a menu system. |
+-----------------------+----------------------------------+
|XmQTnavigator | Act as a navigator to a scrol- |
| | lable widget. |
+-----------------------+----------------------------------+
|XmQTscrollFrame | Handle one or more navigator |
| | widgets. |
+-----------------------+----------------------------------+
|XmQTspecifyRenderTable | Supply the names of its default |
| | render tables. |
+-----------------------+----------------------------------+
|XmQTtakesDefault | Change its appearance to show |
| | that it is the default button. |
+-----------------------+----------------------------------+
|XmQTtransfer | Transfer data to other widgets |
| | and/or receive data from other |
| | widgets |
+-----------------------+----------------------------------+
+-----------------------+----------------------------------+
Traits are not often used in Motif application programs. However, traits are very impor-
tant to widget writers. For complete details on traits, see the Motif Widget Writer's
Guide.
The following table lists the names of all widgets and gadgets in the standard Motif wid-
get set that hold a particular trait. For example, the following table shows that the
XmQTcontainerItem trait is held by the XmIconGadget. As the table suggests, some traits
are held by many of the standard Motif widgets.
+----------------------------------------------------------+
| Trait Installation in Standard Widget Set |
|Trait Name | Is Installed on The Following |
| | Widgets: |
+-----------------------+----------------------------------+
|XmQTaccessTextual | XmLabel and all its subclasses; |
| | XmLabelGadget and all its sub- |
| | classes; XmText; XmTextField |
+-----------------------+----------------------------------+
|XmQTactivatable | XmArrowButton; XmArrowButtonGad- |
| | get; XmDrawnButton; XmPushBut- |
| | ton; XmPushButtonGadget |
+-----------------------+----------------------------------+
|XmQTcareParentVisual | All the subclasses of XmGadget |
| | (but not XmGadget itself); |
| | XmPrimitive and all its sub- |
| | classes |
+-----------------------+----------------------------------+
|XmQTcontainer | XmContainer |
+-----------------------+----------------------------------+
|XmQTcontainerItem | XmIconGadget |
+-----------------------+----------------------------------+
|XmQTdialogShellSavvy | XmBulletinBoard |
+-----------------------+----------------------------------+
|XmQTjoinSide | No widgets install this trait |
+-----------------------+----------------------------------+
|XmQTmenuSavvy | XmLabel; XmDrawnButton; XmCas- |
| | cadeButton; XmPushButton; XmTog- |
| | gleButton; XmLabelGadget; XmCas- |
| | cadeButtonGadget; XmPushButton- |
| | Gadget; XmToggleButtonGadget |
+-----------------------+----------------------------------+
|XmQTmenuSystem | XmRowColumn |
+-----------------------+----------------------------------+
|XmQTnavigator | XmScrollBar; XmSpinBox |
+-----------------------+----------------------------------+
|XmQTscrollFrame | XmNotebook; XmScrolledWindow |
+-----------------------+----------------------------------+
|XmQTspecifyRenderTable | XmBulletinBoard and all its sub- |
| | classes; XmMenuShell; XmVendor- |
| | Shell |
+-----------------------+----------------------------------+
|XmQTtakesDefault | XmPushButton; XmPushButtonGadget |
+-----------------------+----------------------------------+
|XmQTtransfer | XmContainer; XmLabel and all its |
| | subclasses; XmLabelGadget and |
| | all its subclasses; XmList; |
| | XmScale; XmText; XmTextField |
+-----------------------+----------------------------------+
+-----------------------+----------------------------------+
The following table lists the traits installed on each widget. For example, the following
table indicates that the XmArrowButton widget holds both the XmQTactivatable and XmQTcare-
ParentVisual traits.
+------------------------------------------------------------+
| |Trait Use by |
|Widget | |
|Widget Name | Installs These Traits |
+----------------------+-------------------------------------+
|= | |
+----------------------+-------------------------------------+
|XmArrowButton | XmQTactivatable, XmQTcareParentVi- |
| | sual |
+----------------------+-------------------------------------+
|XmArrowButtonGadget | XmQTactivatable, XmQTcareParentVi- |
| | sual |
+----------------------+-------------------------------------+
|XmBulletinBoard | XmQTdialogShellSavvy, XmQTspeci- |
| | fyRenderTable |
+----------------------+-------------------------------------+
|XmCascadeButton | XmQTaccessTextual, XmQTcarePar- |
| | entVisual, XmQTmenuSavvy, XmQT- |
| | transfer |
+----------------------+-------------------------------------+
|XmCascadeButtonGadget | XmQTaccessTextual, XmQTcarePar- |
| | entVisual, XmQTmenuSavvy, XmQT- |
| | transfer XmComboBox |
+----------------------+-------------------------------------+
|XmCommand | XmQTspecifyRenderTable |
+----------------------+-------------------------------------+
|XmContainer | XmQTcontainer, XmQTtransfer |
+----------------------+-------------------------------------+
|XmDialogShell | None |
+----------------------+-------------------------------------+
|XmDisplay | None |
+----------------------+-------------------------------------+
|XmDragContext | None |
+----------------------+-------------------------------------+
|XmDragIcon | None |
+----------------------+-------------------------------------+
|XmDrawingArea | None |
+----------------------+-------------------------------------+
|XmDrawnButton | XmQTaccessTextual, XmQTactivatable, |
| | XmQTcareParentVisual, XmQT- |
| | menuSavvy, XmQTtransfer |
+----------------------+-------------------------------------+
|XmDropTransfer | None |
+----------------------+-------------------------------------+
|XmFileSelectionBox | XmQTspecifyRenderTable |
+----------------------+-------------------------------------+
|XmForm | XmQTspecifyRenderTable |
+----------------------+-------------------------------------+
|XmFrame | None |
+----------------------+-------------------------------------+
|XmGadget | None |
+----------------------+-------------------------------------+
|XmIconGadget | XmQTcareParentVisual, XmQTcon- |
| | tainerItem |
+----------------------+-------------------------------------+
|XmLabel | XmQTaccessTextual, XmQTcarePar- |
| | entVisual, XmQTmenuSavvy, XmQT- |
| | transfer |
+----------------------+-------------------------------------+
|XmLabelGadget | XmQTaccessTextual, XmQTcarePar- |
| | entVisual, XmQTmenuSavvy, XmQT- |
| | transfer |
+----------------------+-------------------------------------+
|XmList | XmQTcareParentVisual, XmQTtransfer |
+----------------------+-------------------------------------+
|XmMainWindow | |
+----------------------+-------------------------------------+
|XmManager | |
+----------------------+-------------------------------------+
|XmMenuShell | XmQTspecifyRenderTable |
+----------------------+-------------------------------------+
|XmMessageBox | XmQTspecifyRenderTable |
+----------------------+-------------------------------------+
|XmNotebook | XmQTscrollFrame |
+----------------------+-------------------------------------+
|XmPanedWindow | |
+----------------------+-------------------------------------+
|XmPrimitive | XmQTcareParentVisual |
+----------------------+-------------------------------------+
|XmPushButton | XmQTaccessTextual, XmQTactivatable, |
| | XmQTcareParentVisual, XmQT- |
| | menuSavvy, XmQTtakesDefault, XmQT- |
| | transfer |
+----------------------+-------------------------------------+
|XmPushButtonGadget | XmQTaccessTextual, XmQTactivatable, |
| | XmQTcareParentVisual, XmQT- |
| | menuSavvy, XmQTtakesDefault, XmQT- |
| | transfer |
+----------------------+-------------------------------------+
|XmRowColumn | XmQTmenuSystem |
+----------------------+-------------------------------------+
|XmScale | XmQTtransfer |
+----------------------+-------------------------------------+
|XmScreen | |
+----------------------+-------------------------------------+
|XmScrollbar | XmQTcareParentVisual, XmQTnavigator |
+----------------------+-------------------------------------+
|XmScrolledWindow | XmQTscrollFrame |
+----------------------+-------------------------------------+
|XmSelectionBox | XmQTspecifyRenderTable |
+----------------------+-------------------------------------+
|XmSeparator | XmQTcareParentVisual |
+----------------------+-------------------------------------+
|XmSeparatorGadget | XmQTcareParentVisual |
+----------------------+-------------------------------------+
|XmSpinBox | XmQTnavigator |
+----------------------+-------------------------------------+
|XmText | XmQTaccessTextual, XmQTcarePar- |
| | entVisual, XmQTtransfer |
+----------------------+-------------------------------------+
|XmTextField | XmQTaccessTextual, XmQTcarePar- |
| | entVisual, XmQTtransfer |
+----------------------+-------------------------------------+
|XmToggleButton | XmQTaccessTextual, XmQTcarePar- |
| | entVisual, XmQTtransfer |
+----------------------+-------------------------------------+
|XmToggleButtonGadget | XmQTaccessTextual, XmQTcarePar- |
| | entVisual, XmQTtransfer |
+----------------------+-------------------------------------+
|VendorShell | XmQTspecifyRenderTable |
+----------------------+-------------------------------------+
+----------------------+-------------------------------------+
The following table summarizes how the standard Motif widgets access traits. There are two
general ways for a widget to access the traits of another widget.
One way is for a widget to ask another widget if it holds a particular trait. For exam-
ple, XmBulletinBoard asks each of its children widgets if they hold the XmQTtakesDefault
trait. XmBulletinBoard calls none of the trait methods of XmQTtakesDefault.
Another kind of access is when one widget calls another widget's trait method(s). For
example, XmBulletinBoard calls the getRenderTable trait method of the XmQTspecifyRen-
derTable trait.
+-------------------------------------------------------------------------------------+
| | Trait Access By |
|Widget | | |
|Widget | Accesses These Traits: | Calls These Trait Methods: |
+----------------------+------------------------+-------------------------------------+
|XmArrowButton | None | None |
+----------------------+------------------------+-------------------------------------+
|XmArrowButtonGadget | None | None |
+----------------------+------------------------+-------------------------------------+
|XmBulletinBoard | XmQTtakesDefault | None |
+----------------------+------------------------+-------------------------------------+
|XmBulletinBoard | XmQTspecifyRenderTable | getRenderTable |
+----------------------+------------------------+-------------------------------------+
|XmCascadeButton | XmQTmenuSystem | Many |
+----------------------+------------------------+-------------------------------------+
|XmCascadeButton | XmQTspecifyRenderTable | getRenderTable |
+----------------------+------------------------+-------------------------------------+
|XmCascadeButtonGadget | XmQTmenuSystem | Many |
+----------------------+------------------------+-------------------------------------+
|XmCascadeButtonGadget | XmQTspecifyRenderTable | getRenderTable |
+----------------------+------------------------+-------------------------------------+
|XmComboBox | XmQTaccessTextual | getValue, setValue |
+----------------------+------------------------+-------------------------------------+
|XmCommand | None | None |
+----------------------+------------------------+-------------------------------------+
|XmContainer | XmQTcontainerItem | getValues, setValues |
+----------------------+------------------------+-------------------------------------+
|XmContainer | XmQTscrollFrame | getInfo |
+----------------------+------------------------+-------------------------------------+
|XmDialogShell | XmQTdialogShellSavvy | callMapUnmapCB |
+----------------------+------------------------+-------------------------------------+
|XmDisplay | None | None |
+----------------------+------------------------+-------------------------------------+
|XmDragContext | None | None |
+----------------------+------------------------+-------------------------------------+
|XmDragIcon | None | None |
+----------------------+------------------------+-------------------------------------+
|XmDrawingArea | None | None |
+----------------------+------------------------+-------------------------------------+
|XmDrawnButton | XmQTmenuSystem | Many |
+----------------------+------------------------+-------------------------------------+
|XmDrawnButton | XmQTspecifyRenderTable | getRenderTable |
+----------------------+------------------------+-------------------------------------+
|XmDropTransfer | None | None |
+----------------------+------------------------+-------------------------------------+
|XmFileSelectionBox | XmQTactivatable | None |
+----------------------+------------------------+-------------------------------------+
|XmForm | None | None |
+----------------------+------------------------+-------------------------------------+
|XmFrame | None | None |
+----------------------+------------------------+-------------------------------------+
|XmGadget | None | None |
+----------------------+------------------------+-------------------------------------+
|XmIconGadget | XmQTcontainer | getValues |
+----------------------+------------------------+-------------------------------------+
|XmIconGadget | XmQTspecifyRenderTable | getRenderTable |
+----------------------+------------------------+-------------------------------------+
|XmLabel | XmQTmenuSystem | various methods |
+----------------------+------------------------+-------------------------------------+
|XmLabel | XmQTspecifyRenderTable | getRenderTable |
+----------------------+------------------------+-------------------------------------+
|XmLabelGadget | XmQTmenuSystem | various methods |
+----------------------+------------------------+-------------------------------------+
|XmLabelGadget | XmQTspecifyRenderTable | getRenderTable |
+----------------------+------------------------+-------------------------------------+
|XmList | XmQTnavigator | getValues |
+----------------------+------------------------+-------------------------------------+
|XmList | XmQTscrollFrame | getInfo, init |
+----------------------+------------------------+-------------------------------------+
|XmList | XmQTspecifyRenderTable | getRenderTable |
+----------------------+------------------------+-------------------------------------+
|XmMainWindow | XmQTmenuSystem | various methods |
+----------------------+------------------------+-------------------------------------+
|XmManager | None | None |
+----------------------+------------------------+-------------------------------------+
|XmMenuShell | XmQTmenuSystem | various methods |
+----------------------+------------------------+-------------------------------------+
|XmMenuShell | XmQTspecifyRenderTable | getRenderTable |
+----------------------+------------------------+-------------------------------------+
|XmMessageBox | XmQTactivatable | None |
+----------------------+------------------------+-------------------------------------+
|XmNotebook | XmQTscrollFrame | init, addNavigator, removeNavigator |
+----------------------+------------------------+-------------------------------------+
|XmNotebook | XmQTnavigator | getValue |
+----------------------+------------------------+-------------------------------------+
|XmNotebook | XmQTactivatable | changeCB |
+----------------------+------------------------+-------------------------------------+
|XmNotebook | XmQTaccessTextual | None |
+----------------------+------------------------+-------------------------------------+
|XmPanedWindow | None | None |
+----------------------+------------------------+-------------------------------------+
|XmPrimitive | None | None |
+----------------------+------------------------+-------------------------------------+
|XmPushButton | XmQTmenuSystem | various methods |
+----------------------+------------------------+-------------------------------------+
|XmPushButton | XmQTspecifyRenderTable | getRenderTable |
+----------------------+------------------------+-------------------------------------+
|XmPushButtonGadget | XmQTmenuSystem | various methods |
+----------------------+------------------------+-------------------------------------+
|XmPushButtonGadget | XmQTspecifyRenderTable | getRenderTable |
+----------------------+------------------------+-------------------------------------+
|XmRowColumn | XmQTmenuSavvy | getAccelerator, getMnemonic, getAc- |
| | | tivateCBName |
+----------------------+------------------------+-------------------------------------+
|XmRowColumn | XmQTmenuSystem | various methods |
+----------------------+------------------------+-------------------------------------+
|XmScale | XmQTspecifyRenderTable | getRenderTable |
+----------------------+------------------------+-------------------------------------+
|XmScreen | None | None |
+----------------------+------------------------+-------------------------------------+
|XmScrollbar | None | None |
+----------------------+------------------------+-------------------------------------+
|XmScrolledWindow | XmQTnavigator | getValue |
+----------------------+------------------------+-------------------------------------+
|XmScrolledWindow | XmQTscrollFrame | init, addNavigator |
+----------------------+------------------------+-------------------------------------+
|XmSelectionBox | XmQTaccessTextual | setValue; |
+----------------------+------------------------+-------------------------------------+
|XmSelectionBox | XmQTactivatable | None |
+----------------------+------------------------+-------------------------------------+
|XmSeparator | None | None |
+----------------------+------------------------+-------------------------------------+
|XmSeparatorGadget | None | None |
+----------------------+------------------------+-------------------------------------+
|XmSpinBox | XmQTaccessTextual | setValue |
+----------------------+------------------------+-------------------------------------+
|XmText | XmQTaccessTextual | getValue, setValue |
+----------------------+------------------------+-------------------------------------+
|XmText | XmQTnavigator | getValue |
+----------------------+------------------------+-------------------------------------+
|XmText | XmQTscrollFrame | getInfo, init |
+----------------------+------------------------+-------------------------------------+
|XmText | XmQTspecifyRenderTable | getRenderTable |
+----------------------+------------------------+-------------------------------------+
|XmTextField | XmQTspecifyRenderTable | getRenderTable |
+----------------------+------------------------+-------------------------------------+
|XmToggleButton | XmQTmenuSystem | various methods |
+----------------------+------------------------+-------------------------------------+
|XmToggleButton | XmQTspecifyRenderTable | getRenderTable |
+----------------------+------------------------+-------------------------------------+
|XmToggleButtonGadget | XmQTmenuSystem | various methods |
+----------------------+------------------------+-------------------------------------+
|XmToggleButtonGadget | XmQTspecifyRenderTable | getRenderTable |
+----------------------+------------------------+-------------------------------------+
|VendorShell | XmQTspecifyRenderTable | getRenderTable |
+----------------------+------------------------+-------------------------------------+
+----------------------+------------------------+-------------------------------------+
RELATED
The following reference pages are documented in the Motif Widget Writer's Guide: XmeTrait-
Set(3), XmeTraitGet(3), XmQTaccessTextual(3), XmQTactivatable(3), XmQTcareParentVisual(3),
XmQTcontainer(3), XmQTcontainerItem(3), XmQTdialogShellSavvy(3), XmQTjoinSide(3), XmQT-
menuSavvy(3), XmQTmenuSystem(3), XmQTnavigator(3), XmQTscrollFrame(3), XmQTspecifyRen-
derTable(3), and XmQTtakesDefault(3).
Traits(file formats) |
|