[mcclim-cvs] CVS mcclim/ESA
thenriksen
thenriksen at common-lisp.net
Tue Jan 29 14:36:00 UTC 2008
Update of /project/mcclim/cvsroot/mcclim/ESA
In directory clnet:/tmp/cvs-serv18213/ESA
Modified Files:
utils.lisp
Log Message:
Changed the way the list of active modes are stored.
Requires recompilation of all modes definitions.
--- /project/mcclim/cvsroot/mcclim/ESA/utils.lisp 2008/01/11 02:44:14 1.9
+++ /project/mcclim/cvsroot/mcclim/ESA/utils.lisp 2008/01/29 14:36:00 1.10
@@ -446,9 +446,8 @@
(defgeneric enabled-modes (modual)
(:documentation "Return a list of the names of the modes
directly enabled for `modual'.")
- (:method-combination append)
- (:method append ((modual t))
- '()))
+ (:method ((modual t))
+ '()))
(defgeneric mode-enabled-p (modual mode-name)
(:documentation "Return true if `mode-name' is enabled for
@@ -516,7 +515,11 @@
;; Avert thine eyes, thy of gentle spirit.
(if (null modes)
(find-class modual)
- (eval `(defclass ,(gensym) (,modual , at modes) ()
+ ;; We're kind and put the active modes into the class name.
+ (eval `(defclass ,(gensym (format nil "~A~{-~A~}" (string modual) modes))
+ (,modual , at modes)
+ ((%enabled-modes :reader enabled-modes
+ :initform ',modes))
(:metaclass modual-class)))))
(defun find-class-implementing-modes (modual modes)
More information about the Mcclim-cvs
mailing list