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()