Playing Sound Clips

Jeanne A. E. DeVoto jeanne at
Wed Jan 30 10:36:01 EST 2002

At 6:41 AM -0800 1/30/2002, Gene Kennedy wrote:
> I originally placed your code in a "On MouseUp" handler in a button on a
>card where the "PlayStopped" signal was not detected.
>When I moved your code to the card script, and called it from the button
>event, it worked "OK".  Is this the general case with most RR signals,
>i.e. they are sent to the card and not to the control on the card which
>initiated the response?

If I understand correctly what you did originally, the problem may not have
been the message destination - it sounds like you placed the code in a
mouseUp handler instead of a playStopped handler. playStopped being a
message, it triggers its own handler.

And no, the playStopped message isn't sent to the control that initiated
the playing. To quote:
"The playStopped message is sent when the movie or sound reaches its end,
or when a play stop command executes. If the user pauses the movie or
sound, the playPaused message is sent instead.

"When an audio clip or video clip is playing, a temporary player is created
for it. When the clip is finished, the playStopped message is sent to it."

(Then of course the message is passed on up to the object that owns the
player in question - in this case, the card - so a handler on the card will
catch it.)

In general, messages get sent initially to the most relevant object. For
example, a mouseDown message gets sent to whatever object got clicked; a
keyDown message gets sent to whatever object has the keyboard focus at the
time; and so on. If the message is along the lines of a status report and
not logically attached to a particular object - as for example the shutdown
message - it generally is sent first to the current card.

Jeanne A. E. DeVoto ~ jeanne at
Runtime Revolution Limited - Power to the Developer!

More information about the Use-livecode mailing list