From: Nobuhiko Funato
Subject: key event handling on ACL Windows 3.0.2
Date: 
Message-ID: <7s8bse$233$1@news1.sphere.ad.jp>
Hi, Lispers

I have a question regarding keyboard event handling on ACL for
Windows 3.0.2 -- sorry for using such old version, but we must
maintain some past program.

I would like to know that how the window which has some sub-sindow 
can catch keyboard events.

Suppose that we have window classes as follows,

        (defclass my-window (non-refreshing-window) ())
        (defclass my-pane (non-refreshing-pane) ())
        (defmethod default-pane-class ((window my-window)) 'my-pane)

and we define event handlers for the instances of them like follows. 

        (defmethod event ((pane my-pane)
                          (message (eql mouse-left-down))
                          button position time)
                ...)

        (defmethod event ((pane my-pane)
                          (message (eql virtual-key-down))
                          button
                          (data (eql pc:vk-control))
                          time)
                ...)

If MY-PANE has no sub-window, each handler will be called on
the corresponding event. But if it has one, the latter handler
for the virtual-key-down event is not be called.

Is the phenomenon specification or a bug ? 
Are there any methods or work-arounds for catching the event ?

I would appreciate any suggestions or comments. Thanks.

Nobuhiko Funato
······@m_b_e.s_p_h_e_r_e.n_e.j_p (remove '_' for my real address)
From: Francis Leboutte
Subject: Re: key event handling on ACL Windows 3.0.2
Date: 
Message-ID: <5TTrN8LeE+QBkxvXsXEUxGH7RZs9@4ax.com>
"Nobuhiko Funato" <········@m_b_e.s_p_h_e_r_e.n_e.j_p> wrote:

>Hi, Lispers
>
>                ...)

 ....

>If MY-PANE has no sub-window, each handler will be called on
>the corresponding event. But if it has one, the latter handler
>for the virtual-key-down event is not be called.
>
>Is the phenomenon specification or a bug ? 

A good question :-)

>Are there any methods or work-arounds for catching the event ?
>
>I would appreciate any suggestions or comments. Thanks.

This could be enough for what you want to do:
- make the two pane classes inherit from a XXX pane class
- define the virtual-key-down event method on this XXX pane class

>Nobuhiko Funato
>······@m_b_e.s_p_h_e_r_e.n_e.j_p (remove '_' for my real address)
>

--
Francis Leboutte
··········@skynet.be  http://users.skynet.be/algo