GetItemMark
GetItemMark Query the current mark character of a menu item
#include <Menus.h> Menu Manager
void GetItemMark(theMenu, whichItem, markChar );
MenuHandle theMenu ; handle of menu containing item of inquiry
short whichItem ; ID of an item in theMenu
short *markChar ; receives current mark char; 0=not marked
GetItemMark copies the mark character of a selected menu item into the
caller's variable. A mark character is any character, such as a check mark,
that is displayed to the left of the menu item's text.
On 256K ROMs, this returns the menu ID of a submenu (i.e., a menu whose
command character is 0x1B).
theMenu is a handle leading to a variable-length MenuInfo structure. It
identifies the menu containing the item whose mark you wish to
obtain.
whichItem identifies which item in menu theMenu to query. Items are
numbered sequentially with the topmost item having an ID of 1.
markChar is the address of a 2-byte buffer. Upon return, the low byte will
contain the ASCII value of the current mark character. If the value
equates with the defined constant noMark (0), no mark is currently
present.
If whichItem is a submenu (i.e., its command character is 0x1B),
this returns the menu ID of the that submenu.
The designation as a short* is not a typo. Pascal CHAR data types
are actually 16-bit words. Using a 1-byte char variable will cause
the Menu Manager to overwrite the next higher byte in memory.
Returns: none

Notes: This function can be used as an aid in deciding which way to toggle the mark
after the user selects an item. For instance:
short curMark;
GetItemMark( theMenu, theItem, &curMark );
if ( curMark == noMark)
CheckItem( theMenu, theItem, TRUE );
else
CheckItem( theMenu, theItem, FALSE );
Most applications keep track of the current state of each item separately;
whether it is enabled or disabled, marked or unmarked, this function is used
rarely.