--- a/WindowEvent.st Wed Jun 29 09:40:48 2011 +0200
+++ b/WindowEvent.st Wed Jun 29 12:16:09 2011 +0200
@@ -218,8 +218,7 @@
documentation
"
- Instances of WindowEvent are created for every event coming from
- the graphics device.
+ Instances of WindowEvent are created for every event coming from the graphics device.
Usually, they are enqueued by the event dispatcher process into
a sensors input queue, and dequeued & processed by a windowGroup process
in its event loop.
@@ -232,23 +231,23 @@
The algorithm for event dispatching is:
- - if the destination view has a keyboard focus set,
- AND the event is a keyboard event,
- THEN recursively invoke the event dispatching method,
- sending the event to the focus view (or its delegate, as below)
+ - if the destination view has a keyboard focus set,
+ AND the event is a keyboard event,
+ THEN recursively invoke the event dispatching method,
+ sending the event to the focus view (or its delegate, as below)
- - if the destination view has a delegate,
- AND its a keyboard, button or pointer event,
- AND the delegate is interested in that event
- (i.e. implements & responds to #handlesXXX with true)
- THEN send the event to the delegate, passing the original view
- as additional argument
+ - if the destination view has a delegate,
+ AND its a keyboard, button or pointer event,
+ AND the delegate is interested in that event
+ (i.e. implements & responds to #handlesXXX with true)
+ THEN send the event to the delegate, passing the original view
+ as additional argument
- - if the view has a nonNil controller,
- AND its a key, button or pointer event,
- THEN send the event to the controller
+ - if the view has a nonNil controller,
+ AND its a key, button or pointer event,
+ THEN send the event to the controller
- - otherwise send the event to the view
+ - otherwise send the event to the view
If the view has a non-nil transformation, the event is sent as a
@@ -268,37 +267,37 @@
Therefore, for a delegated keyPress messages, the flow is:
- sendEvent
- view has delegate
- ------> ask delegate via 'handlesKeyPress:key inView:view'
- <------ returns true
- ------> 'delegate keyPress:key x:x y:y view:view'
- -----> delegate does whatever it wants to do
- (typically sends the event to some other view)
+ sendEvent
+ view has delegate
+ ------> ask delegate via 'handlesKeyPress:key inView:view'
+ <------ returns true
+ ------> 'delegate keyPress:key x:x y:y view:view'
+ -----> delegate does whatever it wants to do
+ (typically sends the event to some other view)
for an undelegated message:
- sendEvent
- view has delegate
- ------> ask delegate via 'handlesKeyPress:key inView:view'
- <------ returns false
- view has controller
- ------> 'controller keyPress:key x:x y:y'
- view has no controller
- view has transformation
- ----> 'view deviceKeyPress:key x:x y:y'
- inverse transform x/y
- ----> 'self keyPress:key x:xLogical y:yLogical'
- view has no transformation
- ----> 'view keyPress:key x:x y:y'
+ sendEvent
+ view has delegate
+ ------> ask delegate via 'handlesKeyPress:key inView:view'
+ <------ returns false
+ view has controller
+ ------> 'controller keyPress:key x:x y:y'
+ view has no controller
+ view has transformation
+ ----> 'view deviceKeyPress:key x:x y:y'
+ inverse transform x/y
+ ----> 'self keyPress:key x:xLogical y:yLogical'
+ view has no transformation
+ ----> 'view keyPress:key x:x y:y'
[author:]
- Claus Gittinger
+ Claus Gittinger
[see also:]
- WindowGroup WindowSensor
- DeviceWorkstation View
- KeyboardMap KeyboardForwarder EventListener
+ WindowGroup WindowSensor
+ DeviceWorkstation View
+ KeyboardMap KeyboardForwarder EventListener
"
! !
@@ -1659,11 +1658,11 @@
version_CVS
- ^ '$Header: /cvs/stx/stx/libview/WindowEvent.st,v 1.104 2011-06-29 07:40:48 vrany Exp $'
+ ^ '$Header: /cvs/stx/stx/libview/WindowEvent.st,v 1.105 2011-06-29 10:16:09 cg Exp $'
!
version_SVN
- ^ ' Id '
+ ^ '§ Id §'
! !
WindowEvent::InputEvent initialize!