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 a TagItem list. TAGS GTMN_TextAttr (struct TextAttr *) - Text Attribute to use for menu-items and sub-items. If not supplied, the screen's font will be used. This font must be openable via OpenFont() when this function is called. 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. RESULT success - TRUE if successful, false otherwise (signifies that the TextAttr wasn't openable). EXAMPLE NOTES BUGS If a menu ends up being wider than the whole screen, it will run off the right-hand side. SEE ALSO CreateMenusA(), GetVisualInfoA()