NAME LayoutMenuItemsA -- position all the menu items. (V36) LayoutMenuItems -- varargs stub for LayoutMenuItemsA(). (V36) SYNOPSIS success = LayoutMenuItemsA(menuitem, vi, tagList) D0 A0 A1 A2 BOOL LayoutMenuItemsA(struct MenuItem *, APTR, struct TagItem *); success = LayoutMenuItems(menuitem, vi, firsttag, ...) BOOL LayoutMenuItemsA(struct MenuItem *, APTR, Tag, ...); FUNCTION Lays out all the menu items and sub-items according to the supplied visual information and tag parameters. You would use this if you used CreateMenusA() to make a single menu-pane (with sub-items, if any), instead of a whole menu strip. This routine attempts to columnize and/or shift the MenuItems in the event that a menu would be too tall or too wide. INPUTS menuitem - pointer to first MenuItem in a linked list of items. vi - pointer returned by GetVisualInfoA(). tagList - pointer to an array of tags providing optional extra parameters, or NULL. TAGS GTMN_Menu (struct Menu *) - Pointer to the Menu structure whose FirstItem is the MenuItem supplied above. If the menu items are such that they need to be columnized or shifted, the Menu structure is needed to perform the complete calculation. It is suggested you always provide this information. (V36) For the following tags, please see the description under LayoutMenusA(). Their behavior is identical when used in LayoutMenuItemsA(). GTMN_TextAttr GTMN_NewLookMenus GTMN_Checkmark GTMN_AmigaKey GTMN_FrontPen RESULT success - TRUE if successful, FALSE otherwise (signifies that the TextAttr wasn't openable). BUGS If a menu ends up being wider than the whole screen, it will run off the right-hand side. SEE ALSO CreateMenusA(), GetVisualInfoA()