XmCreatePulldownMenu(3X)
Prev | Reference Pages | Next

## Name

XmCreatePulldownMenu(3X) — XmCreatePulldownMenu--A RowColumn widget convenience creation function XmCreatePulldownMenucreation functions

## Synopsis

#include <Xm/RowColumn.h>
Widget XmCreatePulldownMenu (`parent, name, arglist, argcount`)
Widget `parent`;
String `name`;
ArgList `arglist`;
Cardinal `argcount`;

## DESCRIPTION

XmCreatePulldownMenu creates an instance of a RowColumn widget of type XmMENU_PULLDOWN and returns the associated widget ID. When using this function to create the Pulldown MenuPane, a MenuShell widget is automatically created as the parent of the MenuPane. If the widget specified by the `parent` parameter is a Popup or a Pulldown MenuPane, the MenuShell widget is created as a child of the `parent`'s MenuShell; otherwise, it is created as a child of the specified `parent` widget.

XmCreatePulldownMenu is provided as a convenience function for creating RowColumn widgets configured to operate as Pulldown MenuPanes and is not implemented as a separate widget class.

A Pulldown MenuPane displays a 3-D shadow, unless the feature is disabled by the application. The shadow appears around the edge of the MenuPane.

A Pulldown MenuPane is used when creating submenus that are to be attached to a CascadeButton or a CascadeButtonGadget. This is the case for all MenuPanes that are part of a PulldownMenu system (a MenuBar), the MenuPane associated with an OptionMenu, and any MenuPanes that cascade from a Popup MenuPane. Pulldown MenuPanes that are to be associated with an OptionMenu must be created before the OptionMenu is created.

The Pulldown MenuPane must be attached to a CascadeButton or CascadeButtonGadget that resides in a MenuBar, a Popup MenuPane, a Pulldown MenuPane, or an OptionMenu. This is done by using the button resource XmNsubMenuId.

A MenuShell widget is required between the Pulldown MenuPane and its parent. If the application uses this convenience function for creating a Pulldown MenuPane, the MenuShell is automatically created as the real parent of the MenuPane; otherwise, it is the application's responsibility to create the MenuShell widget.

To function correctly when incorporated into a menu, the Pulldown MenuPane's hierarchy must be considered; this hierarchy depends on the type of menu system that is being built as follows:

- If the Pulldown MenuPane is to be pulled down from a MenuBar, its `parent` must be the MenuBar.

- If the Pulldown MenuPane is to be pulled down from a Popup or another Pulldown MenuPane, its `parent` must be that Popup or Pulldown MenuPane.

- If the Pulldown MenuPane is to be pulled down from an OptionMenu, its `parent` must be the same as the OptionMenu parent.

- Specifies the parent widget ID

- Specifies the name of the created widget

- Specifies the argument list

- Specifies the number of attribute/value pairs in the argument list (`arglist`)

PullDown MenuPanes support tear-off capabilities for tear-off menus through XmRowColumn resources. For a complete definition of RowColumn and its associated resources, see XmRowColumn(3X).

## RETURN VALUE

Returns the RowColumn widget ID.

## RELATED INFORMATION

XmCascadeButton(3X), XmCascadeButtonGadget(3X), XmCreateOptionMenu(3X), XmCreatePopupMenu(3X), XmCreateSimplePulldownMenu(3X), XmMenuShell(3X), XmRowColumn(3X), and XmVaCreateSimplePulldownMenu(3X).

Prev | Table of Contents | Next
XmCreatePromptDialog(3X) |  | XmCreatePushButton(3X)