(FILECREATED "10-Jul-86 18:35:59" {QV}<NOTECARDS>1.3K>RHTPATCH063.;1 2543   

      changes to:  (VARS RHTPATCH063COMS)
		   (FNS NC.MakeLinkIndex))


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

(PRETTYCOMPRINT RHTPATCH063COMS)

(RPAQQ RHTPATCH063COMS ((* * Fix to LINKINDEXCARD)
			  (FNS NC.MakeLinkIndex)))
(* * Fix to LINKINDEXCARD)

(DEFINEQ

(NC.MakeLinkIndex
  (LAMBDA (Card Title NoDisplayFlg SpecialArgsList)          (* rht: "10-Jul-86 18:27")

          (* * Gather all instances of a given set of linktypes, printing the titles of cards at the from and to ends of the 
	  link.)



          (* * rht 10/24/84: Now callable from Programmer's interface. If NoDisplayFlg it non-nil, then will build LinkIndex 
	  invisibly. If SpecialArgsList is non-nil, then should be list of (<linklabels> <backpointersP>))



          (* * rht 9/21/85: Now uses stylesheet for LinkIndexSpecs. Broke out workhorse code into the function 
	  NC.ComputeLinkIndex)



          (* * fgh 11/17/85 Updated to handle Card objects.)



          (* * rht 4/11/86: Took out call to NCP.AddTitleBarMenuItems. Now done in NC.AddLinkIndexCard.
	  Also changed to call NC.ApplySuper.)



          (* * rht 7/10/86: Was buggy in case when NC.AskLinkIndexSpecs returned nil, forcing deletion of card.)


    (LET ((LinkLabels (CAR SpecialArgsList))
	  (BackLinksFlg (CADR SpecialArgsList))
	  WindowOrCard Window IndexCard LinkIndexSpecs)
         (SPAWN.MOUSE)
         (SETQ WindowOrCard (NC.ApplySupersFn MakeFn Card (CONCAT "Link Index: " (DATE))
						NoDisplayFlg))
         (if NoDisplayFlg
	     then (SETQ Window NIL)
		    (SETQ IndexCard WindowOrCard)
	   else (SETQ Window WindowOrCard)
		  (SETQ IndexCard (NC.CoerceToCard WindowOrCard)))
         (if (NOT NoDisplayFlg)
	     then (SETQ LinkIndexSpecs (NC.AskLinkIndexSpecs Window LinkLabels BackLinksFlg T))
		    (SETQ LinkLabels (CAR LinkIndexSpecs))
		    (SETQ BackLinksFlg (CADR LinkIndexSpecs)))
         (if (AND (NOT NoDisplayFlg)
		      (NULL LinkIndexSpecs))
	     then (NC.DeleteNoteCards IndexCard T)
		    NIL
	   else (NC.ComputeLinkIndex IndexCard LinkLabels BackLinksFlg)
		  (if NoDisplayFlg
		      then IndexCard
		    else (NC.ClearMsg Window T)
			   Window)))))
)
(PUTPROPS RHTPATCH063 COPYRIGHT ("Xerox Corporation" 1986))
(DECLARE: DONTCOPY
  (FILEMAP (NIL (376 2461 (NC.MakeLinkIndex 386 . 2459)))))
STOP