<<>> <> <> <> <> <> <> <<>> <> <<>> DIRECTORY CursorTypes, Imager, Rope, UserInput, ViewersWorldRefType; ViewersWorld: CEDAR DEFINITIONS = BEGIN CursorArray: TYPE = CursorTypes.CursorArray; Cursor32ArrayRef: TYPE ~ CursorTypes.Cursor32ArrayRef; Ref: TYPE = ViewersWorldRefType.Ref; <<>> <> GetInputHandle: PROC [viewersWorld: Ref] RETURNS [handle: UserInput.Handle]; RestartInput: PROC [viewersWorld: Ref]; <> <> <<>> SetCursorPattern: PROC [viewersWorld: Ref, deltaX, deltaY: INTEGER, cursorPattern: CursorArray, patternName: ATOM ¬ $Unnamed, cursor: REF ¬ NIL]; <<"cursor" will be a description of which cursor's pattern to change. If cursor = NIL, the default mouse cursor is intended. [deltaX, deltaY] is the vector displacement of the lower left hand corner to the pattern from the true mouse position. Usually, these numbers will be zero or negative (see global.info in CursorsImpl.SetCursor for examples). patternName is a hint to the class implementor. It should either be $Unnamed, or it should be a distinct name for each distinct pattern -- this allows the server to tell that it has seen this pattern before without actually looking at the bits.>> GetCursorPattern: PROC [viewersWorld: Ref, cursor: REF ¬ NIL] RETURNS [deltaX, deltaY: INTEGER, cursorPattern: CursorArray, patternName: ATOM]; <<"cursor" will be a description of which cursor's pattern to get. If cursor = NIL, the default mouse cursor is intended. [deltaX, deltaY] is the vector displacement of the lower left hand corner to the pattern from the true mouse position. Usually, these numbers will be zero or negative (see global.info in CursorsImpl.SetCursor for examples). patternName should be the same name provided to the SetCursorPatternProc or $Unnamed if the pattern did not originate from a ViewersWorld (or if the name has been forgotten).>> SetBigCursorPattern: PROC [viewersWorld: Ref, deltaX, deltaY: INTEGER, cursorPattern: Cursor32ArrayRef, patternName: ATOM ¬ $Unnamed, cursor: REF ¬ NIL]; <> GetBigCursorPattern: PROC [viewersWorld: Ref, cursor: REF ¬ NIL] RETURNS [deltaX, deltaY: INTEGER, cursorPattern: Cursor32ArrayRef, patternName: ATOM]; <> IsBigCursorPattern: PROC [viewersWorld: Ref, cursor: REF ¬ NIL] RETURNS [BOOL]; <> BigCursorsSupported: PROC [viewersWorld: Ref] RETURNS [BOOL]; <> SetCursorColor: PROC [viewersWorld: Ref, color: Imager.Color, cursor: REF ¬ NIL]; <> GetCursorColor: PROC [viewersWorld: Ref, cursor: REF ¬ NIL] RETURNS [color: Imager.Color]; <<"cursor" describes which cursor's color to return. If cursor = NIL, the default mouse cursor is intended.>> SetMousePosition: PROC [viewersWorld: Ref, x, y: INTEGER, display: REF ¬ NIL, device: REF ¬ NIL]; <> GetMousePosition: PROC [viewersWorld: Ref, device: REF ¬ NIL] RETURNS [x, y: INTEGER, display: REF ¬ NIL]; <> <<>> SetCutBuffer: PROC [viewersWorld: Ref, buffer: ATOM, data: Rope.ROPE]; GetCutBuffer: PROC [viewersWorld: Ref, buffer: ATOM] RETURNS [data: Rope.ROPE]; BlinkViewersWorld: PROC [viewersWorld: Ref, display: REF ¬ NIL, frequency: CARDINAL ¬ 750, duration: CARDINAL ¬ 500]; <> SetSize: PROC [viewersWorld: Ref, width, height: NAT, display: REF ¬ NIL]; <> <<>> GetSize: PROC [viewersWorld: Ref, display: REF ¬ NIL] RETURNS [width, height: NAT]; <> GetDeviceSize: PROC [viewersWorld: Ref, display: REF ¬ NIL] RETURNS [w, h: NAT]; <> <> <<>> GetWorldProp: PROC [viewersWorld: Ref, prop: REF] RETURNS [val: REF]; PutWorldProp: PROC [viewersWorld: Ref, prop: REF, val: REF]; RemWorldProp: PROC [viewersWorld: Ref, prop: REF]; <> RevokeColorMapIndexProc: TYPE = PROC [viewersWorld: Ref, index: CARDINAL, clientData: REF]; <> <<>> outOfColormapEntries: ERROR; <> <<>> AllocateColorMapIndex: PROC [viewersWorld: Ref, display: REF ¬ NIL, revokeIndex: RevokeColorMapIndexProc, clientData: REF ¬ NIL] RETURNS [index: CARDINAL]; <> <<>> FreeColorMapIndex: PROC [viewersWorld: Ref, index: CARDINAL, display: REF ¬ NIL]; <> <<>> SetColorMapEntry: PROC [viewersWorld: Ref, index: CARDINAL, display: REF ¬ NIL, red, green, blue: INTEGER]; <> <<>> GetColorMapEntry: PROC [viewersWorld: Ref, index: CARDINAL, display: REF ¬ NIL] RETURNS [red, green, blue: INTEGER]; <> END.