home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fish 'n' More 2
/
fishmore-publicdomainlibraryvol.ii1991xetec.iso
/
fish
/
enhancements
/
general
/
keymenu
/
keymenu-handler.i
< prev
next >
Wrap
Text File
|
1991-03-10
|
4KB
|
81 lines
remove_event equ 1
pass_event_on equ 0
req_setpointer equ -1
req_clearpointer equ -2
req_stopped equ -3
blank_pointer_size equ 16
AbsExecBase equ 4
extern_lib Permit
bitdef FLAG,AKey_down,0
bitdef FLAG,MActive,1
bitdef FLAG,Clear_rmbtrap,2
bitdef FLAG,Stop_requested,3
bitdef FLAG,Stopped,4
bitdef FLAG,Events_inserted,5
bitdef FLAG,Repeat_skipped,6
bitdef FLAG,Blank_pointer,7
bitnum MENUSTATE,MENUSTATE
bitnum RMBTRAP,RMBTRAP
bitnum IECODE_UP_PREFIX,IECODE_UP_PREFIX
bitnum V_HIRES,V_HIRES
bitnum V_LACE,V_LACE
bitnum IEQUALIFIER_REPEAT,IEQUALIFIER_REPEAT
portname macro * name
%1 dc.b 'KeyMenu V1.03',0
endm
structure Global_data,0
struct gb_Port,MP_SIZE ; msg port
aptr gb_Segment ; handler segment
struct gb_handler,IS_SIZE ; area for input handler
aptr gb_IBase ; Intuition Library base
aptr gb_handtask ; handler task
aptr gb_task ; keymenu task
ubyte gb_PtrHeight ; Save pointer info area
ubyte gb_PtrWidth
ubyte gb_XOffset
ubyte gb_YOffset
aptr gb_Pointer
aptr gb_blank_ptr ; data for blanking pointer
aptr gb_window ; current window
aptr gb_menu ; First Menu
aptr gb_currentmenu ; current Menu
aptr gb_currentitem ; current MenuItem
aptr gb_currentsubitem ; current SubItem
struct gb_ppos1,ie_SIZEOF ; pointerpos event area
struct gb_ppos2,ie_SIZEOF ; pointerpos event area
struct gb_rawm,ie_SIZEOF ; rawmouse event area
word gb_old_MouseX ; mouse coordinates before
; menu was activated
word gb_old_MouseY
ubyte gb_flags ; various status flags
; - AKey_down
; - MActive
; - Clear_rmbtrap
; - stop_requested
; - events inserted
; - repeat skipped
; - Blank pointer
ubyte gb_AKey ; Menu activation key
ubyte gb_DKey ; Menu deactivation key
ubyte gb_SKey ; Menu select key
ubyte gb_UpKey ; Up key
ubyte gb_DownKey ; Down key
ubyte gb_LeftKey ; Left key
ubyte gb_RightKey ; Right key
ubyte gb_Qual ; qualifier(s)
ubyte gb_tasksignum ; keymenu signal number
label gb_size
structure Item_def,0
aptr im_NextItem
word im_LeftEdge
word im_TopEdge
word im_Width
word im_Height
label im_size