► |  | GUI: PLT Graphics Toolkit

1 | Overview
2 | Reference
3 | Configuration
4 | Dynamic Loading
| Bibliography
| Index

► | 2 | Reference

2.1 | Windowing Classes
2.2 | Windowing Functions
2.3 | Drawing Classes
2.4 | Drawing Functions
2.5 | Editor Classes
2.6 | Editor Functions
2.7 | WXME Decoding

▼ | 2.1 | Windowing Classes

2.1.1 | area<%>
2.1.2 | area-container<%>
2.1.3 | area-container-window<%>
2.1.4 | button%
2.1.5 | canvas<%>
2.1.6 | canvas%
2.1.7 | check-box%
2.1.8 | checkable-menu-item%
2.1.9 | choice%
2.1.10 | clipboard-client%
2.1.11 | clipboard<%>
2.1.12 | combo-field%
2.1.13 | control<%>
2.1.14 | control-event%
2.1.15 | cursor%
2.1.16 | dialog%
2.1.17 | event%
2.1.18 | frame%
2.1.19 | gauge%
2.1.20 | group-box-panel%
2.1.21 | grow-box-spacer-pane%
2.1.22 | horizontal-pane%
2.1.23 | horizontal-panel%
2.1.24 | key-event%
2.1.25 | labelled-menu-item<%>
2.1.26 | list-box%
2.1.27 | list-control<%>
2.1.28 | menu%
2.1.29 | menu-bar%
2.1.30 | menu-item<%>
2.1.31 | menu-item%
2.1.32 | menu-item-container<%>
2.1.33 | message%
2.1.34 | mouse-event%
2.1.35 | pane%
2.1.36 | panel%
2.1.37 | popup-menu%
2.1.38 | radio-box%
2.1.39 | selectable-menu-item<%>
2.1.40 | separator-menu-item%
2.1.41 | scroll-event%
2.1.42 | slider%
2.1.43 | subarea<%>
2.1.44 | subwindow<%>
2.1.45 | tab-panel%
2.1.46 | text-field%
2.1.47 | timer%
2.1.48 | top-level-window<%>
2.1.49 | vertical-pane%
2.1.50 | vertical-panel%
2.1.51 | window<%>

On this page:

button-changed?
button-down?
button-up?
dragging?
entering?
get-alt-down
get-caps-down
get-control-down
get-event-type
get-left-down
get-meta-down
get-middle-down
get-right-down
get-shift-down
get-x
get-y
leaving?
moving?
set-alt-down
set-caps-down
set-control-down
set-event-type
set-left-down
set-meta-down
set-middle-down
set-right-down
set-shift-down
set-x
set-y

top← prev up next →

mouse-event% : class?
superclass: event%

A mouse-event% object encapsulates a mouse event. Mouse events are primarily processed by on-subwindow-event in window<%> and on-event in canvas<%>.

See also Mouse and Keyboard Events.

(new mouse-event% |  | [event-type event-type] |
| [ | [left-down left-down] |
|  | [middle-down middle-down] |
|  | [right-down right-down] |
|  | [x x] |
|  | [y y] |
|  | [shift-down shift-down] |
|  | [control-down control-down] |
|  | [meta-down meta-down] |
|  | [alt-down alt-down] |
|  | [time-stamp time-stamp] |
|  | [caps-down caps-down]]) |

→ (is-a?/c mouse-event%)

event-type

:

