On Mon, 2007-12-17 at 11:31 +0100, Murray Cumming wrote:
> On Fri, 2007-12-14 at 13:38 +0000, Matthew Allum wrote:
> > Input events are handled initially by the stage the event will enter a
> > capture phase continue down through children to the 'source' actor of 
> > the event (for example the actor that was clicked on) before then 
> > entering the 'bubble' phase going back up through parents to the 
> > stage. 
> 
> Does this really meant that the stage gets two chances to handle an
> event? So if I return false from my signal handler for the stage then
> that same handler will be called a second time?

no: the capture phase is always handled by the ::captured-event signal
handler *only*, exactly like the ::event signal is emitted at the
beginning of the bubble phase. then, you have specialised events which
are emitted only in the bubble phase (because otherwise we'd have two
different signals for each specialised event).

so, to recap:

  + capture phase: from stage to actor, emit the ::captured-event
    signal;
  + bubble phase: from actor to stage, emit the ::event signal and
    then the specific event handlers (::button-press-event,
    ::key-release-event, etc.)

> >  The event can be stopped at any stage by an actor in the event 
> > pipeline.
> 
> By the way, this "return true to stop further signal handling" really
> should be in the API reference for each signal.

it's written inside the event handling notes at the beginning of the
ClutterActor description; I actually think it's even written twice in
that list.

ciao,
 Emmanuele.

-- 
Emmanuele Bassi, OpenedHand Ltd.
Unit R, Homesdale Business Centre
216-218 Homesdale Rd., Bromley - BR12QZ
http://www.o-hand.com

-- 
To unsubscribe send a mail to [EMAIL PROTECTED]

Reply via email to