home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Carousel
/
CAROUSEL.cdr
/
mactosh
/
lang
/
mod4.hqx
/
M2-4.pit
/
EVENTMGR.DEF
< prev
next >
Wrap
Text File
|
1985-04-25
|
4KB
|
78 lines
(*=======================================================================*)
DEFINITION MODULE EventMgr; (* Franz Kronseder 08.01.85 *)
(* MacIntosh ToolBox Event Manager Operations *)
FROM QuickDraw IMPORT Point;
FROM SYSTEM IMPORT ADDRESS;
EXPORT QUALIFIED
everyEvent,nullEvent,mouseDown,mouseUp,keyDown,keyUp,autoKey,updateEvt,diskEvt,
activateEvt,abortEvt,reserveEvt,driverEvt,app1Evt,app2Evt,app3Evt,app4Evt,
nullMask,mDownMask,mUpMask,keyDownMask,keyUpMask,autoKeyMask,updateMask,diskMask,
activMask,abortMask,reserveMask,driverMask,app1Mask,app2Mask,app3Mask,app4Mask,
optionKey,alphaLock,ShiftKey,CmdKey,BtnState,activeFlag,changeFlag,
OsErr,LongInt,EventRecord,KeyMap,
EventAvail,GetNextEvent,StillDown,WaitMouseUp,GetMouse,TickCount,Button,GetKeys,
PostEvent,FlushEvents,SetEventMask,OSEventAvail,GetOSEvent;
CONST
everyEvent = -1;
nullEvent = 0; mouseDown = 1; mouseUp = 2; keyDown = 3;
keyUp = 4; autoKey = 5; updateEvt = 6; diskEvt = 7;
activateEvt = 8; abortEvt = 9; reserveEvt = 10; driverEvt = 11;
app1Evt = 12; app2Evt = 13; app3Evt = 14; app4Evt = 15;
nullMask = 1; mDownMask = 2; mUpMask = 4; keyDownMask = 8;
keyUpMask = 16; autoKeyMask = 32; updateMask = 64; diskMask = 128;
activMask = 256; abortMask = 512; reserveMask = 1024; driverMask = 2048;
app1Mask = 4096; app2Mask = 8192; app3Mask = 16384; app4Mask = 8000H (* -32768 *);
(* modifiers *)
optionKey= 2048; (* Bit 3 of high byte *)
alphaLock= 1024; (* Bit 2 *)
ShiftKey= 512; (* Bit 1 *)
CmdKey= 256; (* Bit 0 *)
BtnState= 128; (* Bit 7 of low byte is mouse button state *)
activeFlag = 1; (* bit 0 of modifiers for activate event *)
changeFlag = 2; (* bit 1 of modifiers for activate event *)
TYPE OsErr = INTEGER; LongInt = ADDRESS;
EventRecord = RECORD
what: INTEGER;
CASE BOOLEAN OF TRUE: message: ADDRESS;
| FALSE: msgchar: ARRAY [0..3] OF CHAR; END;
when: LongInt;
where: Point;
CASE BOOLEAN OF TRUE: modifiers: BITSET;
| FALSE: modifwrd: CARDINAL; END; (* modifier word *)
END;
KeyMap = ARRAY[0..3] OF LongInt;(* PACKED ARRAY [1..128] OF BOOLEAN *)
PROCEDURE EventAvail(mask:INTEGER; VAR theEvent: EventRecord): BOOLEAN;
(* INLINE $A971;*)
PROCEDURE GetNextEvent(mask:INTEGER; VAR theEvent: EventRecord): BOOLEAN;
(* INLINE $A970;*)
PROCEDURE StillDown ():BOOLEAN; (* INLINE $A973;*)
PROCEDURE WaitMouseUp ():BOOLEAN; (* INLINE $A977;*)
PROCEDURE GetMouse (VAR pt: Point); (* INLINE $A972;*)
PROCEDURE TickCount ():LongInt; (* INLINE $A975;*)
PROCEDURE Button (): BOOLEAN; (*INLINE $A974;*)
PROCEDURE GetKeys(VAR k: KeyMap); (*INLINE $A976;*)
PROCEDURE PostEvent (eventNum: INTEGER; eventMsg: LongInt): OsErr;
PROCEDURE FlushEvents (whichMask,stopMask: INTEGER);
PROCEDURE SetEventMask (theMask: INTEGER);
PROCEDURE OSEventAvail (mask: INTEGER; VAR theEvent: EventRecord): BOOLEAN;
PROCEDURE GetOSEvent (mask: INTEGER; VAR theEvent: EventRecord): BOOLEAN;
END EventMgr.
(*=======================================================================*)