LispWorks CAPI/Fenêtre de choix/Panneaux de listes

Un livre de Wikilivres.
Sauter à la navigation Sauter à la recherche
LispWorks CAPI
LispWorks CAPI
Sommaire

Modifier ce modèle

Des listes d'éléments sélectionnables peuvent être créés à l'aide de la classe list-panel. En voici un exemple.

(setq list 
      (make-instance 'list-panel
                     :items '(un deux trois quatre)
                     :visible-min-height '(character 2)
                     :print-function 'string-capitalize))
(contain list)

Notez la façon dont les éléments du list-panel sont convertis en symboles. La fonction print-function contôle la façon dont les symboles sont affichés à l'écran.

Tout item de la liste peut être sélectionné en cliquant avec la souris.

Par defaut, le list-panel n'est qu'a sélection simple, ceci veut dire qu'on ne peut sélectionner qu'un élément à la fois. Cependant, pour changer ça, il ne suffit que d'utiliser le mot clé :interaction.

(make-instance 'list-panel
               :items (list "Un" "Deux" "Trois" "Quatre")
               :interaction :multiple-selection)
(contain *)

Vous pouvez aussi ajouter un callback pour les éléments en utilisant le mot clé :selection-callback

(make-instance 'list-panel
               :items (list "Un" "Deux" "Trois" "Quatre")
               :selection-callback 'test-callback)
(contain *)