Re: Q: synchronizing widget events [message #3941] |
Wed, 22 March 1995 05:18 |
zawodny
Messages: 121 Registered: August 1992
|
Senior Member |
|
|
In article <3kn33q$jiq@ncar.ucar.edu> zender@sage.cgd.ucar.edu (Charlie Zender) writes:
> i've got a widget program and i am starting to implement a kind
> of macro capability where one button will generate a pre-programmed
> sequence of events (with widget_control,send_event=...)
> to send off to the other buttons. i've got it working so that the
> events are all sent and control is returned to the user when the
> macro finishes playing. but there's a sequencing problem.
>
> i may send the events in the order a,b,c,... but the events are
> getting permuted in order by the time they execute. this is a problem
> because these are non-commutative operations, and the outcome of event
> b will be incorrect if event a hasn't finished yet. i think this is
> what's happening. is there a way of running the event managers in
> a synchronous mode so that the order the events is processed in is
> determinate?
I frequently "type ahead" clicking on several widgets and typing stuff
while some of my slower widgets execute something. The event managers
sole task is to pass out events to widgets in the order they were
received. Barring a bug in the manager, they cannot get out of
sequence unless one of your widgets clears the "event stack".
> i'm not sure it's relevent but i'm sending events to two different
> event managers. would it help if i moved all the pertinent widgets
> to the same event manager?
You have to keep them under one manager in order to keep
synchronization. You could implement a brut force synchronization
but, putting them all under a single root would be the easiest
solution and should not be difficult to do.
Best of luck,
--
Joseph M. Zawodny (KO4LW) NASA Langley Research Center
Internet: j.m.zawodny@larc.nasa.gov MS-475, Hampton VA, 23681-0001
TCP/IP: ko4lw@ko4lw.ampr.org Packet: ko4lw@n4hog.va.usa.na
|
|
|