(FILECREATED "23-Sep-86 10:46:53" {QV}<NOTECARDS>1.3K>NEXT>RHTPATCH111.;1 2666   

      changes to:  (VARS RHTPATCH111COMS)
		   (FNS NC.AddLinksToCard))


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

(PRETTYCOMPRINT RHTPATCH111COMS)

(RPAQQ RHTPATCH111COMS ((* * Change to NCLINKS)
			  (FNS NC.AddLinksToCard)))
(* * Change to NCLINKS)

(DEFINEQ

(NC.AddLinksToCard
  (LAMBDA (CardIdentifier LinkLabel DestinationCards)        (* rht: "23-Sep-86 10:45")

          (* * Adds multiple links to card designated by CardIdentifier. Rest of args can be NIL.)



          (* * fgh 6/9/86 Added Checks to make sure other interaction operation not in porgress.)



          (* * rht 9/23/86: Fixed bug in function passed to NC.SelectNoteCards.)


    (LET ((SourceCard (NC.CoerceToCard CardIdentifier))
	  CardType Window OperationInProgress)
         (SETQ Window (NC.FetchWindow SourceCard))
         (if (AND (NULL LinkLabel)
		      (NULL DestinationCards)
		      (SETQ OperationInProgress (NC.OperationInProgress SourceCard)))
	     then 

          (* * Another interaction operation is in progress on this card and we have to interact with the user.
	  Can't do.)


		    (NC.PrintOperationInProgressMsg Window "Insert Links" OperationInProgress)
	   else (NC.ProtectedCardOperation SourceCard InsertLinks (SETQ CardType (NC.FetchType
						 SourceCard))
					     (OR LinkLabel (SETQ LinkLabel
						     (NC.AskLinkLabel Window NIL NIL T T)))
					     (if LinkLabel
						 then
						  (OR DestinationCards
							(SETQ DestinationCards
							  (NC.SelectNoteCards
							    NIL
							    (FUNCTION (LAMBDA (SelectedCard)
								(COND
								  ((NOT (NC.SameCardP 
										     SelectedCard 
										       SourceCard))
								    T)
								  (T (NC.PrintMsg (NC.FetchWindow
										      SourceCard)
										    T 
							    "A Card/Box cannot point to itself. "
										    (CHARACTER
										      13)
										    
									     "Selection ignored."
										    (CHARACTER
										      13))
								     NIL))))
							    NC.SelectingMultipleCardsMenu SourceCard 
							    NIL 
					     "Please select the Cards or Boxes to be pointed to.")))
						  (NC.ClearMsg Window T)
						  (for DestinationCard in DestinationCards
						     do (NC.AddLinkToCard CardIdentifier 
									      LinkLabel 
									      DestinationCard))))))))
)
(PUTPROPS RHTPATCH111 COPYRIGHT ("Xerox Corporation" 1986))
(DECLARE: DONTCOPY
  (FILEMAP (NIL (377 2584 (NC.AddLinksToCard 387 . 2582)))))
STOP