1XmIconGadget(library call) XmIconGadget(library call)
2
3
4
6 XmIconGadget — The IconGadget widget class
7
9 #include <Xm/IconG.h>
10
12 IconGadget is an instantiable widget used to display both text and a
13 pixmap in various combinations. Other widgets that hold the XmQTcon‐
14 tainer trait, such as Container, can use IconGadget to represent
15 objects.
16
17 IconGadget text is a compound string. If no text is supplied, then the
18 compound string is generated from the gadget name. IconGadget text is
19 placed relative to the type of associated pixmap.
20
21 Depending upon the XmNviewType resource, IconGadget can display two
22 views:
23
24 XmLARGE_ICON
25 The IconGadget text string is displayed below the pixmap, and
26 centered.
27
28 XmSMALL_ICON
29 The IconGadget text string is placed on the side of the small
30 icon, in the widget's XmNlayoutDirection.
31
32 A bitmap mask can be supplied for each pixmap to clip the pixmap into
33 some shape other than a rectangle. The XmNlargeIconMask and XmNsmallI‐
34 conMask resources specify the large and small bitmap masks respec‐
35 tively. Visual emphasis for the IconGadget is provided with the XmNvi‐
36 sualEmphasis resource. IconGadget's XmNdetail and XmNdetailCount
37 resources provide a detail view for IconGadgets, enabling the display
38 of Strings alongside the IconGadget. The exact layout ordering of the
39 strings depends on the associated containing widget.
40
41 IconGadget uses the XmQTcontainer and XmQTspecifyRenderTable traits,
42 and holds the XmQTcareParentVisual and XmQTcontainerItem traits.
43
44 Classes
45 IconGadget inherits behaviour, resources, and traits from Object, Rec‐
46 tObject, and XmGadget classes.
47
48 The class pointer is xmIconGadgetClass.
49
50 The class name is XmIconGadget.
51
52 New Resources
53 The following table defines a set of widget resources used by the pro‐
54 grammer to specify data. The programmer can also set the resource val‐
55 ues for the inherited classes to set attributes for this widget. To
56 reference a resource by name or by class in a .Xdefaults file, remove
57 the XmN or XmC prefix and use the remaining letters. To specify one of
58 the defined values for a resource in a .Xdefaults file, remove the Xm
59 prefix and use the remaining letters (in either lowercase or uppercase,
60 but include any underscores between words). The codes in the access
61 column indicate whether the given resource can be set at creation time
62 (C), set by using XtSetValues (S), retrieved by using XtGetValues (G),
63 or is not applicable (N/A).
64
65 ┌───────────────────────────────────────────────────────────────────────────────────────┐
66 │ │ XmIconGad│get Resource Set│ │ │
67 │Name │ Class │ Type │ Default │ Access │
68 ├───────────────────┼───────────────────┼───────────────┼──────────────────────┼────────┤
69 │Xmalignment │ XmCAlignment │ unsigned char │ XmALIGNMENT_CENTER │ CSG │
70 ├───────────────────┼───────────────────┼───────────────┼──────────────────────┼────────┤
71 │XmNdetail │ XmCDetail │ XmStringTable │ NULL │ CSG │
72 ├───────────────────┼───────────────────┼───────────────┼──────────────────────┼────────┤
73 │XmNdetailCount │ XmCDetailCount │ Cardinal │ 0 │ CSG │
74 ├───────────────────┼───────────────────┼───────────────┼──────────────────────┼────────┤
75 │XmNfontList │ XmCFontList │ XmFontList │ NULL │ CSG │
76 ├───────────────────┼───────────────────┼───────────────┼──────────────────────┼────────┤
77 │XmNlabelString │ XmCXmString │ XmString │ dynamic │ CSG │
78 ├───────────────────┼───────────────────┼───────────────┼──────────────────────┼────────┤
79 │XmNlargeIconMask │ XmCIconMask │ Pixmap │ dynamic │ CSG │
80 ├───────────────────┼───────────────────┼───────────────┼──────────────────────┼────────┤
81 │XmNlargeIconPixmap │ XmCIconPixmap │ Pixmap │ XmUNSPECIFIED_PIXMAP │ CSG │
82 ├───────────────────┼───────────────────┼───────────────┼──────────────────────┼────────┤
83 │XmNmarginHeight │ XmCMarginHeight │ Dimension │ 2 │ CSG │
84 ├───────────────────┼───────────────────┼───────────────┼──────────────────────┼────────┤
85 │XmNmarginWidth │ XmCMarginWidth │ Dimension │ 2 │ CSG │
86 ├───────────────────┼───────────────────┼───────────────┼──────────────────────┼────────┤
87 │XmNrenderTable │ XmCRenderTable │ XmRenderTable │ dynamic │ CSG │
88 ├───────────────────┼───────────────────┼───────────────┼──────────────────────┼────────┤
89 │XmNsmallIconMask │ XmCIconMask │ Pixmap │ dynamic │ CSG │
90 ├───────────────────┼───────────────────┼───────────────┼──────────────────────┼────────┤
91 │XmNsmallIconPixmap │ XmCIconPixmap │ Pixmap │ XmUNSPECIFIED_PIXMAP │ CSG │
92 ├───────────────────┼───────────────────┼───────────────┼──────────────────────┼────────┤
93 │XmNviewType │ XmCViewType │ unsigned char │ XmLARGE_ICON │ CSG │
94 ├───────────────────┼───────────────────┼───────────────┼──────────────────────┼────────┤
95 │XmNvisualEmphasis │ XmCVisualEmphasis │ unsigned char │ XmNOT_SELECTED │ CSG │
96 ├───────────────────┼───────────────────┼───────────────┼──────────────────────┼────────┤
97 │XmNspacing │ XmCSpacing │ Dimension │ 4 │ CSG │
98 ├───────────────────┼───────────────────┼───────────────┼──────────────────────┼────────┤
99 └───────────────────┴───────────────────┴───────────────┴──────────────────────┴────────┘
100 XmNalignment
101 Specifies the horizontal alignment of the pixmap with respect
102 to the label when the icon is in LARGE_ICON view. Valid val‐
103 ues are XmALIGNMENT_BEGINNING, XmALIGNMENT_CENTER, and XmA‐
104 LIGNMENT_END.
105
106 XmNdetail Specifies an array of XmStrings that are the detail informa‐
107 tion associated with the gadget.
108
109 XmNdetailCount
110 Specifies the size of the XmNdetail array.
111
112 XmNfontList
113 Specifies the font list associated with XmIconGadget. The
114 font list is an obsolete construct, and has been superseded
115 by the render table. It is included for compatibility with
116 earlier versions of Motif, and for applications that do not
117 easily support render tables. The default font list is
118 derived from the default render table, and if both a font
119 list and a render table are specified, the render table takes
120 precedence.
121
122 XmNlabelString
123 Specifies the compound string. If this value is NULL, it is
124 initialized by converting the name of the gadget to a com‐
125 pound string. Refer to XmString(3) for more information on
126 the creation and structure of compound strings.
127
128 XmNlargeIconMask
129 Specifies the icon mask used when XmNviewType is
130 XmLARGE_ICON.
131
132 XmNlargeIconPixmap
133 Specifies the pixmap when XmNviewType is XmLARGE_ICON. If
134 this resource's value is XmUNSPECIFIED_PIXMAP, there is no
135 pixmap. If a large icon pixmap is specified, and if during
136 conversion an associated mask can be fetched, then the XmN‐
137 largeIconMask resource is set to that mask.
138
139 XmNmarginHeight
140 Specifies the amount of vertical space between the highlight
141 and the inside (pixmap and label).
142
143 XmNmarginWidth
144 Specifies the amount of horizontal space between the high‐
145 light and the inside (pixmap and label).
146
147 XmNrenderTable
148 Specifies the XmRenderTable of the text used in the gadget.
149 If XmNrenderTable is NULL when the IconGadget is created, the
150 parent's render table resource value is used if there is a
151 render table. If the parent does not have a render table, the
152 parent hierarchy of the widget is searched for a widget that
153 holds the XmQTspecifyRenderTable trait. If such an ancestor
154 is found, the render table is initialized to the XmLABEL_REN‐
155 DER_TABLE value of the ancestor widget. If no such widget is
156 found, the default is implementation dependent. Refer to
157 XmRenderTable(3) for more information on the creation and
158 structure of a XmRenderTable. If both a render table and a
159 font list are specified, the render table will take prece‐
160 dence.
161
162 XmNsmallIconMask
163 Specifies the icon mask used when XmNviewType is XmS‐
164 MALL_ICON.
165
166 XmNsmallIconPixmap
167 Specifies the pixmap when XmNviewType is XmSMALL_ICON. If
168 this resource's value is XmUNSPECIFIED_PIXMAP, there is no
169 pixmap. If a small icon pixmap is specified, and if during
170 conversion an associated mask can be fetched, then the XmNs‐
171 mallIconMask resource is set to that mask.
172
173 XmNspacing
174 Specifies the amount of space between the pixmap and the
175 label parts of the icon.
176
177 XmNviewType
178 Specifies the view (combination of pixmaps/text) that will be
179 displayed. If the IconGadget is a child of a Container wid‐
180 get, however, then the specification of this resource will be
181 taken from the Container— if Container's XmNentryViewType is
182 either XmLARGE_ICON or XmSMALL_ICON, then IconGadget's XmN‐
183 viewType takes that value; otherwise, the default is
184 XmLARGE_ICON. This resource is set to one of the following:
185
186 XmLARGE_ICON
187 The pixmap specified by XmNlargeIconPixmap is dis‐
188 played with the XmNlabelString beneath it.
189
190 XmSMALL_ICON
191 The pixmap specified by XmNsmallIconPixmap is dis‐
192 played with the XmNlabelString displayed in the
193 direction of the XmNlayoutDirection resource.
194
195 XmNvisualEmphasis
196 Specifies the visual state of the IconGadget. If the IconGad‐
197 get is in a selected state all visuals are displayed using
198 the Container XmNselectColor resource. It is set to one of
199 the following:
200
201 XmSELECTED
202 The IconGadget is in the selected state and dis‐
203 plays the appropriate visuals.
204
205 XmNOT_SELECTED
206 The IconGadget is not in the selected state.
207
208 Inherited Resources
209 IconGadget inherits behavior and resources from the superclasses
210 described in the following tables. For a complete description of each
211 resource, refer to the reference page for that superclass.
212
213 ┌─────────────────────────────────────────────────────────────────────────────────────────────────┐
214 │ │ XmGadget │Resource Set │ │ │
215 │Name │ Class │ Type │ Default │ Access │
216 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
217 │XmNbackground │ XmCBackground │ Pixel │ dynamic │ CSG │
218 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
219 │XmNbackgroundPixmap │ XmCPixmap │ Pixmap │ XmUNSPECIFIED_PIXMAP │ CSG │
220 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
221 │XmNbottomShadowColor │ XmCBottomShadowColor │ Pixel │ dynamic │ CSG │
222 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
223 │XmNbottomShadowPixmap │ XmCBottomShadowPixmap │ Pixmap │ dynamic │ CSG │
224 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
225 │XmNhelpCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
226 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
227 │XmNforeground │ XmCForeground │ Pixel │ dynamic │ CSG │
228 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
229 │XmNhighlightColor │ XmCHighlightColor │ Pixel │ dynamic │ CSG │
230 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
231 │XmNhighlightOnEnter │ XmCHighlightOnEnter │ Boolean │ False │ CSG │
232 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
233 │XmNhighlightPixmap │ XmCHighlightPixmap │ Pixmap │ dynamic │ CSG │
234 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
235 │XmNhighlightThickness │ XmCHighlightThickness │ Dimension │ 0 │ CSG │
236 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
237 │XmNlayoutDirection │ XmNCLayoutDirection │ XmDirection │ dynamic │ CG │
238 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
239 │XmNnavigationType │ XmCNavigationType │ XmNavigationType │ XmNONE │ CSG │
240 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
241 │XmNshadowThickness │ XmCShadowThickness │ Dimension │ 0 │ CSG │
242 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
243 │XmNtopShadowColor │ XmCTopShadowColor │ Pixel │ dynamic │ CSG │
244 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
245 │XmNtopShadowPixmap │ XmCTopShadowPixmap │ Pixmap │ dynamic │ CSG │
246 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
247 │XmNtraversalOn │ XmCTraversalOn │ Boolean │ False │ CSG │
248 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
249 │XmNunitType │ XmCUnitType │ unsigned char │ dynamic │ CSG │
250 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
251 │XmNuserData │ XmCUserData │ XtPointer │ NULL │ CSG │
252 ├──────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
253 └──────────────────────┴───────────────────────┴──────────────────┴──────────────────────┴────────┘
254 ┌─────────────────────────────────────────────────────────────────────┐
255 │ │ RectObj Resour│ce Set │ │ │
256 │Name │ Class │ Type │ Default │ Access │
257 ├─────────────────────┼────────────────┼───────────┼─────────┼────────┤
258 │XmNancestorSensitive │ XmCSensitive │ Boolean │ dynamic │ G │
259 ├─────────────────────┼────────────────┼───────────┼─────────┼────────┤
260 │XmNborderWidth │ XmCBorderWidth │ Dimension │ 0 │ N/A │
261 ├─────────────────────┼────────────────┼───────────┼─────────┼────────┤
262 │XmNheight │ XmCHeight │ Dimension │ dynamic │ CSG │
263 ├─────────────────────┼────────────────┼───────────┼─────────┼────────┤
264 │XmNsensitive │ XmCSensitive │ Boolean │ True │ CSG │
265 ├─────────────────────┼────────────────┼───────────┼─────────┼────────┤
266 │XmNwidth │ XmCWidth │ Dimension │ dynamic │ CSG │
267 ├─────────────────────┼────────────────┼───────────┼─────────┼────────┤
268 │XmNx │ XmCPosition │ Position │ 0 │ CSG │
269 ├─────────────────────┼────────────────┼───────────┼─────────┼────────┤
270 │XmNy │ XmCPosition │ Position │ 0 │ CSG │
271 ├─────────────────────┼────────────────┼───────────┼─────────┼────────┤
272 └─────────────────────┴────────────────┴───────────┴─────────┴────────┘
273 ┌─────────────────────────────────────────────────────────────────────┐
274 │ │ Object Re│source Set │ │ │
275 │Name │ Class │ Type │ Default │ Access │
276 ├───────────────────┼─────────────┼────────────────┼─────────┼────────┤
277 │XmNdestroyCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
278 ├───────────────────┼─────────────┼────────────────┼─────────┼────────┤
279 └───────────────────┴─────────────┴────────────────┴─────────┴────────┘
280 Additional Behavior
281 IconGadget has no behavior.
282
283 Virtual Bindings
284 The bindings for virtual keys are vendor specific. For information
285 about bindings for virtual buttons and keys, see VirtualBindings(3).
286
287 Errors/Warnings
288 The toolkit will display a warning if an incorrect value is given for
289 an enumeration resource.
290
292 Core(3), XmContainer(3), XmCreateIconGadget(3), XmGadget(3), XmVaCre‐
293 ateIconGadget(3), and XmVaCreateManagedIconGadget(3).
294
295
296
297 XmIconGadget(library call)