|##########| |#MAGIC #|CLABLMDD |#PROJECT #|"IMPORTALL" |#PATHS #|"StdProject" |#FLAGS #|xx-x-x--x---x-x----------------- |#USERSW #|-------------------------------- |#USERMASK#|-------------------------------- |#SWITCHES#|x-xx-x---------- |##########| DEFINITION MODULE Clipboard; (* $A- *) FROM T_Exec IMPORT nonstdVAL,NoFreeSignal,OpenError, Node,Message,IOStdReq,DevicePtr,IOFlagSet, IOCommand,IOReturn,UnitPtr; FROM Resources IMPORT ContextPtr; CONST primaryClip = 0; post = IOCommand( nonstdVAL + 0 ); currentReadId = IOCommand( nonstdVAL + 1 ); currentWrite = IOCommand( nonstdVAL + 2 ); changeHook = IOCommand( nonstdVAL + 3 ); obsoleteId = IOReturn( 1 ); TYPE ClipboardUnitPartialPtr = POINTER TO ClipboardUnitPartial; ClipboardUnitPartial = RECORD OF Node unitNum : LONGCARD END; IOClipboardPtr = POINTER TO IOClipboard; IOClipboard = RECORD OF IOStdReq clipID : LONGINT; END; SatisfyMsgPtr = POINTER TO SatisfyMsg; SatisfyMsg = RECORD OF Message unit : CARDINAL; clipID : LONGINT; END; ClipHookMsgPtr = POINTER TO ClipHookMsg; ClipHookMsg = RECORD type : LONGCARD; changeCmd : LONGINT; clipID : LONGCARD; END; PROCEDURE OpenClipboard( unit : CARDINAL := primaryClip; context : ContextPtr:=NIL): IOClipboardPtr; PROCEDURE CloseClipboard( VAR request : IOClipboardPtr ); GROUP All = post, currentReadId, currentWrite, obsoleteId, ClipboardUnitPartial, ClipboardUnitPartialPtr, IOClipboard, IOClipboardPtr, primaryClip, SatisfyMsg, SatisfyMsgPtr, OpenClipboard, CloseClipboard, T_Exec.ExecIOGrp; END Clipboard.