# AUI\_MENU
> [HTML Version](aui_menu.htm)
**xcall AUI, AUI\_MENU, opcode, menuid, mnutxt, mstate, mtype, cmd, func, mstatus \{,dlgid, itemid\}**
**xcall AUI, AUI\_MENU, opcode, mdfspec, mstate, mstatus \{,dlgid\}**
The AUI\_MENU class deals with the A-Shell menu bar, offering methods for adding and deleting menu items. The first form of the syntax above ([AUI\_Menu Traditional Method](aui_menutraditional.htm.md)) is the original method, which is still the most flexible, but most difficult to use. The second form ([AUI\_Menu Simplified Method](aui_menusimplified.htm.md)) vastly reduces the amount of code you need to write.
Note:
• When the GUI trace is active, AUI\_MENU operations are traced.
• This operation can only take place on a GUI-enabled client, either ATE or some form of A-Shell/Windows.
• A-Shell permits an unlimited number of menu items; the menu table expands automatically as need.
**Examples**
Several sample programs illustrating menu operations may be found in the [EXLIB:\[908,35\]](https://bitbucket.org/microsabio/exlib/src/master/908035/).
**Subtopics**
- [AUI\_Menu Traditional Method](aui_menutraditional.htm.md)
- [AUI\_Menu Simplified Method](aui_menusimplified.htm.md)
- [AUI\_MENU Techniques and Tips](aui_menutechniques.htm.md)