1 REM Sapphire menu macro library -- © 1994 Straylight
5 REM --- Support functions ---
9 IF b%=0 THEN ERROR 1,"Bit mask 0 passed to menuDefs"
21 IF (!(menu__l+O%-P%) AND &FFFF) >= (f% AND &FFFF) AND (f% AND &FFFF)<>0 THEN ERROR 0,"Flags built in wrong order in menuDefs"
22 !(menu__l+O%-P%)=!(menu__l+O%-P%) OR f%
40 DEF FNmenu__2(f%,a%,b%)
48 DEF FNmenu__ob(f%,o%,b%)
55 REM --- Creating menu headers ---
68 FNmenu__s(mFlag_indirect)
76 FNmenu__s(mFlag_tearoff)
85 FNmenu__s(mFlag_indirect)
86 FNmenu__s(mFlag_tearoff)
91 REM --- Flags for menus and items ---
93 DEF FNmenu_r12Data=FNmenu__s(mFlag_R12)
95 DEF FNmenu_makeMe(p%)=FNmenu__1(mFlag_makeMe,p%)
97 DEF FNmenu_mHeight(h%)=FNmenu__1(mFlag_maxHeight,h%)
99 REM --- Menu items ---
109 DEF FNmenu_itemInd(t%)
112 FNmenu__s(mFlag_indirect)
117 DEF FNmenu_shade(o%,b%)=FNmenu__ob(mFlag_shade,o%,b%)
119 DEF FNmenu_iShade(o%,b%)=FNmenu__ob(mFlag_invShade,o%,b%)
121 DEF FNmenu_switch(o%,b%)=FNmenu__ob(mFlag_switch,o%,b%)
123 DEF FNmenu_radio(g%,s%)=FNmenu__2(mFlag_radio,g%,s%)
125 DEF FNmenu_sprite(s%,a%)
127 FNmenu__s(mFlag_sprite)
130 IF a%<>0 THEN [opt 4:dcd a%:]
133 DEF FNmenu_halfSize=FNmenu__s(mFlag_halfSize)
135 DEF FNmenu_subWarn=FNmenu__s(mFlag_subWarn)
137 DEF FNmenu_subMenu(s%,h%)=FNmenu__2(mFlag_subMenu,s%,h%)
139 DEF FNmenu_noWarn=FNmenu__s(mFlag_noWarn)
141 DEF FNmenu_ruleOff=FNmenu__s(mFlag_ruleOff)