Provided by: libmotif-dev_2.3.8-3_amd64 bug

NAME

       XmMenuShell — The MenuShell widget class "XmMenuShell" "widget class" "MenuShell"

SYNOPSIS

       #include <Xm/MenuShell.h>

DESCRIPTION

       The  MenuShell  widget  is a custom OverrideShell widget. An OverrideShell widget bypasses
       mwm when displaying itself. It is designed specifically to contain Popup or Pulldown  menu
       panes.

       Most  application  writers  never  encounter  this  widget  if  they  use  the menu-system
       convenience functions, XmCreatePopupMenu or XmCreatePulldown Menu, to create  a  Popup  or
       Pulldown  menu pane.  The convenience functions automatically create a MenuShell widget as
       the parent of the menu pane. However, if the  convenience  functions  are  not  used,  the
       application  programmer  must create the required MenuShell. In this case, it is important
       to note that the parent of the MenuShell depends on the type of menu system being built.

          •  If the MenuShell is for the top-level Popup menu pane, the MenuShell's  parent  must
             be the widget from which the Popup menu pane is popped up.

          •  If  the  MenuShell  is  for  a menu pane that is pulled down from a Popup or another
             Pulldown menu pane, the MenuShell's parent must be the Popup or Pulldown menu pane.

          •  If the MenuShell is for a menu  pane  that  is  pulled  down  from  a  MenuBar,  the
             MenuShell's parent must be the MenuBar.

          •  If  the  MenuShell  is  for  a  Pulldown menu pane in an OptionMenu, the MenuShell's
             parent must be the OptionMenu's parent.

       Setting XmNheight, XmNwidth, or XmNborderWidth for either a MenuShell or  its  child  sets
       that  resource  to the same value in both the parent and the child.  An application should
       always specify these resources for the child, not the parent.

       For  the  managed  child  of  a  MenuShell,  regardless  of  the  value  of  the   shell's
       XmNallowShellResize,  setting  XmNx  or XmNy sets the corresponding resource of the parent
       but does not change the child's position relative to  the  parent.   XtGetValues  for  the
       child's  XmNx or XmNy yields the value of the corresponding resource in the parent.  The x
       and y-coordinates of the child's upper left outside corner relative to the parent's  upper
       left inside corner are both 0 (zero) minus the value of XmNborderWidth.

       MenuShell uses the XmQTmenuSystem trait and holds the XmQTspecifyRenderTable trait.

   Classes
       MenuShell  inherits  behavior,  resources,  and  traits  from  Core, Composite, Shell, and
       OverrideShell.

       The class pointer is xmMenuShellWidgetClass.

       The class name is XmMenuShell.

   New Resources
       MenuShell overrides the  XmNallowShellResize  resource  in  Shell.   The  following  table
       defines  a  set of widget resources used by the programmer to specify data. The programmer
       can also set the resource values for the inherited classes  to  set  attributes  for  this
       widget.  To  reference a resource by name or by class in a .Xdefaults file, remove the XmN
       or XmC prefix and use the remaining letters. To specify one of the defined  values  for  a
       resource  in  a  .Xdefaults  file,  remove the Xm prefix and use the remaining letters (in
       either lowercase or uppercase, but include any underscores between words).  The  codes  in
       the  access  column indicate if the given resource can be set at creation time (C), set by
       using XtSetValues (S), retrieved by using XtGetValues (G), or is not applicable (N/A).

       ┌───────────────────────────────────────────────────────────────────────────────────────┐
--

RELATED

       Composite(3),      Core(3),      OverrideShell(3),     Shell(3),     XmCreateMenuShell(3),
       XmCreatePopupMenu(3), XmCreatePulldownMenu(3), and XmRowColumn(3).

                                                                                   XmMenuShell(3)