Question on message handling

Mark Wieder mwieder at ahsoftware.net
Thu Oct 13 11:13:34 EDT 2005


Jim-

Thursday, October 13, 2005, 7:12:32 AM, you wrote:

> What I found surprising (and welcome) is that the back and forward
> slashes never appear in the field. The key stroke is never passed 
> back to the field for display after it is caught by the card script.
> (It would be if there were a "pass keyDown" in the first two case 
> statements.) So apparently the field gets the message first, then 
> then card (as you both say) and then, if the key stroke is passed by
> the card script, it is passed back to the field display for viewing.
> I was wrong to speak of this last message as part of the conventional
> message passing path. Maybe "display" message? The keyDown message is
> never *displayed* unless it is passed through all of RR message 
> handlers--display is  the last in line. And as Martha Stewart would 
> say: It is a good thing.


Right. If you had a "keydown" handler in the field itself it would be
intercepting the message. Since you don't, the message works its way
down the hierarchy until it's grabbed by the card. Since you're
handling the slash keystrokes yourself and never passing them on,
that's the end of things. All the other keystrokes are passed onto the
engine, which wakes up and says "somebody pressed a key in this field
- I'd better put the char in there". The slash chars never get to the
"pass keydown" message, so the engine never gets its wakeup call.

-- 
-Mark Wieder
 mwieder at ahsoftware.net




More information about the use-livecode mailing list