The class
list-panel
is a pane that can display a group of items and provides support for selecting items and performing actions on them.
The class
list-panel
gains most of its behavior from choice, which is an abstract class that handles items and their selection. By default, a list panel has both horizontal and vertical scrollbars.
The
list-panel
class does not support the
:no-selection
interaction style. For a non-interactive list use a display-pane.
mnemonic-tirle is interpreted as for menu.
(setq list (capi:contain
(make-instance 'capi:list-panel
:items '(:red :blue :green)
:selected-item :blue
:print-function
'string-capitalize)))
(capi:apply-in-pane-process
list #'(setf capi:choice-selected-item) :red list)
(capi:apply-in-pane-process
list #'(setf capi:choice-selected-item) :green list)
(capi:contain (make-instance
'capi:list-panel
:items '(:red :blue :green)
:print-function 'string-capitalize
:selection-callback
#'(lambda (data interface)
(capi:display-message
"~S" data))))
There are further examples in the directory
examples/capi/choice/
.