(one-of/c 'enter 'leave 'left-down 'left-up
'middle-down 'middle-up
'right-down 'right-up 'motion)

left-down : any/c = #f
middle-down : any/c = #f
right-down : any/c = #f
x : (and/c exact? integer?) = 0
y : (and/c exact? integer?) = 0
shift-down : any/c = #f
control-down : any/c = #f
meta-down : any/c = #f
alt-down : any/c = #f
time-stamp : (and/c exact? integer?) = 0
caps-down : any/c = #f

Creates a mouse event for a particular type of event. The event types are:

- 'enter – mouse pointer entered the window

- 'leave – mouse pointer left the window

- 'left-down – left mouse button pressed

- 'left-up – left mouse button released

- 'middle-down – middle mouse button pressed

- 'middle-up – middle mouse button released

- 'right-down – right mouse button pressed (Mac OS X: click with control key pressed)

- 'right-up – right mouse button released (Mac OS X: release with control key pressed)

- 'motion – mouse moved, with or without button(s) pressed

See the corresponding get- and set- methods for information about left-down, middle-down, right-down, x, y, shift-down, control-down, meta-down, alt-down, time-stamp, and caps-down.

(send a-mouse-event button-changed? [button]) → boolean?
button : (one-of/c 'left 'middle 'right 'any) = 'any

Returns #t if this was a mouse button press or release event, #f otherwise. See also button-up? and button-down?.

If button is not 'any, then #t is only returned if it is a release event for a specific button.

(send a-mouse-event button-down? [button]) → boolean?
button : (one-of/c 'left 'middle 'right 'any) = 'any

Returns #t if the event is for a button press, #f otherwise.

If button is not 'any, then #t is only returned if it is a press event for a specific button.

(send a-mouse-event button-up? [button]) → boolean?
button : (one-of/c 'left 'middle 'right 'any) = 'any

Returns #t if the event is for a button release, #f otherwise. (As noted in Mouse and Keyboard Events, button release events are sometimes dropped.)

If button is not 'any, then #t is only returned if it is a release event for a specific button.

(send a-mouse-event dragging?) → boolean?

Returns #t if this was a dragging event (motion while a button is pressed), #f otherwise.

(send a-mouse-event entering?) → boolean?

Returns #t if this event is for the mouse entering a window, #f otherwise.

When the mouse button is up, an enter/leave event notifies a window that it will start/stop receiving mouse events. When the mouse button is down, however, the window receiving the mouse-down event receives all mouse events until the button is released; enter/leave events are not sent to other windows, and are not reliably delivered to the click-handling window (since the window can detect movement out of its region via get-x and get-y). See also Mouse and Keyboard Events.

(send a-mouse-event get-alt-down) → boolean?

Returns #t if the Option (Mac OS X) key was down for the event. When the Alt key is pressed in Windows, it is reported as a Meta press (see get-meta-down).

(send a-mouse-event get-caps-down) → boolean?

Returns #t if the Caps Lock key was on for the event.

(send a-mouse-event get-control-down) → boolean?

Returns #t if the Control key was down for the event.

Under Mac OS X, if a control-key press is combined with a mouse button click, the event is reported as a right-button click and get-control-down for the event reports #f.

(send a-mouse-event get-event-type)

→

(one-of/c 'enter 'leave 'left-down 'left-up
'middle-down 'middle-up
'right-down 'right-up 'motion)

Returns the type of the event; see mouse-event% for information about each event type. See also set-event-type .

(send a-mouse-event get-left-down) → boolean?

Returns #t if the left mouse button was down (but not pressed) during the event.

(send a-mouse-event get-meta-down) → boolean?

Returns #t if the Meta (X), Alt (Windows), or Command (Mac OS X) key was down for the event.

(send a-mouse-event get-middle-down) → boolean?

Returns #t if the middle mouse button was down (but not pressed) for the event. Under Mac OS X, a middle-button click is impossible.

(send a-mouse-event get-right-down) → boolean?

Returns #t if the right mouse button was down (but not pressed) for the event. Under Mac OS X, a control-click combination is treated as a right-button click.

(send a-mouse-event get-shift-down) → boolean?

Returns #t if the Shift key was down for the event.

(send a-mouse-event get-x) → (and/c exact? integer?)

Returns the x-position of the mouse at the time of the event, in the target’s window’s (client-area) coordinate system.

(send a-mouse-event get-y) → (and/c exact? integer?)

Returns the y-position of the mouse at the time of the event in the target’s window’s (client-area) coordinate system.

(send a-mouse-event leaving?) → boolean?

Returns #t if this event is for the mouse leaving a window, #f otherwise.

See entering? for information about enter and leave events while the mouse button is clicked.

(send a-mouse-event moving?) → boolean?

Returns #t if this was a moving event (whether a button is pressed is not), #f otherwise.

(send a-mouse-event set-alt-down down?) → void?
down? : any/c

Sets whether the Option (Mac OS X) key was down for the event. When the Alt key is pressed in Windows, it is reported as a Meta press (see set-meta-down).

(send a-mouse-event set-caps-down down?) → void?
down? : any/c

Sets whether the Caps Lock key was on for the event.

(send a-mouse-event set-control-down down?) → void?
down? : any/c

Sets whether the Control key was down for the event.

Under Mac OS X, if a control-key press is combined with a mouse button click, the event is reported as a right-button click and get-control-down for the event reports #f.

(send a-mouse-event set-event-type event-type) → void?

event-type

:

(one-of/c 'enter 'leave 'left-down 'left-up
'middle-down 'middle-up
'right-down 'right-up 'motion)

Sets the type of the event; see mouse-event% for information about each event type. See also get-event-type .

(send a-mouse-event set-left-down down?) → void?
down? : any/c

Sets whether the left mouse button was down (but not pressed) during the event.

(send a-mouse-event set-meta-down down?) → void?
down? : any/c

Sets whether the Meta (X), Alt (Windows), or Command (Mac OS X) key was down for the event.

(send a-mouse-event set-middle-down down?) → void?
down? : any/c

Sets whether the middle mouse button was down (but not pressed) for the event. Under Mac OS X, a middle-button click is impossible.

(send a-mouse-event set-right-down down?) → void?
down? : any/c

Sets whether the right mouse button was down (but not pressed) for the event. Under Mac OS X, a control-click combination by the user is treated as a right-button click.

(send a-mouse-event set-shift-down down?) → void?
down? : any/c

Sets whether the Shift key was down for the event.

(send a-mouse-event set-x pos) → void?
pos : (and/c exact? integer?)

Sets the x-position of the mouse at the time of the event in the target’s window’s (client-area) coordinate system.

(send a-mouse-event set-y pos) → void?
pos : (and/c exact? integer?)

Sets the y-position of the mouse at the time of the event in the target’s window’s (client-area) coordinate system.
top← prev up next →