This structure provides events. An event represents a raw interaction with the program, either issued by the user or generated by the environment. Events can be bound to views, items of views, to windows or to the entire application, such that a command is excuted whenever the event occures.
List of Import References :
See BOOL
See BTUnion
See Char
See Com
See DENOTATION
See Int
See Nat
See Option
See Real
See Seq
See Set
See String
See Void
See WinConfig
See WinInternal
See WinTclTk
SIGNATURE WinEvent
$Date: 2010-09-30 18:24:17 +0200 (Do, 30. Sep 2010) $ ($Revision: 616 $)
IMPORT Nat ONLY nat
Char ONLY char
Void ONLY void
Seq[denotation] ONLY seq
Com[void] ONLY com
IMPORT WinConfig ONLY point:SORT
WinInternal ONLY wconfig:SORT config:SORT
Events are constructed from basic events such as key("A"),
augmented by modifiers such as in double-meta-button(1)
and combined to sequences such as in (control-key("C")) ++ key("c").
TYPE event ==
configure expose destroy reparent map unmap visibility
enter leave motion focusIn focusOut
someButtonPress buttonPress(no: nat)
someButtonRelease buttonRelease(no: nat)
someKeyPress keyPress(keysym: denotation)
someKeyRelease keyRelease(keysym: denotation)
- (modifier: modifier, event: event)
++(left: event, right: event)
FUN button : nat -> event -- buttonPress
FUN key : denotation -> event -- keyPress
TYPE modifier ==
control shift lock meta alt button(no: nat) double triple
FUN C : modifier -- control
FUN S : modifier -- shift
FUN M : modifier -- meta
The number in button-events specifys the button number (starting with 1),
the denotation in key-events the name of a window server's
keysymbol. The modifiers double and triple indicate the
repetition of the given event in a short time.
When an event occures, additional to the events definition, information such as the current mouse position and the pressed keysymbol is generated.
TYPE eventInfo ==
pointInfo (event: event, point: point)
buttonInfo (event: event, point: point, button: nat)
keyInfo (event: event, point: point, keysym: denotation,
keycode: nat, keychar: char)
noInfo (event: event)
The pointInfo is associated with the enter, leave
and motion events. The buttonInfo is associated with the
button and the keyInfo with the key events. All other events
have the information noInfo associated.
The point associated with the a motion or button event is measured relatively to the view which receives the event.
An event may be bound to a view or item, to a window or to the entire application. Each time the event occures, the given command is executed.
FUN bind : event ** (eventInfo -> com[void]) -> config FUN bind : event ** (eventInfo -> com[void]) -> wconfig FUN bind : event ** (eventInfo -> com[void]) -> com[void]
next node: WinFontMetrics,
prev node: WinCanvas,
up to node: Subsystem Opal Windows