NAME
XmIconGadget — The IconGadget widget class
SYNOPSIS
#include <Xm/IconG.h>
DESCRIPTION
IconGadget is an instantiable widget used to display both text and a
pixmap in various combinations. Other widgets that hold the
XmQTcontainer trait, such as Container, can use IconGadget to represent
objects.
IconGadget text is a compound string. If no text is supplied, then the
compound string is generated from the gadget name. IconGadget text is
placed relative to the type of associated pixmap.
Depending upon the XmNviewType resource, IconGadget can display two
views:
XmLARGE_ICON
The IconGadget text string is displayed below the pixmap, and
centered.
XmSMALL_ICON
The IconGadget text string is placed on the side of the small
icon, in the widget’s XmNlayoutDirection.
A bitmap mask can be supplied for each pixmap to clip the pixmap into
some shape other than a rectangle. The XmNlargeIconMask and
XmNsmallIconMask resources specify the large and small bitmap masks
respectively. Visual emphasis for the IconGadget is provided with the
XmNvisualEmphasis resource. IconGadget’s XmNdetail and XmNdetailCount
resources provide a detail view for IconGadgets, enabling the display
of Strings alongside the IconGadget. The exact layout ordering of the
strings depends on the associated containing widget.
IconGadget uses the XmQTcontainer and XmQTspecifyRenderTable traits,
and holds the XmQTcareParentVisual and XmQTcontainerItem traits.
Classes
IconGadget inherits behaviour, resources, and traits from Object,
RectObject, and XmGadget classes.
The class pointer is xmIconGadgetClass.
The class name is XmIconGadget.
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 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).
+---------------------------------------------------------------------------------------+
| | XmIconGadget Resource Set| | |
|Name | Class | Type | Default | Access |
+-------------------+-------------------+---------------+----------------------+--------+
|Xmalignment | XmCAlignment | unsigned char | XmALIGNMENT_CENTER | CSG |
+-------------------+-------------------+---------------+----------------------+--------+
|XmNdetail | XmCDetail | XmStringTable | NULL | CSG |
+-------------------+-------------------+---------------+----------------------+--------+
|XmNdetailCount | XmCDetailCount | Cardinal | 0 | CSG |
+-------------------+-------------------+---------------+----------------------+--------+
|XmNfontList | XmCFontList | XmFontList | NULL | CSG |
+-------------------+-------------------+---------------+----------------------+--------+
|XmNlabelString | XmCXmString | XmString | dynamic | CSG |
+-------------------+-------------------+---------------+----------------------+--------+
|XmNlargeIconMask | XmCIconMask | Pixmap | dynamic | CSG |
+-------------------+-------------------+---------------+----------------------+--------+
|XmNlargeIconPixmap | XmCIconPixmap | Pixmap | XmUNSPECIFIED_PIXMAP | CSG |
+-------------------+-------------------+---------------+----------------------+--------+
|XmNmarginHeight | XmCMarginHeight | Dimension | 2 | CSG |
+-------------------+-------------------+---------------+----------------------+--------+
|XmNmarginWidth | XmCMarginWidth | Dimension | 2 | CSG |
+-------------------+-------------------+---------------+----------------------+--------+
|XmNrenderTable | XmCRenderTable | XmRenderTable | dynamic | CSG |
+-------------------+-------------------+---------------+----------------------+--------+
|XmNsmallIconMask | XmCIconMask | Pixmap | dynamic | CSG |
+-------------------+-------------------+---------------+----------------------+--------+
|XmNsmallIconPixmap | XmCIconPixmap | Pixmap | XmUNSPECIFIED_PIXMAP | CSG |
+-------------------+-------------------+---------------+----------------------+--------+
|XmNviewType | XmCViewType | unsigned char | XmLARGE_ICON | CSG |
+-------------------+-------------------+---------------+----------------------+--------+
|XmNvisualEmphasis | XmCVisualEmphasis | unsigned char | XmNOT_SELECTED | CSG |
+-------------------+-------------------+---------------+----------------------+--------+
|XmNspacing | XmCSpacing | Dimension | 4 | CSG |
+-------------------+-------------------+---------------+----------------------+--------+
+-------------------+-------------------+---------------+----------------------+--------+
XmNalignment
Specifies the horizontal alignment of the pixmap with respect
to the label when the icon is in LARGE_ICON view. Valid
values are XmALIGNMENT_BEGINNING, XmALIGNMENT_CENTER, and
XmALIGNMENT_END.
XmNdetail Specifies an array of XmStrings that are the detail
information associated with the gadget.
XmNdetailCount
Specifies the size of the XmNdetail array.
XmNfontList
Specifies the font list associated with XmIconGadget. The
font list is an obsolete construct, and has been superseded
by the render table. It is included for compatibility with
earlier versions of Motif, and for applications that do not
easily support render tables. The default font list is
derived from the default render table, and if both a font
list and a render table are specified, the render table takes
precedence.
XmNlabelString
Specifies the compound string. If this value is NULL, it is
initialized by converting the name of the gadget to a
compound string. Refer to XmString(3) for more information
on the creation and structure of compound strings.
XmNlargeIconMask
Specifies the icon mask used when XmNviewType is
XmLARGE_ICON.
XmNlargeIconPixmap
Specifies the pixmap when XmNviewType is XmLARGE_ICON. If
this resource’s value is XmUNSPECIFIED_PIXMAP, there is no
pixmap. If a large icon pixmap is specified, and if during
conversion an associated mask can be fetched, then the
XmNlargeIconMask resource is set to that mask.
XmNmarginHeight
Specifies the amount of vertical space between the highlight
and the inside (pixmap and label).
XmNmarginWidth
Specifies the amount of horizontal space between the
highlight and the inside (pixmap and label).
XmNrenderTable
Specifies the XmRenderTable of the text used in the gadget.
If XmNrenderTable is NULL when the IconGadget is created, the
parent’s render table resource value is used if there is a
render table. If the parent does not have a render table, the
parent hierarchy of the widget is searched for a widget that
holds the XmQTspecifyRenderTable trait. If such an ancestor
is found, the render table is initialized to the
XmLABEL_RENDER_TABLE value of the ancestor widget. If no such
widget is found, the default is implementation dependent.
Refer to XmRenderTable(3) for more information on the
creation and structure of a XmRenderTable. If both a render
table and a font list are specified, the render table will
take precedence.
XmNsmallIconMask
Specifies the icon mask used when XmNviewType is
XmSMALL_ICON.
XmNsmallIconPixmap
Specifies the pixmap when XmNviewType is XmSMALL_ICON. If
this resource’s value is XmUNSPECIFIED_PIXMAP, there is no
pixmap. If a small icon pixmap is specified, and if during
conversion an associated mask can be fetched, then the
XmNsmallIconMask resource is set to that mask.
XmNspacing
Specifies the amount of space between the pixmap and the
label parts of the icon.
XmNviewType
Specifies the view (combination of pixmaps/text) that will be
displayed. If the IconGadget is a child of a Container
widget, however, then the specification of this resource will
be taken from the Container— if Container’s XmNentryViewType
is either XmLARGE_ICON or XmSMALL_ICON, then IconGadget’s
XmNviewType takes that value; otherwise, the default is
XmLARGE_ICON. This resource is set to one of the following:
XmLARGE_ICON
The pixmap specified by XmNlargeIconPixmap is
displayed with the XmNlabelString beneath it.
XmSMALL_ICON
The pixmap specified by XmNsmallIconPixmap is
displayed with the XmNlabelString displayed in the
direction of the XmNlayoutDirection resource.
XmNvisualEmphasis
Specifies the visual state of the IconGadget. If the
IconGadget is in a selected state all visuals are displayed
using the Container XmNselectColor resource. It is set to
one of the following:
XmSELECTED
The IconGadget is in the selected state and
displays the appropriate visuals.
XmNOT_SELECTED
The IconGadget is not in the selected state.
Inherited Resources
IconGadget inherits behavior and resources from the superclasses
described in the following tables. For a complete description of each
resource, refer to the reference page for that superclass.
+-------------------------------------------------------------------------------------------------+
| | XmGadget Resource Set | | |
|Name | Class | Type | Default | Access |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNbackground | XmCBackground | Pixel | dynamic | CSG |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNbackgroundPixmap | XmCPixmap | Pixmap | XmUNSPECIFIED_PIXMAP | CSG |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNbottomShadowColor | XmCBottomShadowColor | Pixel | dynamic | CSG |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNbottomShadowPixmap | XmCBottomShadowPixmap | Pixmap | dynamic | CSG |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNhelpCallback | XmCCallback | XtCallbackList | NULL | C |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNforeground | XmCForeground | Pixel | dynamic | CSG |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNhighlightColor | XmCHighlightColor | Pixel | dynamic | CSG |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNhighlightOnEnter | XmCHighlightOnEnter | Boolean | False | CSG |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNhighlightPixmap | XmCHighlightPixmap | Pixmap | dynamic | CSG |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNhighlightThickness | XmCHighlightThickness | Dimension | 0 | CSG |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNlayoutDirection | XmNCLayoutDirection | XmDirection | dynamic | CG |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNnavigationType | XmCNavigationType | XmNavigationType | XmNONE | CSG |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNshadowThickness | XmCShadowThickness | Dimension | 0 | CSG |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNtopShadowColor | XmCTopShadowColor | Pixel | dynamic | CSG |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNtopShadowPixmap | XmCTopShadowPixmap | Pixmap | dynamic | CSG |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNtraversalOn | XmCTraversalOn | Boolean | False | CSG |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNunitType | XmCUnitType | unsigned char | dynamic | CSG |
+----------------------+-----------------------+------------------+----------------------+--------+
|XmNuserData | XmCUserData | XtPointer | NULL | CSG |
+----------------------+-----------------------+------------------+----------------------+--------+
+----------------------+-----------------------+------------------+----------------------+--------+
+---------------------------------------------------------------------+
| | RectObj Resource Set | | |
|Name | Class | Type | Default | Access |
+---------------------+----------------+-----------+---------+--------+
|XmNancestorSensitive | XmCSensitive | Boolean | dynamic | G |
+---------------------+----------------+-----------+---------+--------+
|XmNborderWidth | XmCBorderWidth | Dimension | 0 | N/A |
+---------------------+----------------+-----------+---------+--------+
|XmNheight | XmCHeight | Dimension | dynamic | CSG |
+---------------------+----------------+-----------+---------+--------+
|XmNsensitive | XmCSensitive | Boolean | True | CSG |
+---------------------+----------------+-----------+---------+--------+
|XmNwidth | XmCWidth | Dimension | dynamic | CSG |
+---------------------+----------------+-----------+---------+--------+
|XmNx | XmCPosition | Position | 0 | CSG |
+---------------------+----------------+-----------+---------+--------+
|XmNy | XmCPosition | Position | 0 | CSG |
+---------------------+----------------+-----------+---------+--------+
+---------------------+----------------+-----------+---------+--------+
+---------------------------------------------------------------------+
| | Object Resource Set | | |
|Name | Class | Type | Default | Access |
+-------------------+-------------+----------------+---------+--------+
|XmNdestroyCallback | XmCCallback | XtCallbackList | NULL | C |
+-------------------+-------------+----------------+---------+--------+
+-------------------+-------------+----------------+---------+--------+
Additional Behavior
IconGadget has no behavior.
Virtual Bindings
The bindings for virtual keys are vendor specific. For information
about bindings for virtual buttons and keys, see VirtualBindings(3).
Errors/Warnings
The toolkit will display a warning if an incorrect value is given for
an enumeration resource.
RELATED
Core(3), XmContainer(3), XmCreateIconGadget(3), and XmGadget(3).
XmIconGadget(library call)