Double-click on capi:tree-view opens a window but TAB key does not work
Hello lispworkers,
Please evaluated the following code.
;;; Very similar to examples/capi/choice/tree-view.lisp
(in-package "CL-USER")
(defvar *my-image-list*
(make-instance 'capi:image-list
:image-sets (list (capi:make-general-image-set
:id #.(gp:read-external-image
(current-pathname"tree.bmp"))
:image-count 4))
:image-width 16 :image-height 16))
(capi:define-interface tree-view-activate () ()
(:panes
(tree capi:tree-view
:roots '(1 2 3 4)
:children-function #'(lambda (x)
(and (< x 100)
(let ((base (* x 4)))
(list (+ base 1)
(+ base 2)
(+ base 3)
(+ base 4)))))
:image-lists (list :normal *my-image-list*)
:image-function #'(lambda (x) (mod (1- x) 4))
:visible-min-width 200
:visible-min-height 200
:retain-expanded-nodes t
:action-callback #'(lambda (item self)
(declare (ignore self))
(format t "~&Activate before ~S" item)
(capi:find-interface 'second-interface)
(format t "~&Activate after ~S" item))))
(:layouts
(default-layout capi:simple-layout '(tree)))
(:default-initargs
:title "DOUBLE-CLICK to Open Second Window"))
(capi:define-interface second-interface () ()
(:panes
(text1 capi:text-input-pane :title "Text1:")
(text2 capi:text-input-pane :title "Text2:"))
(:layouts
(main-layout capi:column-layout '(text1 text2)))
(:default-initargs
:layout 'main-layout
:title "Second Interface - TAB does not work"
:activate-callback (lambda (interface state)
(format t "~&Activate interface state ~S" state))))
(capi:display (make-instance 'tree-view-activate))
On Windows XP SP3, the second window "feels bad" just on opening it by means
of double-clicking on a tree view item. Neither the TAB key nor menu
accelerators (if there were some) work - the window beeps. After closing
the second window and reopening it by means of pressing ENTER, it works
fine.
I have tested with LWW 4.4 and LWW 5.1.1 Personal.
On Windows 2000, everything works fine on LWW 4.4 (have not tried LWW
5.1.1).
--
Sincerely,
Dmitriy Ivanov
lisp.ystok.ru