All Manuals > CAPI User Guide and Reference Manual > 21 CAPI Reference Entries

NextPrevUpTopContentsIndex

double-list-panel

Class
Summary

A choice which displays its selected items and its unselected items in disjoint lists displayed in two sub-panels, and facilitates easy movement of items between these lists.

Package

capi

Superclasses

choice
interface

Initargs

These initargs are passed to the sub-panels. See the documentation for list-panel for information on how the sub-panels interpret them.

:selected-items-title

:unselected-items-title

selected-items-title and unselected-items-title are passed as the :title initarg to the list panels.

The default value of selected-items-title is "Selected items:" and the default value of unselected-items-title is "Unselected items:"

:selected-items-filter

:unselected-items-filter

selected-items-filter and unselected-items-filter are passed as the :filter initarg to the list panels.

The default value of both selected-items-filter and unselected-items-filter is nil.

:list-visible-min-width

:list-visible-min-height

list-visible-min-width and list-visible-min-height are passed as the :visible-min-width and :visible-min-height initargs to both list panels.

These initargs are passed to both of the sub-panels to specify images. See the documentation for list-panel for information on how the sub-panels interpret them.

:image-function

:image-state-function

:image-width

:image-height

:state-image-width

:state-image-height

Description

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:

Notes
  1. double-list-panel is not a subclass of list-panel.
  2. double-list-panel does not have image lists. To use sub-images from an image-set, use image-locators.
Example
(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))))
See also

list-panel
List panels


CAPI User Guide and Reference Manual (Unix version) - 3 Aug 2017

NextPrevUpTopContentsIndex