| Allegro CL version 6.2 Unrevised from 6.1 | |||||||||
Arguments: range-object-list row column
This generic function is called when a grid combo-box cell (a cell in
a combo-box-column-mixin column) is about to show its choices to the
user as a pop-up menu that is displayed somewhat like a combo-box. The method
returns a list of menu-items to display. The menu-values are a list of
the actual choices for the cell, as returned by the column's
range-reader function called on the row's data-object.
The default method creates menu-items with the print-name of each choice displayed in the menu. An application could add a method to this generic function to instead create menu-items that have some sort of alternative string displayed on the menu for each choice.
Here's an example of defining a custom menu-items-for-combo-box-range method for an application's own combo-box grid-column subclass. The method adds a sequential number (1 through N) to each of the choices that are displayed to the user.
(defclass my-combo-box-column
(combo-box-column-mixin grid-column)())
(defmethod menu-items-for-combo-box-range
(range-object-list row (column my-combo-box-column))
(declare (ignore row))
(let* ((number 0))
(mapcar #'(lambda (object)
(make-instance 'menu-item
:value object
:title (format nil "~a ~a" (incf number) object)))
range-object-list)))
Copyright (c) 1998-2002, Franz Inc. Oakland, CA., USA. All rights reserved.
Documentation for Allegro CL version 6.2. This page was not revised from the 6.1 page.
Created 2002.2.26.
| Allegro CL version 6.2 Unrevised from 6.1 | |||||||||