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

Re: [MacPerl] troubles with Controls.pm



Michael Ziege <ziege@ito.umnw.ethz.ch> writes:
>>The bug has been found and fixed for the next release.  If you want to fix
>>it yourself, try adding one line at line 469:
>>
>>sub click {
>>    my($my, $win, $pt) = @_;
>>    my($part,$control) = FindControl($pt, $win->window);
>>    return if !$control;  # new line at 469
>>[...]
>
>clicking outside a control in the ControlWindow.t script now works fine

Good!

>although I don't see why the event of clicking into the window first has to
>do sightseeing in Controls.pm before the windows event handle can manage it.

Hmm, I'm not sure I understand this question. As opposed to the X window
system, or, AFAIK, it's evil Wintel cousin, Macintosh mouse events come in
a very raw form: All that is given is screen coordinates. It is the
application's responsibility to find out the exact location of a click, which
is done by:

 - Calling FindWindow to find what window, if any, a click "belongs" to.
 - If the click was inside a window, and the window has controls, call
   FindControl to find out if the click was in a control.

My original code did all that, but neglected the case where a window *had*
controls but the user clicked outside of them (I was just too well-trained to
try that :-).

>BTW: Clicking into the windows close box still gives a crash.

Can you contact me with more details? I'm unable to reproduce that crash.

Matthias

-----
Matthias Neeracher   <neeri@iis.ee.ethz.ch>   http://www.iis.ee.ethz.ch/~neeri
   "I'm set free to find a new illusion" -- Velvet Underground

***** Want to unsubscribe from this list?
***** Send mail with body "unsubscribe" to mac-perl-request@iis.ee.ethz.ch