More Droplets and AppleEvents
kray at sonsothunder.com
Tue Feb 27 13:09:40 EST 2007
On Tue, 27 Feb 2007 17:36:17 +0000, Dave wrote:
> I can't find any information on how this is supposed to work. The
> built-in documentation says that the appleEvent message is sent to
> the current card, however I have the appleEvent message handler in my
> Stack Script and it gets called. So where exactly is the message sent
It's sent to the card, but if it's not trapped there, it propgates
along the message passing hierarchy, so you can trap it in the stack
script if you like.
> The Splash Screen Stack used to just be hidden, I now close it so
> that there would be no chance that appleEvents get sent it it,
> however, I still sometimes get the appleEvent handler in the Splash
> stack is getting called, even though it is closed and gone!!!! How
> can this be?
It's because the appleEvent is sent as soon as your app starts up, and
is sent to the first card of the first stack opened. If this is the
Splash, then it is the stack that will receive the message, and it's
hitting the card just before you're executing your close stack command
to close the Splash.
> IMO, the way
> in which appleEvents are handled needs to be improved. It's senseless
> to have the appleEvent sent to the current card or even the current
> stack, they should always be sent to one place.
Well, this would be the reason to set up a backscript or library to
catch any appleEvent messages that are sent *after* your app is already
open. This way, you don't have to patch individual stacks, you can trap
the event in the Splash for when the app is first launched, and then in
a backscript for events that come in after that point.
Sons of Thunder Software, Inc.
Email: kray at sonsothunder.com
Web Site: http://www.sonsothunder.com/
More information about the Use-livecode