1XmTabStack(3X)                                                  XmTabStack(3X)
2
3
4

NAME

6       XmTabStack - The TabStack widget class
7

SYNOPSIS

9       #include <Xm/TabStack.h>
10

DESCRIPTION

12       The  XmTabStack  widget  manages  a group of widgets such that only one
13       widget in the group is visible at a time. Each child is associated with
14       a  "tab"  that  displays a text label and/or a pixmap. By selecting the
15       "tab" the user interactively determines which child is displayed.  This
16       widget  exhibits behavior similar to the Microsoft Windows(TM) Tab Con‐
17       trol.
18
19       The tabs can be configured to appear above, below, to the right, and to
20       the  left of a work area with the text oriented in any of the four car‐
21       dinal directions.
22
23       The TabStack allows the user to select, either by pointer  or  keyboard
24       traversal,  tabs.  When a tab is selected it changes appearance so that
25       it appears to be raised above the other tabs.  When a tab  is  selected
26       the  child associated with the tab is made visible. One tab is selected
27       at all times.
28
29   Classes
30       TabStack inherits behavior and resources  form  Core,  Composite,  Con‐
31       straint, XmManager and XmBulletinBoard Classes.
32
33       The class pointer is xmTabStackWidgetClass.
34
35       The class name is XmTabStack.
36
37   New Resources
38       The  following table defines a set of widget resources used by the pro‐
39       grammer to specify data.  The programmer can also set the resource val‐
40       ues  for  the  inherited classes to set attributes for this widget.  To
41       reference a resource by name or by class in a .Xdefaults  file,  remove
42       the XmN or XmC prefix and use the remaining letters.  To specify one of
43       the defined values for a resource in a .Xdefaults file, remove  the  Xm
44       or  prefix and use the remaining letters (in either lowercase or upper‐
45       case, but include any underscores between words).   The  codes  in  the
46       access  column  indicate  if  the given resource can be set at creation
47       time(C), set by using XtSetValues (S), retrieved by  using  XtGetValues
48       (G), or is not applicable (N/A).
49
50                               XmTabStack Resource Set
51             ────────────────────────────────────────────────────────────
52             Name                          Default                Access
53                   Class                         Type
54             ────────────────────────────────────────────────────────────
55             ────────────────────────────────────────────────────────────
56             XmNfontList                   Dynamic                CSG
57                   XmCFontList                   XmFontList
58             ────────────────────────────────────────────────────────────
59             XmNhighlightThickness         2                      CSG
60                   XmCHighlightThickness         Dimension
61             ────────────────────────────────────────────────────────────
62             XmNstackedEffect              True                   CSG
63                   XmCStackedEffect              Boolean
64             ────────────────────────────────────────────────────────────
65             XmNtabAutoSelect              True                   CG
66
67                   XmCTabAutoSelect              Boolean
68             ────────────────────────────────────────────────────────────
69             XmNtabCornerPercent           40                     CSG
70                   XmCTabCornerPercent           int
71             ────────────────────────────────────────────────────────────
72             XmNtabLabelSpacing            2                      CSG
73                   XmCTabLabelSpacing            Dimension
74             ────────────────────────────────────────────────────────────
75             XmNtabMarginHeight            3                      CSG
76                   XmCTabMarginHeight            Dimension
77             ────────────────────────────────────────────────────────────
78             XmNtabMarginWidth             3                      CSG
79                   XmCTabMarginWidth             Dimension
80             ────────────────────────────────────────────────────────────
81             XmNtabMode                    XmTABS_BASIC           CSG
82                   XmCTabMode                    int
83             ────────────────────────────────────────────────────────────
84             XmNtabOffset                  10                     CSG
85                   XmCTabOffset                  Dimension
86             ────────────────────────────────────────────────────────────
87             XmNtabOrientation             Dynamic                CSG
88                   XmCTabOrientation             int
89             ────────────────────────────────────────────────────────────
90             XmNtabSelectColor             Dynamic                CSG
91                   XmCTabSelectColor             Pixel
92             ────────────────────────────────────────────────────────────
93             XmNtabSelectedCallback        NULL                   CS
94                   XmCCallback                   XtCallbackList
95             ────────────────────────────────────────────────────────────
96             XmNtabSelectPixmap            XmUNSPECIFIED_PIXMAP   CSG
97                   XmCTabSelectPixmap            Pixmap
98             ────────────────────────────────────────────────────────────
99             XmNtabSide                    XmTABS_ON_TOP          CSG
100                   XmCTabSide                    int
101             ────────────────────────────────────────────────────────────
102             XmNtabStyle                   XmTABS_BEVELED         CSG
103                   XmCTabStyle                   int
104             ────────────────────────────────────────────────────────────
105             XmNuniformTabSize             True                   CSG
106                   XmCUniformTabSize             Boolean
107             ────────────────────────────────────────────────────────────
108             XmNuseImageCache              True                   CSG
109                   XmCUseImageCache              Boolean
110             ────────────────────────────────────────────────────────────
111
112       XmNfontList
113              Specifies  the  XmFontList to use when drawing the label strings
114              for the tabs.
115
116       XmNhighlightThickness
117              Specifies the thickness of the rectangle drawn around the  label
118              string and label pixmap of the tab with keyboard traversal.
119
120       XmNstackedEffect
121              Specifies if the visuals should depict a stack of folders, True,
122              or if the XmTabStack should use  all  available  space  for  its
123              children, False.
124
125       XmNtabAutoSelect
126              Specifies  if  a  tab is automatically selected when it receives
127              keyboard traversal.
128
129       XmNtabCornerPercent
130              Specifies the percent of the font height that should be used for
131              the corner visual.
132
133       XmNtabLabelSpacing
134              Specifies  the amount of space to leave between a text label and
135              a pixmap in the tab area.
136
137       XmNtabMarginHeight
138              Specifies the vertical border that is placed  around  the  label
139              area of a tab.
140
141       XmNtabMarginWidth
142              Specifies  the horizontal border that is placed around the label
143              area of a tab.
144
145       XmNtabMode
146              Specifies the mode in which the XmTabStack distributes the tabs.
147              Valid values for this resource include:
148
149              XmTABS_BASIC
150                     Distributes  the  tabs in either a vertical or horizontal
151                     row and clips the tabs if there is  not  enough  room  to
152                     display all the tabs.
153
154              XmTABS_STACKED
155                     Distributes  the  tabs in either a vertical or horizontal
156                     row. If there is not enough room to display all the  tabs
157                     additional  rows  are added.  When a tab is selected, its
158                     row is moved next to the children in the stack.
159
160              XmTABS_STACKED_STATIC
161                     Distributes the tabs in either a vertical  or  horizontal
162                     row.  If there is not enough room to display all the tabs
163                     additional rows are added. The positions of rows are  not
164                     changed when tabs are selected.
165
166       XmNtabOffset
167              Specifies the amount of indentation used to stagger the tab rows
168              when  displaying  tabs   in   either   the   XmTABS_STACKED   or
169              XmTABS_STACKED_STATIC mode.
170
171       XmNtabOrientation
172              Specifies the orientation of the tab, and the rotation factor of
173              the tab label. Valid values for this resource include:
174
175              XmTAB_ORIENTATION_DYNAMIC
176                     Specifies that the orientation of the tabs should be cal‐
177                     culated dynamically based on the XmNtabSide resource.
178
179              XmTABS_LEFT_TO_RIGHT
180                     Specifies that the text appears at the default rotation.
181
182              XmTABS_RIGHT_TO_LEFT
183                     Specifies that the text appears upside down.
184
185              XmTABS_TOP_TO_BOTTOM
186                     Specifies that the text should be rotated to the vertical
187                     position with the first character drawn at the  lowest  y
188                     position  and  the  bottom of the text faces the lowest x
189                     position.
190
191              XmTABS_BOTTOM_TO_TOP
192                     Specifies that the text should be rotated to  the  verti‐
193                     cal, position with the first character drawn at the high‐
194                     est y position and the bottom of the text faces the high‐
195                     est x position.
196
197       XmNtabSelectColor
198              Specifies the color of the selected tab.
199
200       XmNtabSelectedCallback
201              Specifies the list of callbacks to call when a child becomes the
202              selected tab.
203
204       XmNtabSelectPixmap
205              Specifies the pixmap of the selected tab.
206
207       XmNtabSide
208              Specifies the location of the tab with respect to  the  children
209              of the XmTabStack. Valid values for this resource include:
210
211              XmTABS_ON_TOP
212                     Specifies  that the tabs should be placed above the chil‐
213                     dren.
214
215              XmTABS_ON_BOTTOM
216                     Specifies that the tabs should be placed below the  chil‐
217                     dren.
218
219              XmTABS_ON_RIGHT
220                     Specifies  that the tabs should be placed to the right of
221                     the children.
222
223              XmTABS_ON_LEFT
224                     Specifies that the tabs should be placed to the  left  of
225                     the children.
226
227       XmNtabStyle
228              Specifies  the  appearance of the tabs associated with the chil‐
229              dren of the XmTabStack. Valid values for this resource include:
230
231              XmTABS_BEVELED
232                     Draws the corners of the tabs as an angled line.
233
234              XmTABS_ROUNDED
235                     Draws the corners of the tabs as a quarter of a circle.
236
237              XmTABS_SQUARED
238                     Draws the tabs as rectangles.
239
240       XmNuniformTabSize
241              Determines if all tabs should have a  uniform  major  dimension,
242              where  the  major  dimension  is width if the tab orientation is
243              XmTABS_LEFT_TO_RIGHT or XmTABS_RIGHT_TO_LEFT or  height  if  the
244              tab orientation is XmTABS_TOP_TO_BOTTOM or XmTABS_BOTTOM_TO_TOP.
245              When     XmNtabMode     is     either     XmTABS_STACKED      or
246              XmTABS_STACKED_STATIC, this resource is forced to True.
247
248       XmNuseImageCache
249              Destermines  if  the  Xmmages used for rotating text and pixmaps
250              should be cached. This increases performance but  uses  up  more
251              memory.
252
253
254                             XmTabStack Constraint Resource Set
255              ──────────────────────────────────────────────────────────────────
256              Name                          Default                      Access
257                    Class                         Type
258              ──────────────────────────────────────────────────────────────────
259              ──────────────────────────────────────────────────────────────────
260              XmNfreeTabPixmap              False                        CSG
261                    XmCFreeTabPixmap              Boolean
262              ──────────────────────────────────────────────────────────────────
263              XmNtabAlignment               XmALIGNMENT_CENTER           CSG
264                    XmCAlignment                  unsigned char
265              ──────────────────────────────────────────────────────────────────
266
267              XmNtabBackground              Dynamic                      CSG
268                    XmCBackground                 Pixel
269              ──────────────────────────────────────────────────────────────────
270              XmNtabBackgroundPixmap        Dynamic                      CSG
271                    XmCBackgroundPixmap           Pixmap
272              ──────────────────────────────────────────────────────────────────
273              XmNtabForeground              Dynamic                      CSG
274                    XmCForeground                 Pixel
275              ──────────────────────────────────────────────────────────────────
276              XmNtabLabelPixmap             XmUNSPECIFIED_PIXMAP         CSG
277                    XmCTabLabelPixmap             Pixmap
278              ──────────────────────────────────────────────────────────────────
279              XmNtabLabelString             NULL                         CSG
280                    XmCTabLabelString             XmString
281              ──────────────────────────────────────────────────────────────────
282              XmNtabPixmapPlacement         XmPIXMAP_RIGHT               CSG
283                    XmCTabPixmapPlacement         XmPixmapPlacement
284              ──────────────────────────────────────────────────────────────────
285              XmNtabStringDirection         XmSTRING_DIRECTION_DEFAULT   CSG
286                    XmCTabStringDirection         unsigned char
287              ──────────────────────────────────────────────────────────────────
288
289       XmNfreeTabPixmap
290              Specifies  that  the  pixmaps  assigned  to  the  XmNlabelPixmap
291              resources should be freed when the widget is destroyed.
292
293       XmNtabAlignment
294              Specifies the alignment of the tab label. Valid values for  this
295              resource include:
296
297              XmALIGNMENT_BEGINNING
298                     Aligns the label to the left side of the available space.
299
300              XmALIGNMENT_CENTER
301                     Aligns the label centered in the available space.
302
303              XmALIGNMENT_END
304                     Aligns  the  label  to  the  right  side of the available
305                     space.
306
307       XmNtabBackground
308              Specifies the background pixel for the tab.
309
310       XmNtabBackgroundPixmap
311              Specifies the background pixmap for the tab.
312
313       XmNtabForeground
314              Specifies the foreground pixel for the tab.
315
316       XmNtabLabelPixmap
317              Specifies the pixmap to display in the tab label.
318
319       XmNtabLabelString
320              Specifies the XmString to display as the textual portion of  the
321              tab  label.  This  is  copied  when set on the widget. The value
322              fetched via XtGetValues should not be  freed  as  it  returns  a
323              pointer  to  the  widgets  value.  If  you wish to use the value
324              returned from XtGetValues use XmStringCopy the returned value.
325
326       XmNtabPixmapPlacement
327              Specifies the location of the pixmap with respect to the text in
328              the tab label. Valid values for this resource include:
329
330              XmPIXMAP_TOP
331                     Specifies that the pixmap should be above the XmString.
332
333              XmPIXMAP_BOTTOM
334                     Specifies that the pixmap should be below the XmString.
335
336              XmPIXMAP_RIGHT
337                     Specifies  that  the pixmap should be to the right of the
338                     XmString.
339
340              XmPIXMAP_LEFT
341                     Specifies that the pixmap should be to the  left  of  the
342                     XmString.
343
344              XmPIXMAP_ONLY
345                     Specifies  that  only the pixmap portion of the tab label
346                     should be displayed.
347
348              XmPIXMAP_NONE
349                     Specifies that only the XmString portion of the tab label
350                     should be displayed.
351
352       XmNtabStringDirection
353              Specifies  the  string direction for the XmString portion of the
354              tab label. Valid values for this resouce include:
355
356              XmSTRING_DIRECTION_L_TO_R
357                     Left to right
358
359              XmSTRING_DIRECTION_R_TO_L
360                     Right to left
361
362
363   Inherited Resources
364       TabStack inherits behavior and  resources  from  the  following  super‐
365       classes.  For a complete description of each resource, refer to the man
366       page for that superclass.
367
368
369                            XmBulletinBoard Resource Set
370                Name                       Default Access
371                      Class                      Type
372                ──────────────────────────────────────────────────────
373                ──────────────────────────────────────────────────────
374                XmNallowOverlap            True                   CSG
375                      XmCAllowOverlap            Boolean
376                ──────────────────────────────────────────────────────
377                XmNautoUnmanage            False                  CG
378                      XmCAutoUnmanage            Boolean
379                ──────────────────────────────────────────────────────
380                XmNbuttonFontList          dynamic                CSG
381                      XmCButtonFontList          XmFontList
382                ──────────────────────────────────────────────────────
383                XmNcancelButton            NULL                   SG
384                      XmCWidget                  Widget
385                ──────────────────────────────────────────────────────
386                XmNdefaultButton           NULL                   SG
387                      XmCWidget                  Widget
388                ──────────────────────────────────────────────────────
389                XmNdefaultPosition         True                   CSG
390                      XmCDefaultPosition         Boolean
391                ──────────────────────────────────────────────────────
392                XmNdialogStyle             dynamic                CSG
393                      XmCDialogStyle             unsigned char
394                ──────────────────────────────────────────────────────
395                XmNdialogTitle             NULL                   CSG
396                      XmCDialogTitle             XmString
397                ──────────────────────────────────────────────────────
398                XmNfocusCallback           NULL                   C
399                      XmCCallback                XtCallbackList
400                ──────────────────────────────────────────────────────
401                XmNlabelFontList           dynamic                CSG
402                      XmCLabelFontList           XmFontList
403                ──────────────────────────────────────────────────────
404
405                XmNmapCallback             NULL                   C
406                      XmCCallback                XtCallbackList
407                ──────────────────────────────────────────────────────
408                XmNmarginHeight            10                     CSG
409                      XmCMarginHeight            Dimension
410                ──────────────────────────────────────────────────────
411                XmNmarginWidth             10                     CSG
412                      XmCMarginWidth             Dimension
413                ──────────────────────────────────────────────────────
414                XmNnoResize                False                  CSG
415                      XmCNoResize                Boolean
416                ──────────────────────────────────────────────────────
417
418
419                               XmManager Resource Set
420             ────────────────────────────────────────────────────────────
421             Name                          Default Access
422                   Class                         Type
423             ────────────────────────────────────────────────────────────
424             ────────────────────────────────────────────────────────────
425             XmNbottomShadowColor          dynamic                   CSG
426                   XmCBottomShadowColor          Pixel
427             ────────────────────────────────────────────────────────────
428             XmNbottomShadowPixmap         XmUNSPECIFIED_PIXMAP      CSG
429                   XmCBottomShadowPixmap         Pixmap
430             ────────────────────────────────────────────────────────────
431             XmNforeground                 dynamic                   CSG
432                   XmCForeground                 Pixel
433             ────────────────────────────────────────────────────────────
434             XmNhelpCallback               NULL                      C
435                   XmCCallback                   XtCallbackList
436             ────────────────────────────────────────────────────────────
437             XmNhighlightColor             dynamic                   CSG
438                   XmCHighlightColor             Pixel
439             ────────────────────────────────────────────────────────────
440             XmNhighlightPixmap            dynamic                   CSG
441                   XmCHighlightPixmap            Pixmap
442             ────────────────────────────────────────────────────────────
443             XmNinitialFocus               dynamic                   CSG
444                   XmCInitialFocus               Widget
445             ────────────────────────────────────────────────────────────
446             XmNnavigationType             XmTAB_GROUP               CSG
447                   XmCNavigationType             XmNavigationType
448             ────────────────────────────────────────────────────────────
449             XmNshadowThickness            2                         CSG
450                   XmCShadowThickness            Dimension
451             ────────────────────────────────────────────────────────────
452             XmNstringDirection            dynamic                   CG
453                   XmCStringDirection            XmStringDirection
454             ────────────────────────────────────────────────────────────
455             XmNtopShadowColor             dynamic                   CSG
456                   XmCTopShadowColor             Pixel
457             ────────────────────────────────────────────────────────────
458             XmNtopShadowPixmap            dynamic                   CSG
459                   XmCTopShadowPixmap            Pixmap
460             ────────────────────────────────────────────────────────────
461             XmNtraversalOn                True                      CSG
462                   XmCTraversalOn                Boolean
463             ────────────────────────────────────────────────────────────
464             XmNunitType                   dynamic CSG
465                   XmCUnitType                   unsigned char
466             ────────────────────────────────────────────────────────────
467             XmNuserData                   NULL                      CSG
468                   XmCUserData                   XtPointer
469             ────────────────────────────────────────────────────────────
470
471
472
473
474                               Composite Resource Set
475                  ──────────────────────────────────────────────────
476                  Name                      Default Access
477                        Class                     Type
478                  ──────────────────────────────────────────────────
479                  ──────────────────────────────────────────────────
480                  XmNchildren               NULL                G
481                        XmCReadOnly               WidgetList
482                  ──────────────────────────────────────────────────
483                  XmNinsertPosition         NULL                CSG
484                        XmCInsertPosition         XtOrderProc
485                  ──────────────────────────────────────────────────
486                  XmNnumChildren            0                   G
487                        XmCReadOnly               Cardinal
488                  ──────────────────────────────────────────────────
489
490
491                                 Core Resource Set
492        ─────────────────────────────────────────────────────────────────────
493        Name                                  Default Access
494              Class                                 Type
495        ─────────────────────────────────────────────────────────────────────
496        ─────────────────────────────────────────────────────────────────────
497        XmNaccelerators                       dynamic                N/A
498              XmCAccelerators                       XtAccelerators
499        ─────────────────────────────────────────────────────────────────────
500        XmNancestorSensitive                  dynamic                G
501              XmCSensitive                          Boolean
502        ─────────────────────────────────────────────────────────────────────
503        XmNbackground                         dynamic                CSG
504              XmCBackground                         Pixel
505        ─────────────────────────────────────────────────────────────────────
506        XmNbackgroundPixmap                   XmUNSPECIFIED_PIXMAP   CSG
507              XmCPixmap                             Pixmap
508        ─────────────────────────────────────────────────────────────────────
509        XmNborderColor                        XtDefaultForeground    CSG
510              XmCBorderColor                        Pixel
511        ─────────────────────────────────────────────────────────────────────
512        XmNborderPixmap                       XmUNSPECIFIED_PIXMAP   CSG
513              XmCPixmap                             Pixmap
514        ─────────────────────────────────────────────────────────────────────
515        XmNborderWidth                        0                      CSG
516              XmCBorderWidth                        Dimension
517        ─────────────────────────────────────────────────────────────────────
518        XmNcolormap                           dynamic                CG
519              XmCColormap                           Colormap
520        ─────────────────────────────────────────────────────────────────────
521        XmNdepth                              dynamic                CG
522              XmCDepth                              int
523        ─────────────────────────────────────────────────────────────────────
524        XmNdestroyCallback                    NULL                   C
525              XmCCallback                           XtCallbackList
526        ─────────────────────────────────────────────────────────────────────
527        XmNheight                             dynamic                CSG
528              XmCHeight                             Dimension
529        ─────────────────────────────────────────────────────────────────────
530        XmNinitialResourcesPersistent         True                   C
531              XmCInitialResourcesPersistent         Boolean
532        ─────────────────────────────────────────────────────────────────────
533        XmNmappedWhenManaged                  True                   CSG
534              XmCMappedWhenManaged                  Boolean
535        ─────────────────────────────────────────────────────────────────────
536        XmNscreen                             Screen*                dynamic
537              XmCScreen                             Screen
538        ─────────────────────────────────────────────────────────────────────
539        XmNsensitive                          True                   CSG
540              XmCSensitive                          Boolean
541        ─────────────────────────────────────────────────────────────────────
542
543        XmNtranslations                       dynamic                CSG
544              XmCTranslations                       XtTranslations
545        ─────────────────────────────────────────────────────────────────────
546        XmNwidth                              dynamic                CSG
547              XmCWidth                              Dimension
548        ─────────────────────────────────────────────────────────────────────
549        XmNx                                  0                      CSG
550              XmCPosition                           Position
551        ─────────────────────────────────────────────────────────────────────
552        XmNy                                  0                      CSG
553              XmCPosition                           Position
554        ─────────────────────────────────────────────────────────────────────
555
556   Calback Information
557       A pointer to the following structure is passed to each callback:
558
559
560       typedef struct _XmTabStackCallbackStruct {
561         intreason;
562         XEvent*event;
563         Widgetselected_child;
564       } XmTabStackCallbackStruct;
565
566
567
568       reason Indicates why the callback was invoked. Valid callbacks  reasons
569              include:
570
571              XmCR_TAB_SELECTED
572                     Indicates that a child has been made the selected widget.
573
574       event  Points to the XEvent that triggered the callback.
575
576       selected_child
577              Contains the widget ID of the selected child.
578
579   Translations
580       XmTabStack includes the translations from the XmManager.
581
582
583   Additional Behavior
584       The XmTabStack has no additional behavior.
585
586   Virtual Bindings
587       The  bindings  for  virtual  keys are vendor specific.  For information
588       about bindings for virtual buttons and keys, see VirtualBindings(3X).
589
591       XmBulletinBoard(3), Composite(3), Constraint(3), Core(3), XmCreateTab‐
592       Stack(3), XmManager(3), XmVaCreateTabStack(3), and XmVaCreateMan‐
593       agedTabStack(3).
594
595
596
597
598                                                                XmTabStack(3X)
Impressum