1XmScrollBar(library call) XmScrollBar(library call)
2
3
4
6 XmScrollBar — The ScrollBar widget class
7
9 #include <Xm/ScrollBar.h>
10
12 The ScrollBar widget allows the user to view data that is too large to
13 be displayed all at once. ScrollBars are usually located inside a
14 ScrolledWindow and adjacent to the widget that contains the data to be
15 viewed. When the user interacts with the ScrollBar, the data within the
16 other widget scrolls.
17
18 A ScrollBar consists of two arrows placed at each end of a rectangle.
19 The rectangle is called the scroll region. A smaller rectangle, called
20 the slider, is placed within the scroll region. The data is scrolled by
21 clicking either arrow, selecting on the scroll region, or dragging the
22 slider. When an arrow is selected, the slider within the scroll region
23 is moved in the direction of the arrow by an amount supplied by the
24 application. If the mouse button is held down, the slider continues to
25 move at a constant rate.
26
27 The ratio of the slider size to the scroll region size typically corre‐
28 sponds to the relationship between the size of the visible data and the
29 total size of the data. For example, if 10 percent of the data is visi‐
30 ble, the slider typically occupies 10 percent of the scroll region.
31 This provides the user with a visual clue to the size of the invisible
32 data.
33
34 If the ScrollBar parent is an automatic ScrolledWindow, the XmNtraver‐
35 salOn default is True. Otherwise, the default is False.
36
37 ScrollBar holds the XmQTnavigator traits.
38
39 Classes
40 ScrollBar inherits behavior, resources, and traits from the Core and
41 XmPrimitive classes.
42
43 The class pointer is xmScrollBarWidgetClass.
44
45 The class name is XmScrollBar.
46
47 New Resources
48 The following table defines a set of widget resources used by the pro‐
49 grammer to specify data. The programmer can also set the resource val‐
50 ues for the inherited classes to set attributes for this widget. To
51 reference a resource by name or by class in a .Xdefaults file, remove
52 the XmN or XmC prefix and use the remaining letters. To specify one of
53 the defined values for a resource in a .Xdefaults file, remove the Xm
54 prefix and use the remaining letters (in either lowercase or uppercase,
55 but include any underscores between words). The codes in the access
56 column indicate if the given resource can be set at creation time (C),
57 set by using XtSetValues (S), retrieved by using XtGetValues (G), or is
58 not applicable (N/A).
59
60 ┌──────────────────────────────────────────────────────────────────────────────────────────┐
61 │ │ XmScrollBar Resour│ce Set │ │ │
62 │Name │ Class │ Type │ Default │ Access │
63 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
64 │XmNdecrementCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
65 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
66 │XmNdragCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
67 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
68 │XmNeditable │ XmCEditable │ Boolean │ True │ CSG │
69 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
70 │XmNincrement │ XmCIncrement │ int │ 1 │ CSG │
71 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
72 │XmNincrementCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
73 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
74 │XmNinitialDelay │ XmCInitialDelay │ int │ 250 ms │ CSG │
75 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
76 │XmNmaximum │ XmCMaximum │ int │ 100 │ CSG │
77 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
78 │XmNminimum │ XmCMinimum │ int │ 0 │ CSG │
79 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
80 │XmNorientation │ XmCOrientation │ unsigned char │ XmVERTICAL │ CSG │
81 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
82 │XmNpageDecrementCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
83 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
84 │XmNpageIncrement │ XmCPageIncrement │ int │ 10 │ CSG │
85 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
86 │XmNpageIncrementCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
87 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
88 │XmNprocessingDirection │ XmCProcessingDirection │ unsigned char │ dynamic │ CSG │
89 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
90 │XmNrepeatDelay │ XmCRepeatDelay │ int │ 50 ms │ CSG │
91 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
92 │XmNshowArrows │ XmCShowArrows │ XtEnum │ XmEACH_SIDE │ CSG │
93 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
94 │XmNsliderSize │ XmCSliderSize │ int │ dynamic │ CSG │
95 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
96 │XmNsliderMark │ XmCSliderMark │ XtEnum │ dynamic │ CSG │
97 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
98 │XmNsliderVisual │ XmCSliderVisual │ XtEnum │ XmSHADOWED │ CSG │
99 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
100 │XmNslidingMode │ XmCSlidingMode │ XtEnum │ XmSLIDER │ CSG │
101 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
102 │XmNsnapBackMultiple │ XmCSnapBackMultiple │ unsigned short │ MaxValue │ CSG │
103 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
104 │XmNtoBottomCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
105 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
106 │XmNtoTopCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
107 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
108 │XmNtroughColor │ XmCTroughColor │ Pixel │ dynamic │ CSG │
109 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
110 │XmNvalue │ XmCValue │ int │ dynamic │ CSG │
111 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
112 │XmNvalueChangedCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
113 ├─────────────────────────┼────────────────────────┼────────────────┼─────────────┼────────┤
114 └─────────────────────────┴────────────────────────┴────────────────┴─────────────┴────────┘
115 XmNdecrementCallback
116 Specifies the list of callbacks that is called when the user
117 takes an action that moves the ScrollBar by one increment and
118 the value decreases. The reason passed to the callback is
119 XmCR_DECREMENT.
120
121 XmNdragCallback
122 Specifies the list of callbacks that is called on each incre‐
123 mental change of position when the slider is being dragged.
124 The reason sent by the callback is XmCR_DRAG.
125
126 XmNeditable
127 Specifies how ScrollBar will react to user input. This
128 resource can be True or False values, as follows:
129
130 True Allows the scrollbar to be sensitive to user input.
131 This is the default value.
132
133 False Makes the Scale scrollbar insensitive to user
134 input. The visual is not greyed out. This value
135 would mostly be used in XmTHERMOMETER mode.
136
137 When XmNeditable is used on a widget it sets the dropsite to
138 XmDROP_SITE_ACTIVE.
139
140 XmNincrement
141 Specifies the amount by which the value increases or
142 decreases when the user takes an action that moves the slider
143 by one increment. The actual change in value is the lesser
144 of XmNincrement and (previous XmNvalue - XmNminimum) when the
145 slider moves to the end of the ScrollBar with the minimum
146 value, and the lesser of XmNincrement and (XmNmaximum-
147 XmNsliderSize - previous XmNvalue) when the slider moves to
148 the end of the ScrollBar with the maximum value. The value
149 of this resource must be greater than 0 (zero).
150
151 XmNincrementCallback
152 Specifies the list of callbacks that is called when the user
153 takes an action that moves the ScrollBar by one increment and
154 the value increases. The reason passed to the callback is
155 XmCR_INCREMENT.
156
157 XmNinitialDelay
158 Specifies the amount of time in milliseconds to wait before
159 starting continuous slider movement while a button is pressed
160 in an arrow or the scroll region. The value of this resource
161 must be greater than 0 (zero).
162
163 XmNmaximum
164 Specifies the slider's maximum value. XmNmaximum must be
165 greater than XmNminimum.
166
167 XmNminimum
168 Specifies the slider's minimum value. XmNmaximum must be
169 greater than XmNminimum.
170
171 XmNorientation
172 Specifies whether the ScrollBar is displayed vertically or
173 horizontally. This resource can have values of XmVERTICAL
174 and XmHORIZONTAL.
175
176 XmNpageDecrementCallback
177 Specifies the list of callbacks that is called when the user
178 takes an action that moves the ScrollBar by one page incre‐
179 ment and the value decreases. The reason passed to the call‐
180 back is XmCR_PAGE_DECREMENT.
181
182 XmNpageIncrement
183 Specifies the amount by which the value increases or
184 decreases when the user takes an action that moves the slider
185 by one page increment. The actual change in value is the
186 lesser of XmNpageIncrement and (previous XmNvalue - XmNmini‐
187 mum) when the slider moves to the end of the ScrollBar with
188 the minimum value, and the lesser of XmNpageIncrement and
189 (XmNmaximum- XmNsliderSize - previous XmNvalue) when the
190 slider moves to the end of the ScrollBar with the maximum
191 value. The value of this resource must be greater than 0
192 (zero).
193
194 XmNpageIncrementCallback
195 Specifies the list of callbacks that is called when the user
196 takes an action that moves the ScrollBar by one page incre‐
197 ment and the value increases. The reason passed to the call‐
198 back is XmCR_PAGE_INCREMENT.
199
200 XmNprocessingDirection
201 Specifies whether the value for XmNmaximum should be on the
202 right or left side of XmNminimum for horizontal ScrollBars or
203 above or below XmNminimum for vertical ScrollBars. This
204 resource can have values of XmMAX_ON_TOP, XmMAX_ON_BOTTOM,
205 XmMAX_ON_LEFT, and XmMAX_ON_RIGHT. If the ScrollBar is ori‐
206 ented vertically, the default value is XmMAX_ON_BOTTOM. If
207 the ScrollBar is oriented horizontally, the default value
208 depends on the XmNlayoutDirection resource of the widget.
209
210 XmNrepeatDelay
211 Specifies the amount of time in milliseconds to wait between
212 subsequent slider movements after the XmNinitialDelay has
213 been processed. The value of this resource must be greater
214 than 0 (zero).
215
216 XmNshowArrows
217 Specifies whether the arrows are displayed and how they are
218 to be displayed. This resource can take the following values:
219
220 XmEACH_SIDE
221 Indicates that one arrow is displayed on each end
222 of the ScrollBar slider. This corresponds to a
223 value of True in previous releases.
224
225 XmMAX_SIDE
226 Indicates that both arrows are displayed on the
227 XmNmaximum side of the ScrollBar slider.
228
229 XmMIN_SIDE
230 Indicates that both arrows are displayed on the
231 XmNminimum side of the ScrollBar slider.
232
233 XmNONE Indicates that no arrows are displayed. This corre‐
234 sponds to a value of False in previous releases.
235
236 XmEACH_SIDE is the default value.
237
238 XmNsliderMark
239 Specifies the shape the slider is to be displayed in. This
240 resource can take the following values:
241
242 XmETCHED_LINE
243 Specifies the slider as an etched line.
244
245 XmNONE Specifies the slider as a foregrounded rectangle.
246 This is the default for a regular slider.
247
248 XmROUND_MARK
249 Specifies the slider as a shadowed circle. This is
250 the default when the slider is a thermometer.
251
252 XmTHUMB_MARK
253 Specifies the slider as a series of three etched
254 lines centered in the middle of the slider.
255
256 XmNslidingMode
257 Specifies the mode the slider works in. There are two possi‐
258 ble modes:
259
260 XmSLIDER Allows the slider to move freely between the mini‐
261 mum and maximum ends of the scale. This is the
262 default value.
263
264 XmTHERMOMETER
265 Forces the slider to be anchored to one side of the
266 trough area.
267
268 XmNsliderSize
269 Specifies the length of the slider between the values of 1
270 and (XmNmaximum - XmNminimum). The value is constrained to
271 be within these inclusive bounds. The default value is (XmN‐
272 maximum - XmNminimum) divided by 10, with a minimum of 1.
273
274 XmNsliderVisual
275 Specifies the color of the slider visual. This resource can
276 take the following values:
277
278 XmBACKGROUND_COLOR
279 Specifies that the slider visual is in the back‐
280 ground color.
281
282 XmFOREGROUND_COLOR
283 Specifies that the slider visual is in the fore‐
284 ground color.
285
286 XmSHADOWED_BACKGROUND
287 Specifies that the slider visual is in the back‐
288 ground color, with a shadow. This is the default
289 for a regular slider.
290
291 XmTROUGH_COLOR
292 Specifies that the slider visual is in the trough
293 color. This is the default when the slider is a
294 thermometer.
295
296 XmNsnapBackMultiple
297 Specifies the distance over which the scrollbar slider snaps
298 back to its original position when the user drags the mouse
299 outside the ScrollBar edge. This distance is defined in terms
300 of multiples of the width of the slider. For example, a mul‐
301 tiple of 0 (zero) causes the slider to snap back as soon as
302 the pointer moves out of the ScrollBar frame, a multiple of 1
303 causes the slider to snap back as soon as the pointer moves
304 beyond 1 ScrollBar width of the ScrollBar edge. Whenever the
305 slider snaps back, the ScrollBar dragCallback is called if
306 there is one.
307
308 The default value is large enough to prevent unwanted snap‐
309 Back activity if the mouse is moved within the boundaries of
310 any reasonable screen. To reset the default, set this
311 resource to a large value, such as 10000.
312
313 XmNtoBottomCallback
314 Specifies the list of callbacks that is called when the user
315 takes an action that moves the slider to the end of the
316 ScrollBar with the maximum value. The reason passed to the
317 callback is XmCR_TO_BOTTOM.
318
319 XmNtoTopCallback
320 Specifies the list of callbacks that is called when the user
321 takes an action that moves the slider to the end of the
322 ScrollBar with the minimum value. The reason passed to the
323 callback is XmCR_TO_TOP.
324
325 XmNtroughColor
326 Specifies the color of the slider trough. This color
327 defaults to the color used for selections.
328
329 XmNvalue Specifies the slider's position, between XmNminimum and (XmN‐
330 maximum - XmNsliderSize). The value is constrained to be
331 within these inclusive bounds. The initial value of this
332 resource is the larger of 0 (zero) and XmNminimum.
333
334 XmNvalueChangedCallback
335 Specifies the list of callbacks that is called when the
336 slider is released after being dragged. These callbacks are
337 also called in place of XmNincrementCallback, XmNdecrement‐
338 Callback, XmNpageIncrementCallback, XmNpageDecrementCallback,
339 XmNtoTopCallback, or XmNtoBottomCallback when one of these
340 callback lists would normally be called but the value of the
341 corresponding resource is NULL. The reason passed to the
342 callback is XmCR_VALUE_CHANGED.
343
344 Inherited Resources
345 ScrollBar inherits behavior and resources from the superclasses
346 described in the following tables. For a complete description of each
347 resource, refer to the reference page for that superclass.
348
349 ┌───────────────────────────────────────────────────────────────────────────────────────────────────┐
350 │ │ XmPrimitive│Resource Set │ │ │
351 │Name │ Class │ Type │ Default │ Access │
352 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
353 │XmNbottomShadowColor │ XmCBottomShadowColor │ Pixel │ dynamic │ CSG │
354 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
355 │XmNbottomShadowPixmap │ XmCBottomShadowPixmap │ Pixmap │ XmUNSPECIFIED_PIXMAP │ CSG │
356 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
357 │XmNconvertCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
358 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
359 │XmNforeground │ XmCForeground │ Pixel │ dynamic │ CSG │
360 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
361 │XmNhelpCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
362 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
363 │XmNhighlightColor │ XmCHighlightColor │ Pixel │ dynamic │ CSG │
364 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
365 │XmNhighlightOnEnter │ XmCHighlightOnEnter │ Boolean │ False │ CSG │
366 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
367 │XmNhighlightPixmap │ XmCHighlightPixmap │ Pixmap │ dynamic │ CSG │
368 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
369 │XmNhighlightThickness │ XmCHighlightThickness │ Dimension │ dynamic │ CSG │
370 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
371 │XmNlayoutDirection │ XmCLayoutDirection │ XmDirection │ dynamic │ CG │
372 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
373 │XmNnavigationType │ XmCNavigationType │ XmNavigationType │ XmSTICKY_TAB_GROUP │ CSG │
374 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
375 │XmNpopupHandlerCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
376 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
377 │XmNshadowThickness │ XmCShadowThickness │ Dimension │ 2 │ CSG │
378 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
379 │XmNtopShadowColor │ XmCTopShadowColor │ Pixel │ dynamic │ CSG │
380 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
381 │XmNtopShadowPixmap │ XmCTopShadowPixmap │ Pixmap │ dynamic │ CSG │
382 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
383 │XmNtraversalOn │ XmCTraversalOn │ Boolean │ dynamic │ CSG │
384 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
385 │XmNunitType │ XmCUnitType │ unsigned char │ dynamic │ CSG │
386 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
387 │XmNuserData │ XmCUserData │ XtPointer │ NULL │ CSG │
388 ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
389 └────────────────────────┴───────────────────────┴──────────────────┴──────────────────────┴────────┘
390 ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
391 │ │ Core Resource Se│t │ │ │
392 │Name │ Class │ Type │ Default │ Access │
393 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
394 │XmNaccelerators │ XmCAccelerators │ XtAccelerators │ dynamic │ CSG │
395 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
396 │XmNancestorSensitive │ XmCSensitive │ Boolean │ dynamic │ G │
397 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
398 │XmNbackground │ XmCBackground │ Pixel │ dynamic │ CSG │
399 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
400 │XmNbackgroundPixmap │ XmCPixmap │ Pixmap │ XmUNSPECIFIED_PIXMAP │ CSG │
401 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
402 │XmNborderColor │ XmCBorderColor │ Pixel │ XtDefaultForeground │ CSG │
403 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
404 │XmNborderPixmap │ XmCPixmap │ Pixmap │ XmUNSPECIFIED_PIXMAP │ CSG │
405 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
406 │XmNborderWidth │ XmCBorderWidth │ Dimension │ 0 │ CSG │
407 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
408 │XmNcolormap │ XmCColormap │ Colormap │ dynamic │ CG │
409 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
410 │XmNdepth │ XmCDepth │ int │ dynamic │ CG │
411 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
412 │XmNdestroyCallback │ XmCCallback │ XtCallbackList │ NULL │ C │
413 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
414 │XmNheight │ XmCHeight │ Dimension │ dynamic │ CSG │
415 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
416 │XmNinitialResourcesPersistent │ XmCInitialResourcesPersistent │ Boolean │ True │ C │
417 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
418 │XmNmappedWhenManaged │ XmCMappedWhenManaged │ Boolean │ True │ CSG │
419 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
420 │XmNscreen │ XmCScreen │ Screen * │ dynamic │ CG │
421 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
422 │XmNsensitive │ XmCSensitive │ Boolean │ True │ CSG │
423 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
424 │XmNtranslations │ XmCTranslations │ XtTranslations │ dynamic │ CSG │
425 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
426 │XmNwidth │ XmCWidth │ Dimension │ dynamic │ CSG │
427 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
428 │XmNx │ XmCPosition │ Position │ 0 │ CSG │
429 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
430 │XmNy │ XmCPosition │ Position │ 0 │ CSG │
431 ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
432 └──────────────────────────────┴───────────────────────────────┴────────────────┴──────────────────────┴────────┘
433 Callback Information
434 A pointer to the following structure is passed to each callback:
435
436 typedef struct
437 {
438 int reason;
439 XEvent * event;
440 int value;
441 int pixel;
442 } XmScrollBarCallbackStruct;
443
444 reason Indicates why the callback was invoked.
445
446 event Points to the XEvent that triggered the callback.
447
448 value Contains the new slider location value.
449
450 pixel Is used only for XmNtoTopCallback and XmNtoBottomCallback.
451 For horizontal ScrollBars, it contains the x coordinate of
452 where the mouse button selection occurred. For vertical
453 ScrollBars, it contains the y coordinate.
454
455 Translations
456 XmScrollBar includes translations from Primitive. The XmScrollBar
457 translations are described in the following list.
458
459 The following key names are listed in the X standard key event transla‐
460 tion table syntax. This format is the one used by Motif to specify the
461 widget actions corresponding to a given key. A brief overview of the
462 format is provided under VirtualBindings(3). For a complete descrip‐
463 tion of the format, please refer to the X Toolkit Instrinsics Documen‐
464 tation.
465
466 ∼s ∼c ∼m ∼a <Btn1Down>:
467 Select()
468
469 ∼s ∼c ∼m ∼a <Btn1Up>:
470 Release()
471
472 ∼s ∼c ∼m ∼a Button1<PtrMoved>:
473 Moved()
474
475 ∼s ∼c ∼m ∼a <Btn2Down>:
476 Select()
477
478 ∼s ∼c ∼m ∼a <Btn2Up>:
479 Release()
480
481 ∼s ∼c ∼m ∼a Button2<PtrMoved>:
482 Moved()
483
484 ∼s c ∼m ∼a <Btn1Down>:
485 TopOrBottom()
486
487 ∼s c ∼m ∼a <Btn1Up>:
488 Release()
489
490 :<Key><osfActivate>:
491 PrimitiveParentActivate()
492
493 :<Key><osfCancel>:
494 CancelDrag()
495
496 :<Key><osfBeginLine>:
497 TopOrBottom()
498
499 :<Key><osfEndLine>:
500 TopOrBottom()
501
502 :<Key><osfPageLeft>:
503 PageUpOrLeft(Left)
504
505 :c <Key><osfPageUp>:
506 PageUpOrLeft(Left)
507
508 :<Key><osfPageUp>:
509 PageUpOrLeft(Up)
510
511 :<Key><osfPageRight>:
512 PageDownOrRight(Right)
513
514 :c <Key><osfPageDown>:
515 PageDownOrRight(Right)
516
517 :<Key><osfPageDown>:
518 PageDownOrRight(Down)
519
520 :<Key><osfHelp>:
521 PrimitiveHelp()
522
523 :c <Key><osfUp>:
524 PageUpOrLeft(Up)
525
526 :<Key><osfUp>:
527 IncrementUpOrLeft(Up)
528
529 :c <Key><osfDown>:
530 PageDownOrRight(Down)
531
532 :<Key><osfDown>:
533 IncrementDownOrRight(Down)
534
535 :c <Key><osfLeft>:
536 PageUpOrLeft(Left)
537
538 :<Key><osfLeft>:
539 IncrementUpOrLeft(Left)
540
541 :c <Key><osfRight>:
542 PageDownOrRight(Right)
543
544 :<Key><osfRight>:
545 IncrementDownOrRight(Right)
546
547 ∼s ∼m ∼a <Key>Return:
548 PrimitiveParentActivate()
549
550 s ∼m ∼a <Key>Tab:
551 PrimitivePrevTabGroup()
552
553 ∼m ∼a <Key>Tab:
554 PrimitiveNextTabGroup()
555
556 Action Routines
557 The ScrollBar action routines are
558
559 CancelDrag():
560 If the key press occurs during scrolling, cancels the scroll
561 and returns the slider to its previous location in the
562 scrollbar, otherwise, and if the parent is a manager, it
563 passes the event to the parent.
564
565 IncrementDownOrRight(Down|Right):
566 With an argument of Down, or 0 (zero) for compatibility,
567 moves the slider down by one increment. With an argument of
568 Right, or 1 for compatibility, it moves the slider right by
569 one increment. If XmNprocessingDirection is XmMAX_ON_RIGHT
570 or XmMAX_ON_BOTTOM, movement toward the right or bottom calls
571 the callbacks for XmNincrementCallback. If XmNprocessingDi‐
572 rection is XmMAX_ON_LEFT or XmMAX_ON_TOP, movement toward the
573 right or bottom calls the callbacks for XmNdecrementCallback.
574 The XmNvalueChangedCallback is called if the XmNincrement‐
575 Callback or XmNdecrementCallback is NULL.
576
577 IncrementUpOrLeft(Up|Left):
578 With an argument of Up, or 0 (zero) for compatibility, moves
579 the slider up by one increment. With an argument of Left, or
580 1 for compatibility, it moves the slider left by one incre‐
581 ment. If XmNprocessingDirection is XmMAX_ON_RIGHT or
582 XmMAX_ON_BOTTOM, movement to the left or top calls the call‐
583 backs for XmNdecrementCallback. If XmNprocessingDirection is
584 XmMAX_ON_LEFT or XmMAX_ON_TOP, movement to the left or top
585 calls the callbacks for XmNincrementCallback. The XmNval‐
586 ueChangedCallback is called if the XmNincrementCallback or
587 XmNdecrementCallback is NULL.
588
589 Moved(): If the button press occurs within the slider, the subsequent
590 motion events move the slider to the position of the pointer
591 and call the callbacks for XmNdragCallback.
592
593 PageDownOrRight(Down|Right):
594 With an argument of Down, or 0 (zero) for compatibility,
595 moves the slider down by one page increment. With an argu‐
596 ment of Right, or 1 for compatibility, moves the slider right
597 by one page increment. If XmNprocessingDirection is
598 XmMAX_ON_RIGHT or XmMAX_ON_BOTTOM, movement toward the right
599 or bottom calls the callbacks for XmNpageIncrementCallback.
600 If XmNprocessingDirection is XmMAX_ON_LEFT or XmMAX_ON_TOP,
601 movement toward the right or bottom calls the XmNpageDecre‐
602 mentCallback callbacks. The XmNvalueChangedCallback is called
603 if the XmNpageIncrementCallback or XmNpageDecrementCallback
604 is NULL.
605
606 PageUpOrLeft(Up|Left):
607 With an argument of Up, or 0 (zero) for compatibility, moves
608 the slider up by one page increment. With an argument of
609 Left, or 1 for compatibility, it moves the slider left by one
610 page increment. If XmNprocessingDirection is XmMAX_ON_RIGHT
611 or XmMAX_ON_BOTTOM, movement to the left or top calls the
612 callbacks for XmNpageDecrementCallback. If XmNprocessingDi‐
613 rection is XmMAX_ON_LEFT or XmMAX_ON_TOP, movement to the
614 left or top calls the XmNpageIncrementCallback callbacks. The
615 XmNvalueChangedCallback is called if the XmNpageIncrement‐
616 Callback or XmNpageDecrementCallback is NULL.
617
618 PrimitiveHelp():
619 Calls the callbacks for XmNhelpCallback if any exist. If
620 there are no help callbacks for this widget, this action
621 calls the help callbacks for the nearest ancestor that has
622 them.
623
624 PrimitiveNextTabGroup():
625 Traverses to the first item in the next tab group. If the
626 current tab group is the last entry in the tab group list, it
627 wraps to the beginning of the tab group list.
628
629 PrimitiveParentActivate():
630 If the parent is a manager, passes the event to the parent.
631
632 PrimitivePrevTabGroup():
633 Traverses to the first item in the previous tab group. If
634 the beginning of the tab group list is reached, it wraps to
635 the end of the tab group list.
636
637 Release():
638 If the button press occurs within the slider and the slider
639 position is changed, the callbacks for XmNvalueChangedCall‐
640 back are called.
641
642 Select(): In arrow: Moves the slider by one increment in the direction
643 of the arrow. If XmNprocessingDirection is XmMAX_ON_RIGHT or
644 XmMAX_ON_BOTTOM, movement toward the right or bottom calls
645 the callbacks for XmNincrementCallback, and movement to the
646 left or top calls the callbacks for XmNdecrementCallback. If
647 XmNprocessingDirection is XmMAX_ON_LEFT or XmMAX_ON_TOP,
648 movement toward the right or bottom calls the callbacks for
649 XmNdecrementCallback, and movement to the left or top calls
650 the callbacks for XmNincrementCallback. The XmNvalueChanged‐
651 Callback is called if the XmNincrementCallback or XmNdecre‐
652 mentCallback is NULL.
653
654 In scroll region between an arrow and the slider: Moves the
655 slider by one page increment in the direction of the arrow.
656 If XmNprocessingDirection is XmMAX_ON_RIGHT or XmMAX_ON_BOT‐
657 TOM, movement toward the right or bottom calls the callbacks
658 for XmNpageIncrementCallback, and movement to the left or top
659 calls the callbacks for XmNpageDecrementCallback. If XmNpro‐
660 cessingDirection is XmMAX_ON_LEFT or XmMAX_ON_TOP, movement
661 toward the right or bottom calls the callbacks for XmN‐
662 pageDecrementCallback, and movement to the left or top calls
663 the callbacks for XmNpageIncrementCallback. The XmNval‐
664 ueChangedCallback is called if the XmNpageIncrementCallback
665 or XmNpageDecrementCallback is NULL.
666
667 In slider: Activates the interactive dragging of the slider.
668
669 If the button is held down in either the arrows or the scroll
670 region longer than the XmNinitialDelay resource, the slider
671 is moved again by the same increment and the same callbacks
672 are called. After the initial delay has been used, the time
673 delay changes to the time defined by the resource XmNrepeat‐
674 Delay.
675
676 TopOrBottom():
677 <Ctrl><Btn1Down> in an arrow or in the scroll region between
678 an arrow and the slider moves the slider as far as possible
679 in the direction of the arrow. If XmNprocessingDirection is
680 XmMAX_ON_RIGHT or XmMAX_ON_BOTTOM, movement toward the right
681 or bottom calls the callbacks for XmNtoBottomCallback, and
682 movement to the left or top calls the callbacks for XmNtoTop‐
683 Callback. If XmNprocessingDirection is XmMAX_ON_LEFT or
684 XmMAX_ON_TOP, movement toward the right or bottom calls the
685 callbacks for XmNtoTopCallback, and movement to the left or
686 top calls the callbacks for XmNtoBottomCallback. The XmNval‐
687 ueChangedCallback is called if the XmNtoTopCallback or XmNto‐
688 BottomCallback is NULL. Pressing <Key><osfBeginLine> or
689 <Key><osfBeginData> moves the slider to the minimum value and
690 invokes the XmNtoTopCallback. Pressing <Key><osfEndLine> or
691 <Key><osfEndData> moves the slider to the maximum value and
692 invokes the XmNtoBottomCallback.
693
694 Virtual Bindings
695 The bindings for virtual keys are vendor specific. For information
696 about bindings for virtual buttons and keys, see VirtualBindings(3).
697
699 Core(3), XmCreateScrollBar(3), XmPrimitive(3), XmScrollBarGetValues(3),
700 XmScrollBarSetValues(3), XmVaCreateScrollBar(3), and XmVaCreateManaged‐
701 ScrollBar(3).
702
703
704
705 XmScrollBar(library call)