[ALLY] Re: event! experiment...
From: allenk:powerup:au at: 20-Jun-2001 19:47
----- Original Message -----
From: "Anton" <[arolls--bigpond--net--au]>
To: <[ally-list--rebol--com]>
Sent: Wednesday, June 20, 2001 2:19 PM
Subject: [ALLY] Re: event! experiment...
> There is also event/8, but it always seems false.
> I haven't seen if it becomes true.
>
> Anton.
>
> > event/1 is type flag
> > event/2 is key flag
> > event/3 is offset pair
> > event/4 is time stamp
> > event/5 is shift flag
> > event/6 is control flag
> > event/7 is face object (this is not in the hack above because of too big
> > face-listing (-; )
>
This will probably loose all the formatting along the way (from the event
refinements table at
http://www.rebolforces.com/archive/view099users.html#Events )
Event Refinements
/type Returns event type. The event types are:
a.. 'down, 'middle-down, 'right-down - mouse down event for the
left, middle or right mouse button (pressing down on the mouse button)
b.. 'up, 'middle-up, 'right-up - mouse up event for the left,
middle, or right mouse button (releasing the mouse button)
c.. 'move - mouse move event (position of the mouse cursor over a
REBOL/View window
d.. 'key - keyboard event (keyboard input)
e.. 'time - time event (unique time index - latest event has the
highest number)
f.. 'resize - resize window event (whenever the window is resized)
g.. 'close - close window event (exiting the REBOL/View window
session)
h.. 'active - window active, occurs when window becomes active again
after being inactive while another application was active
i.. 'inactive - window inactive, occurs when window becomes inactive
as when another application becomes active
/offset Returns the mouse cursor offset relative to the REBOL/View
window. The offset returned has different meaning depending on the event
type:
a.. 'down, 'middle-down, 'right-down - the offset when the mouse
button is pressed.
b.. 'up, 'middle-down, 'right-down - the offset when the mouse
button is released.
c.. 'move - the offset at the moment the mouse is moved. The
frequency at which mouse move events are sent to the event port will vary
per system. When the mouse cursor is outside the REBOL/View window, no move
events are sent to the event port.
d.. 'key - the mouse cursor offset at the moment of keyboard input.
When the mouse cursor is outside the REBOL/View window and a keyboard event
occurs, the offset value will be positive or negative of the current
REBOL/View window size.
e.. 'time - the offset of the mouse at the moment the event is sent.
f.. 'resize - the offset of the mouse as the window is being
resized. Resize events are sent every as the window is being resized.
/key Returns the ASCII character relative to the event. With 'key
events, this returns the character pressed that triggered the event. The
only exceptions are the arrow keys Up, Down, Left, Right, and the End and
Home keys. These key events are handled internally by REBOL for changing the
caret position in edit windows. These key events return word
representations. The word representations for the Up, Down, Left, Right, End
and Home keys are 'up, 'down, 'left, 'right, 'end or 'home, respectively.
For the mouse up and down events as well as 'time , 'resize and 'move,
the character returned is always #"^@", which is represented in REBOL as a
null character.
/control Returns a logic value, true or false, depending on whether
the control key is pressed when the event is sent. This works with the mouse
up and down events as well as 'move, 'key, 'resize and 'time.
/shift Returns a logic value, true or false, depending on whether the
shift key is pressed when the event is sent. This works with the mouse up
and down events as well as 'move, 'key, 'resize and 'time.
/time Returns an integer representing a unique time index for the
event.
/face Returns the top-level face object of the window that was active
when the event occurred.
Cheers,
Allen K