(FILECREATED "31-Jan-86 17:45:55" {ERIS}<LISPUSERS>KOTO>DEFAULTSUBITEMFN.;1 1510   

      previous date: "31-Jan-86 17:01:44" {QV}<BRIGGS>LISP>DEFAULTSUBITEMFN.;1)


(* Copyright (c) 1986 by Xerox Corporation. All rights reserved.)

(PRETTYCOMPRINT DEFAULTSUBITEMFNCOMS)

(RPAQQ DEFAULTSUBITEMFNCOMS ((* * redefine the DEFAULTSUBITEMFN to add the EVAL keyword to the 
				subitem menu field)
			     (FNS DEFAULTSUBITEMFN)))
(* * redefine the DEFAULTSUBITEMFN to add the EVAL keyword to the subitem menu field)

(DEFINEQ

(DEFAULTSUBITEMFN
  [LAMBDA (MENU ITEM)                                        (* edited: "31-Dec-85 16:41")
                                                             (* rrb "17-Aug-84 17:24")

          (* default subitemfn for menus. Checks the fourth element of the item for an expression of the form 
	  (SUBITEMS a b c) or if the fourth element is (EVAL form) will return the value of form. MENU and ITEM will be 
	  available during the evaluation)


    (PROG (TEMP)
          (RETURN (if [AND (LISTP ITEM)
			   (LISTP (SETQ TEMP (CDR ITEM)))
			   (LISTP (SETQ TEMP (CDR TEMP)))
			   (LISTP (SETQ TEMP (CDR TEMP]
		      then (SELECTQ [CAR (SETQ TEMP (LISTP (CAR TEMP]
				    (SUBITEMS (CDR TEMP))
				    (EVAL (EVAL (CADR TEMP)))
				    NIL])
)
(PUTPROPS DEFAULTSUBITEMFN COPYRIGHT ("Xerox Corporation" 1986))
(DECLARE: DONTCOPY
  (FILEMAP (NIL (528 1423 (DEFAULTSUBITEMFN 538 . 1421)))))
STOP