[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Help with events within events

After years of working with MCL, you'd think I have this straightened out in
my mind by now...

I am trying to figure out how to get one event to be called and processed
during the handling of another event.

The current situation I am confronting is as follows:  A certain mouse click
causes the mouse (after the button is up) to be tracked.  When the mouse then
passes over different icons on the screen, I want to have other things happen.

Currently, this process begins inside a view-click-event-handler, which
eval-enqueue's my mouse-tracker.  When the button is released, the tracker
starts following the mouse around.   By checking the mouse's position, I
am able to determine when the mouse is over a "hot-spot" (in this case
an icon).   When it is over a hot-spot (and then when it leaves), I wish
to have certain actions to occur.

The problem is that most of these actions (adding dialog-items to a view,
invalidating regions, ...) will not occur until the mouse-tracker has
exited.  (I am able to do a grafport-write-string...)  I have tried
combinations of calling these sub-events with eval-enqueue and
event-dispatch, but have not success.

What am I missing?  Do I have to build my own "catch-and-throw" protocol?

All help is greatly appreciated.