CLIM mail archive


Re: clim 2.0.beta: menu-choose

   Date: Tue, 24 Nov 1992 14:12-0500
   From: Scott McKay <>

       Date: Mon, 23 Nov 1992 10:19 EST
       From: Jeff Morrill <jmorrill@BBN.COM>

       Also, there is a bug that sometimes occurs.  If the menu is not exposed
       promptly, intervening Release-Right events get "thrown away".  Therefore
       if the user gets tired waiting and releases the mouse, they eventually
       get a menu anyway and it does not go away until a second Release-Right
       event occurs.  This can be rather unintuitive behavior.

   The problem is that CLIM distributes the release event to the sheet
   that is under the pointer.  I'm not sure exactly how to get the event
   distribution to do anything besides that.

In some versions of Silica (at least the version which provided the
event distribution mechanism of "CLIM 0.9"), events are distributed by
a "distributor" object associated with a sheet.  By default, this
gives the behavior you describe above.  However, there is an
overriding mechanism that allows certain facilities which by
definition operate outside the bounds of individual sheets (e.g.
tracking-pointer, menus) to override the standard distributor.
Normally, these event distributors trampoline to the original
distribution mechanism after producing the appropriate side effect,
but not always.  In this example, the release event would be processed
by the menu code no matter what window the button was over.

I do not know whether this mechanism survives in CLIM 2.0.

-- Dennis



Main Index | Thread Index