Update of /project/mcclim/cvsroot/mcclim In directory clnet:/tmp/cvs-serv17296
Modified Files: presentation-defs.lisp Log Message: Hopefully fixed `presentation-type-specifier-p'. Of course, I also thought this the last two times.
--- /project/mcclim/cvsroot/mcclim/presentation-defs.lisp 2006/12/12 22:17:42 1.63 +++ /project/mcclim/cvsroot/mcclim/presentation-defs.lisp 2006/12/13 19:36:00 1.64 @@ -207,11 +207,9 @@ otherwise return false." ;; Apparently, this funtion has to handle arbitrary objects. (let ((name (presentation-type-name object))) - (when (and (or (symbolp name) - (and (typep name 'class) - (not (typep name 'built-in-class)))) + (when (and (typep name '(or symbol class)) (get-ptype-metaclass name)) - (%presentation-type-specifier-p t object)))) + (funcall-presentation-generic-function presentation-type-specifier-p object))))
(defun default-describe-presentation-type (description stream plural-count) (if (symbolp description) @@ -1634,6 +1632,11 @@ :options #.+completion-options+ :inherit-from t)
+(define-presentation-method presentation-type-specifier-p ((type sequence)) + (and (listp type) + (consp (rest type)) + (presentation-type-specifier-p (second type)))) + (define-presentation-method presentation-typep (object (type completion)) (map nil #'(lambda (obj) (when (funcall test object (funcall value-key obj))