Linux Option Pane Bug?
Hello all,
I like the addition of the separator in the option panes that I've
noticed in 4.4.5 (perhaps
it was earlier, but that's when I noticed). I've noticed a quirk on
LWL 4.4.5 though, and I
think it's a bug.
I was moving some code from Mac to Linux, and one of my interfaces
wouldn't display. I
tracked the problem down to something analogous to the following code
snippet. It seems
that on Linux, if a print-function is provided, it needs to return a
string for every item,
including the separator item, even though the string returned for the separator
is never displayed. I assume that in the case that no print-function
is specified the
one used by Lispworks provides something for the separator item, as
well. As I said,
nothing hard to work around, but seemed like a bug to me..
;; doesn't work in Linux
(capi:contain (make-instance 'capi:option-pane
:separator-item :separator
:print-function #'(lambda (x)
(cdr (assoc x '((a . "a")
(b . "b")))))
:items '(a :separator b)))
;; works in Linux
(capi:contain (make-instance 'capi:option-pane
:separator-item :separator
:print-function #'(lambda (x)
(or (cdr (assoc x '((a . "a")
(b . "b"))))
"other value"))
:items '(a :separator b)))
--
=====================
Joshua Taylor
tayloj@rpi.edu