13.3 The Text Cursor

13.3.1 The Text Cursor Protocol

Many streams that maintain a text cursor also display some visible indication of it. The object that represents this display is (somewhat confusingly) also called a cursor.

cursor [Protocol Class]

Summary:
The protocol class that corresponds to cursors. If you want to create a new class that behaves like cursor, it should be a subclass of cursor. Subclasses of cursor must obey the cursor protocol. Members of this class are mutable.

cursorp [Function]
Arguments:
object
Summary:
Returns t if object is a cursor; otherwise, it returns nil.

:sheet [Initarg]
Summary:
The :sheet initarg is used to specify the sheet with which the cursor is associated.

standard-text-cursor [Class]
Summary:
The instantiable class that implements a text cursor. Typically, ports will further specialize this class.

cursor-sheet [Generic Function]
Arguments:
cursor
Summary:
Returns the sheet with which the cursor cursor is associated.

cursor-position [Generic Function]
Arguments:
cursor
Summary:
Returns the x and y position of the cursor cursor as two values.

(setf* cursor-position) [Generic Function]
Arguments:
x y cursor
Summary:
Sets the x and y position of the cursor cursor to the specified position. For the details of setf*, see Appendix C.4, "Multiple-Value Setf."

cursor-visibility [Generic Function]
Arguments:
cursor
(setf cursor-visibility) [Generic Function]
Arguments:
visibility cursor
Summary:
Returns (or sets) the visibility of the cursor cursor. The visibility is one of :on (the cursor will be visible at its current position), :off (the cursor is active, but not visible at its current position), or nil (the cursor is to be deactivated).

display-cursor [Generic Function]
Arguments:
cursor state
Summary:
This draws or erases the cursor cursor. If state is :draw, the cursor will be drawn. If the state is :erase, the cursor will be erased.


CLIM 2.0 User's Guide - OCT 1998

Generated with Harlequin WebMaker