1XmCascadeButton(library call)                    XmCascadeButton(library call)
2
3
4

NAME

6       XmCascadeButton — The CascadeButton widget class
7

SYNOPSIS

9       #include <Xm/CascadeB.h>
10

DESCRIPTION

12       CascadeButton links two menu panes or a MenuBar to a menu pane.
13
14       It  is  used  in menu systems and must have a RowColumn parent with its
15       XmNrowColumnType  resource   set   to   XmMENU_BAR,   XmMENU_POPUP   or
16       XmMENU_PULLDOWN.
17
18       It is the only widget that can have a Pulldown menu pane attached to it
19       as a submenu. The submenu is displayed when this  widget  is  activated
20       within  a  MenuBar,  a  PopupMenu,  or  a PulldownMenu. Its visuals can
21       include a label or pixmap and a cascading indicator when  it  is  in  a
22       Popup or Pulldown menu pane; or it can include only a label or a pixmap
23       when it is in a MenuBar.  The  positioning  of  the  PulldownMenu  with
24       respect to the CascadeButton depends on the XmNlayoutDirection resource
25       of the MenuShell.
26
27       The default behavior associated with a  CascadeButton  depends  on  the
28       type  of menu system in which it resides.  By default, BSelect controls
29       the behavior of the CascadeButton.  In  addition,  BMenu  controls  the
30       behavior of the CascadeButton if it resides in a PopupMenu system.  The
31       actual mouse button used is determined by its RowColumn parent.   BMenu
32       also performs the BSelect actions in all types of menu systems.
33
34       A  CascadeButton's  visuals differ from most other button gadgets. When
35       the button becomes armed, its visuals change from a 2-D to a 3-D  look,
36       and it displays the submenu that has been attached to it. If no submenu
37       is attached, it simply changes its visuals.
38
39       When a CascadeButton within a Pulldown or Popup menu pane is  armed  as
40       the  result  of  the  user moving the mouse pointer into the widget, it
41       does not immediately display its submenu. Instead,  it  waits  a  short
42       amount  of  time  to see if the arming was temporary (that is, the user
43       was simply passing through the widget),  or  whether  the  user  really
44       wanted  the  submenu posted. This time delay is configurable using XmN‐
45       mappingDelay.
46
47       CascadeButton provides a single mechanism  for  activating  the  widget
48       from  the  keyboard.  This  mechanism  is  referred  to  as  a keyboard
49       mnemonic.  If a mnemonic has been specified for the  widget,  the  user
50       may  activate the CascadeButton by simply typing the mnemonic while the
51       CascadeButton is visible.  If the CascadeButton is in a MenuBar and the
52       MenuBar does not have the focus, the MAlt modifier must be pressed with
53       the mnemonic.  Mnemonics are typically used to  interact  with  a  menu
54       using the keyboard interface.
55
56       If the Cascadebutton is in a Pulldown or Popup menu pane and there is a
57       submenu attached, the XmNmarginBottom,  XmNmarginLeft,  XmNmarginRight,
58       and XmNmarginTop resources may enlarge to accommodate XmNcascadePixmap.
59       XmNmarginWidth defaults to 6 if this resource is in a  MenuBar;  other‐
60       wise, it takes Label's default, which is 2.
61
62       CascadeButton   uses   the  XmQTmenuSystem  and  XmQTspecifyRenderTable
63       traits.
64
65   Classes
66       CascadeButton inherits  behavior,  resources,  and  traits  from  Core,
67       XmPrimitive, and XmLabel classes.
68
69       The class pointer is xmCascadeButtonWidgetClass.
70
71       The class name is XmCascadeButton.
72
73   New Resources
74       The  following table defines a set of widget resources used by the pro‐
75       grammer to specify data. The programmer can also set the resource  val‐
76       ues  for  the  inherited  classes to set attributes for this widget. To
77       reference a resource by name or by class in a .Xdefaults  file,  remove
78       the  XmN or XmC prefix and use the remaining letters. To specify one of
79       the defined values for a resource in a .Xdefaults file, remove  the  Xm
80       prefix and use the remaining letters (in either lowercase or uppercase,
81       but include any underscores between words).  The codes  in  the  access
82       column  indicate if the given resource can be set at creation time (C),
83       set by using XtSetValues (S), retrieved by using XtGetValues (G), or is
84       not applicable (N/A).
85
86       ┌───────────────────────────────────────────────────────────────────────────┐
87       │                     │ XmCascadeButton │Resource Set     │         │        │
88Name                 Class           Type           Default Access 
89       ├─────────────────────┼─────────────────┼────────────────┼─────────┼────────┤
90       │XmNactivateCallback  │ XmCCallback     │ XtCallbackList │ NULL    │ C      │
91       ├─────────────────────┼─────────────────┼────────────────┼─────────┼────────┤
92       │XmNcascadePixmap     │ XmCPixmap       │ Pixmap         │ dynamic │ CSG    │
93       ├─────────────────────┼─────────────────┼────────────────┼─────────┼────────┤
94       │XmNcascadingCallback │ XmCCallback     │ XtCallbackList │ NULL    │ C      │
95       ├─────────────────────┼─────────────────┼────────────────┼─────────┼────────┤
96       │XmNmappingDelay      │ XmCMappingDelay │ int            │ 180 ms  │ CSG    │
97       ├─────────────────────┼─────────────────┼────────────────┼─────────┼────────┤
98       │XmNsubMenuId         │ XmCMenuWidget   │ Widget         │ NULL    │ CSG    │
99       ├─────────────────────┼─────────────────┼────────────────┼─────────┼────────┤
100       └─────────────────────┴─────────────────┴────────────────┴─────────┴────────┘
101       XmNactivateCallback
102                 Specifies  the list of callbacks that is called when the user
103                 activates the CascadeButton widget and there  is  no  submenu
104                 attached to pop up. The activation occurs when a mouse button
105                 is released or when the mnemonic associated with  the  widget
106                 is typed. The specific mouse button depends on information in
107                 the RowColumn parent. The reason  sent  by  the  callback  is
108                 XmCR_ACTIVATE.
109
110       XmNcascadePixmap
111                 Specifies the cascade pixmap displayed on one end of the wid‐
112                 get when a CascadeButton is used within a Popup  or  Pulldown
113                 menu  pane  and  a  submenu  is  attached.   The  Label class
114                 resources XmNmarginBottom, XmNmarginLeft, XmNmarginRight, and
115                 XmNmarginTop  may be modified to ensure that room is left for
116                 the cascade pixmap.  The default cascade pixmap is  an  arrow
117                 pointing  to  the  side  of  the  menu where the submenu will
118                 appear.  The positioning of the cascade pixmap to either  the
119                 left  of right of the widget, and the direction of the arrow,
120                 depend on the XmNlayoutDirection resource of the MenuShell.
121
122       XmNcascadingCallback
123                 Specifies the list of callbacks that is called just prior  to
124                 the mapping of the submenu associated with CascadeButton. The
125                 reason sent by the callback is XmCR_CASCADING.
126
127       XmNmappingDelay
128                 Specifies the amount of time, in milliseconds, between when a
129                 CascadeButton  becomes  armed  and  when it maps its submenu.
130                 This delay is used only when the widget is within a Popup  or
131                 Pulldown menu pane.  The value must not be negative.
132
133       XmNsubMenuId
134                 Specifies  the  widget  ID  for  the Pulldown menu pane to be
135                 associated with this CascadeButton. The specified  menu  pane
136                 is  displayed  when the CascadeButton becomes armed. The menu
137                 pane must have been created with  the  appropriate  parentage
138                 depending  on  the type of menu used. See XmCreateMenuBar(3),
139                 XmCreatePulldownMenu(3), and  XmCreatePopupMenu(3)  for  more
140                 information on the menu systems.
141
142   Inherited Resources
143       CascadeButton  inherits  behavior  and  resources from the superclasses
144       described in the following tables.  For a complete description of  each
145       resource, refer to the reference page for that superclass.
146
147       ┌────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
148       │                          │                XmLabel Res│ource Set           │                        │        │
149Name                      Class                     Type              Default                Access 
150       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
151       │XmNaccelerator            │ XmCAccelerator            │ String            │ NULL                   │ N/A    │
152       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
153       │XmNacceleratorText        │ XmCAcceleratorText        │ XmString          │ NULL                   │ N/A    │
154       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
155       │XmNalignment              │ XmCAlignment              │ unsigned char     │ dynamic                │ CSG    │
156       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
157       │XmNfontList               │ XmCFontList               │ XmFontList        │ dynamic                │ CSG    │
158       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
159       │XmNlabelInsensitivePixmap │ XmCLabelInsensitivePixmap │ Pixmap            │ XmUNSPECIFIED_PIXMAP   │ CSG    │
160       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
161       │XmNlabelPixmap            │ XmCLabelPixmap            │ Pixmap            │ XmUNSPECIFIED_PIXMAP   │ CSG    │
162       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
163       │XmNlabelString            │ XmCXmString               │ XmString          │ dynamic                │ CSG    │
164       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
165       │XmNlabelType              │ XmCLabelType              │ unsigned char     │ XmSTRING               │ CSG    │
166       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
167       │XmNmarginBottom           │ XmCMarginBottom           │ Dimension         │ dynamic                │ CSG    │
168       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
169       │XmNmarginHeight           │ XmCMarginHeight           │ Dimension         │ 2                      │ CSG    │
170       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
171       │XmNmarginLeft             │ XmCMarginLeft             │ Dimension         │ 0                      │ CSG    │
172       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
173       │XmNmarginRight            │ XmCMarginRight            │ Dimension         │ dynamic                │ CSG    │
174       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
175       │XmNmarginTop              │ XmCMarginTop              │ Dimension         │ dynamic                │ CSG    │
176       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
177       │XmNmarginWidth            │ XmCMarginWidth            │ Dimension         │ dynamic                │ CSG    │
178       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
179       │XmNmnemonic               │ XmCMnemonic               │ KeySym            │ NULL                   │ CSG    │
180       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
181       │XmNmnemonicCharSet        │ XmCMnemonicCharSet        │ String            │ XmFONTLIST_DEFAULT_TAG │ CSG    │
182       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
183       │XmNrecomputeSize          │ XmCRecomputeSize          │ Boolean           │ True                   │ CSG    │
184       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
185       │XmNrenderTable            │ XmCRenderTable            │ XmRenderTable     │ dynamic                │ CSG    │
186       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
187       │XmNstringDirection        │ XmCStringDirection        │ XmStringDirection │ dynamic                │ CSG    │
188       ├──────────────────────────┼───────────────────────────┼───────────────────┼────────────────────────┼────────┤
189       └──────────────────────────┴───────────────────────────┴───────────────────┴────────────────────────┴────────┘
190       ┌───────────────────────────────────────────────────────────────────────────────────────────────────┐
191       │                        │            XmPrimitiveResource Set      │                      │        │
192Name                    Class                 Type             Default              Access 
193       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
194       │XmNbottomShadowColor    │ XmCBottomShadowColor  │ Pixel            │ dynamic              │ CSG    │
195       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
196       │XmNbottomShadowPixmap   │ XmCBottomShadowPixmap │ Pixmap           │ XmUNSPECIFIED_PIXMAP │ CSG    │
197       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
198       │XmNconvertCallback      │ XmCCallback           │ XtCallbackList   │ NULL                 │ C      │
199       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
200       │XmNforeground           │ XmCForeground         │ Pixel            │ dynamic              │ CSG    │
201       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
202       │XmNhelpCallback         │ XmCCallback           │ XtCallbackList   │ NULL                 │ C      │
203       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
204       │XmNhighlightColor       │ XmCHighlightColor     │ Pixel            │ dynamic              │ CSG    │
205       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
206       │XmNhighlightOnEnter     │ XmCHighlightOnEnter   │ Boolean          │ False                │ CSG    │
207       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
208       │XmNhighlightPixmap      │ XmCHighlightPixmap    │ Pixmap           │ dynamic              │ CSG    │
209       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
210       │XmNhighlightThickness   │ XmCHighlightThickness │ Dimension        │ 0                    │ CSG    │
211       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
212       │XmNlayoutDirection      │ XmCLayoutDirection    │ XmDirection      │ dynamic              │ CG     │
213       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
214       │XmNnavigationType       │ XmCNavigationType     │ XmNavigationType │ XmNONE               │ CSG    │
215       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
216       │XmNpopupHandlerCallback │ XmCCallback           │ XtCallbackList   │ NULL                 │ C      │
217       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
218       │XmNshadowThickness      │ XmCShadowThickness    │ Dimension        │ 2                    │ CSG    │
219       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
220       │XmNtopShadowColor       │ XmCTopShadowColor     │ Pixel            │ dynamic              │ CSG    │
221       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
222       │XmNtopShadowPixmap      │ XmCTopShadowPixmap    │ Pixmap           │ dynamic              │ CSG    │
223       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
224       │XmNtraversalOn          │ XmCTraversalOn        │ Boolean          │ dynamic              │ G      │
225       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
226       │XmNunitType             │ XmCUnitType           │ unsigned char    │ dynamic              │ CSG    │
227       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
228       │XmNuserData             │ XmCUserData           │ XtPointer        │ NULL                 │ CSG    │
229       ├────────────────────────┼───────────────────────┼──────────────────┼──────────────────────┼────────┤
230       └────────────────────────┴───────────────────────┴──────────────────┴──────────────────────┴────────┘
231       ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
232       │                              │               Core Resource Se│t                │                      │        │
233Name                          Class                         Type           Default              Access 
234       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
235       │XmNaccelerators               │ XmCAccelerators               │ XtAccelerators │ dynamic              │ CSG    │
236       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
237       │XmNancestorSensitive          │ XmCSensitive                  │ Boolean        │ dynamic              │ G      │
238       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
239       │XmNbackground                 │ XmCBackground                 │ Pixel          │ dynamic              │ CSG    │
240       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
241       │XmNbackgroundPixmap           │ XmCPixmap                     │ Pixmap         │ XmUNSPECIFIED_PIXMAP │ CSG    │
242       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
243       │XmNborderColor                │ XmCBorderColor                │ Pixel          │ XtDefaultForeground  │ CSG    │
244       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
245       │XmNborderPixmap               │ XmCPixmap                     │ Pixmap         │ XmUNSPECIFIED_PIXMAP │ CSG    │
246       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
247       │XmNborderWidth                │ XmCBorderWidth                │ Dimension      │ 0                    │ CSG    │
248       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
249       │XmNcolormap                   │ XmCColormap                   │ Colormap       │ dynamic              │ CG     │
250       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
251       │XmNdepth                      │ XmCDepth                      │ int            │ dynamic              │ CG     │
252       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
253       │XmNdestroyCallback            │ XmCCallback                   │ XtCallbackList │ NULL                 │ C      │
254       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
255       │XmNheight                     │ XmCHeight                     │ Dimension      │ dynamic              │ CSG    │
256       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
257       │XmNinitialResourcesPersistent │ XmCInitialResourcesPersistent │ Boolean        │ True                 │ C      │
258       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
259       │XmNmappedWhenManaged          │ XmCMappedWhenManaged          │ Boolean        │ True                 │ CSG    │
260       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
261       │XmNscreen                     │ XmCScreen                     │ Screen *       │ dynamic              │ CG     │
262       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
263       │XmNsensitive                  │ XmCSensitive                  │ Boolean        │ True                 │ CSG    │
264       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
265       │XmNtranslations               │ XmCTranslations               │ XtTranslations │ dynamic              │ CSG    │
266       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
267       │XmNwidth                      │ XmCWidth                      │ Dimension      │ dynamic              │ CSG    │
268       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
269       │XmNx                          │ XmCPosition                   │ Position       │ 0                    │ CSG    │
270       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
271       │XmNy                          │ XmCPosition                   │ Position       │ 0                    │ CSG    │
272       ├──────────────────────────────┼───────────────────────────────┼────────────────┼──────────────────────┼────────┤
273       └──────────────────────────────┴───────────────────────────────┴────────────────┴──────────────────────┴────────┘
274   Callback Information
275       A pointer to the following structure is passed to each callback:
276
277       typedef struct
278       {
279               int reason;
280               XEvent * event;
281       } XmAnyCallbackStruct;
282
283       reason    Indicates why the callback was invoked
284
285       event     Points  to  the XEvent that triggered the callback or is NULL
286                 if this callback was not triggered due to an XEvent
287
288   Translations
289       XmCascadeButton includes translations from XmPrimitive.   XmCascadeBut‐
290       ton includes the menu traversal translations from XmLabel.
291
292       Note  that altering translations in #override or #augment mode is unde‐
293       fined.
294
295       The following list describes the translations for a CascadeButton in  a
296       MenuBar.   The  following  key  names  are listed in the X standard key
297       event translation table syntax.  This format is the one used  by  Motif
298       to  specify  the  widget actions corresponding to a given key.  A brief
299       overview of the format is provided  under  VirtualBindings(3).   For  a
300       complete  description  of  the  format,  please  refer to the X Toolkit
301       Instrinsics Documentation.
302
303       <EnterWindow>Normal:
304                 MenuBarEnter()
305
306       <LeaveWindow>Normal:
307                 MenuBarLeave()
308
309       <Btn2Down>:
310                 ProcessDrag()
311
312       c<BtnDown>:
313                 MenuButtonTakeFocusUp()
314
315       c<BtnUp>: MenuButtonTakeFocusUp()
316
317       ∼c<BtnDown>:
318                 MenuBarSelect()
319
320       ∼c<BtnUp>:
321                 DoSelect()
322
323       :<Key><osfSelect>:
324                 KeySelect()
325
326       :<Key><osfActivate>:
327                 KeySelect()
328
329       :<Key><osfHelp>:
330                 Help()
331
332       :<Key><osfCancel>:
333                 CleanupMenuBar()
334
335       ∼s<Key>Return:
336                 KeySelect()
337
338       ∼s<Key>space:
339                 KeySelect()
340
341       The following list describes the translations for a CascadeButton in  a
342       PullDown  or  Popup MenuPane.  In a Popup menu system, <Btn3> also per‐
343       forms the <Btn1> actions.
344
345       <EnterWindow>:
346                 DelayedArm()
347
348       <LeaveWindow>:
349                 CheckDisarm()
350
351       <Btn2Down>:
352                 ProcessDrag()
353
354       c<BtnDown>:
355                 MenuButtonTakeFocus()
356
357       c<BtnUp>: MenuButtonTakeFocusUp()
358
359       ∼c<BtnDown>:
360                 StartDrag()
361
362       ∼c<BtnUp>:
363                 DoSelect()
364
365       :<Key><osfSelect>:
366                 KeySelect()
367
368       :<Key><osfActivate>:
369                 KeySelect()
370
371       :<Key><osfHelp>:
372                 Help()
373
374       :<Key><osfCancel>:
375                 CleanupMenuBar()
376
377       ∼s<Key>Return:
378                 KeySelect()
379
380       ∼s<Key>space:
381                 KeySelect()
382
383   Action Routines
384       The XmCascadeButton action routines are
385
386       CleanupMenuBar():
387                 In a MenuBar, disarms the CascadeButton  and  the  menu  and,
388                 when   the  shell's  keyboard  focus  policy  is  XmEXPLICIT,
389                 restores keyboard focus to the  widget  that  had  the  focus
390                 before the menu was entered.
391
392                 In  a  toplevel Pulldown MenuPane from a MenuBar, unposts the
393                 menu, disarms the MenuBar CascadeButton and the MenuBar, and,
394                 when   the  shell's  keyboard  focus  policy  is  XmEXPLICIT,
395                 restores keyboard focus to the  widget  that  had  the  focus
396                 before the MenuBar was entered.  In other Pulldown MenuPanes,
397                 unposts the menu.
398
399                 In a Popup MenuPane, unposts the menu and, when  the  shell's
400                 keyboard  focus policy is XmEXPLICIT, restores keyboard focus
401                 to the widget from which the menu was posted.
402
403       DoSelect():
404                 Calls the callbacks in XmNcascadingCallback, posts  the  sub‐
405                 menu  attached to the CascadeButton and enables keyboard tra‐
406                 versal within the menu.  If the CascadeButton does not have a
407                 submenu attached, this action calls the callbacks in XmNacti‐
408                 vateCallback, activates the CascadeButton,  and  unposts  all
409                 posted menus in the cascade.
410
411       Help():   Unposts all menus in the menu hierarchy and, when the shell's
412                 keyboard focus policy is XmEXPLICIT, restores keyboard  focus
413                 to  the  widget that had the focus before the menu system was
414                 entered.  Calls the  callbacks  for  XmNhelpCallback  if  any
415                 exist.   If there are no help callbacks for this widget, this
416                 action calls the help callbacks for the nearest ancestor that
417                 has them.
418
419       KeySelect():
420                 Calls  the  callbacks  in XmNcascadingCallback, and posts the
421                 submenu attached to the CascadeButton if  keyboard  traversal
422                 is enabled in the menu.  If the CascadeButton does not have a
423                 submenu attached, this action calls the callbacks in XmNacti‐
424                 vateCallback,  activates  the  CascadeButton, and unposts all
425                 posted menus in the cascade.
426
427       MenuBarSelect():
428                 Unposts any menus posted by the parent menu.  Arms  both  the
429                 CascadeButton  and the MenuBar, posts the associated submenu,
430                 and enables mouse traversal.  If the menu is already  active,
431                 this  event  disables  keyboard  traversal  for  the menu and
432                 returns the menu to mouse traversal mode.
433
434       StartDrag():
435                 Arms the CascadeButton, posts  the  associated  submenu,  and
436                 enables mouse traversal.  If the menu is already active, this
437                 event disables keyboard traversal for the  menu  and  returns
438                 the menu to mouse traversal mode.
439
440   Additional Behavior
441       Posting  a submenu calls the XmNcascadingCallback callbacks.  This wid‐
442       get has the following additional behavior:
443
444       <EnterWindow>:
445                 If keyboard traversal is enabled, does  nothing.   Otherwise,
446                 in  a MenuBar that is armed, unposts any MenuPanes associated
447                 with another MenuBar entry, arms the CascadeButton, and posts
448                 the associated submenu.  In other menus, arms the CascadeBut‐
449                 ton and posts the associated submenu after the  delay  speci‐
450                 fied by XmNmappingDelay.
451
452       <LeaveWindow>:
453                 If keyboard traversal is enabled does nothing.  Otherwise, in
454                 a MenuBar that is armed, disarms  the  CascadeButton  if  the
455                 submenu  associated  with  the CascadeButton is not currently
456                 posted or if there is no submenu associated with the Cascade‐
457                 Button.
458
459                 In  other  menus, if the pointer moves anywhere except into a
460                 submenu associated with the CascadeButton, the  CascadeButton
461                 is disarmed and its submenu is unposted.
462
463   Virtual Bindings
464       The  bindings  for  virtual  keys are vendor specific.  For information
465       about bindings for virtual buttons and keys, see VirtualBindings(3).
466
468       Core(3), XmCascadeButtonHighlight(3), XmCreateCascadeButton(3),  XmCre‐
469       ateMenuBar(3),   XmCreatePulldownMenu(3),  XmCreatePopupMenu(3),  XmLa‐
470       bel(3),  XmPrimitive(3),  XmRowColumn(3),   XmVaCreateCascadeButton(3),
471       XmVaCreateManagedCascadeButton(3).
472
473
474
475                                                 XmCascadeButton(library call)
Impressum