Page 191 Table of Contents Index Page 193
Chapters
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
A, B, C, D, E



CHAPTER 22. EXTENDED STREAM INPUT

This class provides an implementation of the CLIM extended input stream protocol based on
CLIM's input kernel. The extended input stream maintains the state of the display's pointing
devices (such as a mouse) in pointer objects associated with the stream. It defines a handle-
event
methods for keystroke and pointer motion and button press events and updates the pointer
object state and queues the resulting events in a per-stream input buffer.

Members of this class are mutable.

22.2.1 The Extended Input Stream Protocol

The following generic functions comprise the extended input stream protocol. All extended input
streams must implement methods for these generic functions.

=> stream-input-buffer stream [Generic Function]
=> (setf stream-input-buffer) buffer stream [Generic Function]
The functions provide access to the stream's input buffer. Normally programs do not need to
manipulate the input buffer directly. It is sometimes useful to cause several streams to share the
same input buffer so that input that comes in on one of them is available to an input call on any
of the streams. The input buffer must be vector with a fill pointer capable of holding general
input gesture objects (such as characters and event objects).

=> stream-pointers stream [Generic Function]
Returns the list of pointer objects corresponding to the pointing devices of the port associated
with stream. This function returns objects that reveal CLIM's internal state; do not modify
those objects.

=> stream-primary-pointer stream [Generic Function]
=> (setf stream-primary-pointer) pointer stream [Generic Function]
Returns (or sets) the pointer object corresponding to the primary pointing device of the console.

Note: CLIM currently supports only a single pointer for any port. Therefore, the length of
the list returned by stream-pointers will always be one, and stream-primary-pointer will
always return an object that is the only element of that list.

=> stream-pointer-position stream &key pointer [Generic Function]
Returns the current position of the pointing device pointer for the extended input stream stream
as two values, the x and y positions in the stream's drawing surface coordinate system. If pointer
is not supplied, it defaults to the stream-primary-pointer of the stream.

=> (setf* stream-pointer-position) x y stream &key pointer [Generic Function]
Sets the position of the pointing device for the extended input stream stream to x and y, which
are integers. pointer is as for stream-pointer-position.


Page 191 Table of Contents Index Page 193
Chapters
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
A, B, C, D, E