




 
A choice which displays its selected items and its unselected items in disjoint lists, and facilitates easy movement of items between these lists.
The class 
double-list-panel
 is a choice which displays its 
items
 in two list-panels. One list contains the selected items and the other contains the unselected items. There is a pair of arrow buttons which move highlighted items between the lists.
The default 
interaction
 of 
double-list-panel
 is 
:extended-selection
.
The 
selection-callback
, 
extend-callback
 or 
retract-callback
 is called as appropriate when items are moved between the lists. There is no 
action-callback
 for 
double-list-panel
.
The user selects and de-selects items in the 
double-list-panel
 by moving them between the two lists. There are three ways to move the items:
Return
.(capi:display
(make-instance
'capi:double-list-panel
:items '("John" "Geoff" "chicken" "blue" "water")
:selection-callback
#'(lambda (item choice)
(capi:display-message "selecting ~a" item))
:extend-callback
#'(lambda(item choice)
(capi:display-message "extending ~a" item))
:retract-callback
#'(lambda(item choice)
(capi:display-message "deselecting ~a" item))))
CAPI Reference Manual - 15 Dec 2011