(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP")
(FILECREATED "14-Oct-88 17:15:46" {QV}<NOTECARDS>1.3MNEXT>LIBRARY>NEWSHADEITEM.;1 3141   

      previous date%: "15-Sep-88 11:27:29" {QV}<NOTECARDS>1.3L>LIBRARY>NEWSHADEITEM.;1)


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

(PRETTYCOMPRINT NEWSHADEITEMCOMS)

(RPAQQ NEWSHADEITEMCOMS (

(* ;;; "New file")

                             (DECLARE%: DONTCOPY (PROPS (NEWSHADEITEM MAKEFILE-ENVIRONMENT)
                                                        (NEWSHADEITEM FILETYPE)))
                             
                             (* ;; "pmi 9/15/88: Basically just adds an OPERATION argument to SHADEITEM.  Constructs a list of SHADE and OPERATION to be passed to SHADEITEM for its SHADE argument.  Corresponding advice to RESHADEITEM then uses OPERATION in shading ITEM.  Among other possibilities, this enables menus that have items of grayed text, which my be used to indicate that they are not available for the current operation. (Call with GRAYSHADE for SHADE and 'ERASE for OPERATION.)")

                             (FNS NEWSHADEITEM)
                             (ADVISE RESHADEITEM)))



(* ;;; "New file")

(DECLARE%: DONTCOPY 

(PUTPROPS NEWSHADEITEM MAKEFILE-ENVIRONMENT (:PACKAGE "INTERLISP" :READTABLE "INTERLISP"))

(PUTPROPS NEWSHADEITEM FILETYPE :BCOMPL)
)



(* ;; 
"pmi 9/15/88: Basically just adds an OPERATION argument to SHADEITEM.  Constructs a list of SHADE and OPERATION to be passed to SHADEITEM for its SHADE argument.  Corresponding advice to RESHADEITEM then uses OPERATION in shading ITEM.  Among other possibilities, this enables menus that have items of grayed text, which my be used to indicate that they are not available for the current operation. (Call with GRAYSHADE for SHADE and 'ERASE for OPERATION.)"
)

(DEFINEQ

(NEWSHADEITEM
  [LAMBDA (ITEM MENU SHADE DS/W OPERATION)                   (* ; "Edited 15-Sep-88 11:04 by pmi")

    (* ;; "Basically just adds an OPERATION argument to SHADEITEM.  Constructs a list of SHADE and OPERATION to be passed to SHADEITEM for its SHADE argument.  Corresponding advice to RESHADEITEM then uses OPERATION in shading ITEM.  Among other possibilities, this enables menus that have items of grayed text, which my be used to indicate that they are not available for the current operation. (Call with GRAYSHADE for SHADE and 'ERASE for OPERATION.)")

    (SHADEITEM ITEM MENU (CONS SHADE OPERATION)
           DS/W])
)

[XCL:REINSTALL-ADVICE 'RESHADEITEM :AROUND
       '((:LAST (LET (Shade Operation)
                     (if [AND (LISTP NEWSHADE)
                                  (TEXTUREP (SETQ Shade (CAR NEWSHADE]
                         then (SETQ Operation (CDR NEWSHADE))
                               (SETQ NEWSHADE WHITESHADE) * (DSPFILL ITEMREGION Shade Operation 
                                                                       DSP)
                       else *]

(READVISE RESHADEITEM)
(PUTPROPS NEWSHADEITEM COPYRIGHT ("Xerox Corporation" 1988))
(DECLARE%: DONTCOPY
  (FILEMAP (NIL (1882 2546 (NEWSHADEITEM 1892 . 2544)))))
STOP