Message Args
⇒ Result |
Comments
|
⇒
#-buttons
|
This message should be the first
sent when dealing with the mouse. It returns -1 if no mouse is
avaliable. |
|
Increments the mouse's visibility count. The count
initially is -1, can be incremented or decremented, but can never
become positive (calls to are without effect if the count
is ≥ 0). The pointer is visible only when the count is = 0. |
|
Decrements the mouse's visiblity count. |
⇒
( buttons-down x y)
|
buttons-down
is a list containing any of , and .
The x– and y-positions are thought in
640×200 units, although
they can be redefined to any scaling. They are always in linear
correspondence with the ``Mickeys''. |
x y
|
Moves the pointer to an absolute location. As always,
(0, 0) is the upper left corner. The values are clipped to the
limiting rectangle. |
button
⇒
( buttons-down count x y)
|
There is an additional field compared to : the number of
times the button has been pressed. All other values refer to
the mouse state when the last ``press'' occured. The count is reset
to 0 after this call.
button is a symbol. |
button
⇒
( buttons-down count x y)
|
Just like , except it returns the release count. |
x0 x1
|
Sets the mouse's horizontal
viewport. It will not be able to move out of that area. If it is
outside at the moment of the call, it will be projected to the border. |
y0 y1
|
Sets the mouse's vertical viewport. |
x0 x1 y0 y1
|
Sets the mouse's viewport. |
shape
|
Sets the graphics pointer. shape is a list:
( x-hot-spot y-hot-spot and-mask xor-mask), where the masks
are lists of 16 integers. This function does not affect the text-mode
pointer. |
name
⇒
cursor
|
Returns a predefined pointer for .
Two sources were used to grab bitmapped pointers: the X Windows
shared library (in openwin/share/lib/include/bitmaps), and
an MSDOS package called ``Precise Point''. Both sources were
used without permission.
name is a symbol, and can have values
, , , , ,
(X Windows) and
, , , , , ,
, , , , , ,
(Precise Point). |
and xor
|
Sets the text-mode pointer to
software, i.e. to modification of characters on the screen.
and and xor are pairs: ( character . attribute).
As a simple example,
(mouse 'TEXT-TYPE 'SOFTWARE
(cons (integer->char \#xff) \#xff)
(cons (integer->char 0) \#x80))}
would make the character under the pointer blink. |
start end
|
Sets the text-mode pointer to
hardware, i.e. uses the cursor generator of the graphics adapter.
start and end are the start– and end-rows of the cursor,
usually in range 0–8 or 0–16. Note that the cursor then serves two
uses; this mode should be useful especially in an editor, if the
mouse moves are interpreted as cursor positioning. |
⇒
( x y)
|
Returns the mouse's movement in Mickeys
since the previous call to this function. A Mickey is
the mouse's fundamental unit,
1/200inch. |
handler
⇒
old-handler
|
Installs an event handler.
A handler is a list: ( events . procedure), where events is
a list containing any of , , ,
(both left-button messages), , ,
, , , , ,
, and .
When one of these events occurs, procedure will be called.
procedure's arguments are ( triggering-events buttons-down
x y mickeys-x mickeys-y event-time). Note that triggering-events
is a list, because it may contain more than one event.
An important thing to mention is that normally procedure will
not be reinvoked before it returns. Events that occur during procedure's execution are lost. In particular, if procedure
does not return (in case of error, for instance), mouse events
remain disabled. They can be re-enabled with the next command. |
|
Re-enables event handling. With this, re-entrant
mouse-handlers can be written!
In its normal operating mode, mouse stacks up mouse messages
and dispatches them one at a time, sending the next message when the
dispatch of the previous one returned. If this function is called, the
message-dispatching system is spawned; in effect, calling this function
from within an event handler may result in the handler being called
``re-entrantly''. |
|
This message suppresses re-entrancy by cancelling the
effect of a previous . |
|
Microsoft Manual says ``Light-Pen emulation: Enables light
pen emulation by the mouse driver for IBM BASIC. A ``pen down'' condition
is created by simultaneously pressing the left and right mouse buttons.''
I tried darn hard to understand this, without success. |
|
ditto. |
x y
|
Sets the number of Mickeys per 8 pixels for
horizontal and vertical mouse motion. |
x0 x1 y0 y1
|
Defines a rectangle within which
the mouse is invisible. |
speed
|
Sets the speed limit between simple–
and double-speed motion, in Mickeys per second. |
[x y speed]
⇒
( x y speed)
|
Reads or sets
the Mickey ratio and speed threshold. |
rate
|
rate can be , 30, 50, 100
or 200, and governs the tradeoff between graphic resolution and
application performance. It is applicable only to the INPORT
mouse (see ). |
[page]
⇒
page
|
Reads or sets the display page for the
mouse pointer. |
[language]
⇒
language
|
Reads or sets the language for mouse
driver messages. language can be any of , ,
, , , , ,
or . |
⇒
( version type IRQ)
|
Returns information on the mouse driver. version is a floating-point
number. type is a symbol: , , ,
or . IRQ is an integer. |