(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP")
(FILECREATED "25-Jan-89 10:51:24" {QV}<NOTECARDS>1.3LNEXT>RARPATCH061.;2 5105   

      changes to%:  (VARS RARPATCH061COMS)
                    (FNS NC.CheckFiling NCP.SetDefaultFileBox NCP.GetDefaultFileBox 
                         NCP.DefaultFileBox NC.DefaultFileBoxFetchFn NC.DefaultFileBoxSelectionFn)

      previous date%: "24-Jan-89 19:24:47" {QV}<ROGERS>LISP>RARPATCH061.;1)


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

(PRETTYCOMPRINT RARPATCH061COMS)

(RPAQQ RARPATCH061COMS (
                        (* ;; "rar 1/25/89  Now checks for the default filebox instead of just putting unfiled cards into the TBF FileBox")

                        
                        (* ;; "From  NCCARDS")

                        (FNS NC.CheckFiling)
                        
                        (* ;; 
                        "Additions to the Programmer's Interface to set and get the default filebox")

                        
                        (* ;; "Add to NCPROGINT")

                        (FNS NCP.DefaultFileBox)))



(* ;; 
"rar 1/25/89  Now checks for the default filebox instead of just putting unfiled cards into the TBF FileBox"
)




(* ;; "From  NCCARDS")

(DEFINEQ

(NC.CheckFiling
  [LAMBDA (Card InterestedWindow)                            (* ; "Edited 25-Jan-89 10:26 by RAR")

         (* Check to make sure this card has a contents hook of some sort.
         If not, hook it up to a contents card.)

         (* * rht 12/8/84%: Now checks whether both cards *and* fileboxes have been filed.)

         (* * rht 12/9/84%: Now files in orphan filebox if NC.ForceFiling flag is off, 
         without bothering the user.)

         (* * rht 2/9/85%: Added call to NC.CardNeedsFilingP)

         (* * fgh |11/12/85| Updated to handle Card and NoteFile objects.)

         (* * fgh |6/9/86| Updated to set operation in progress indicator.)

         (* * rg |1/28/87| Make sure we always return a useful value)

         (* * rg |3/4/87| rewritten for new version of NC.ProtectedCardOperation)

         (* * rht 3/23/87%: Now takes InterestedWindow arg.)

         (* * Rht 3/24/87%: Now calls NC.CoerceToInterestedWindow)

         (* * rht 3/26/87%: Changed msg slightly.)

    (* ;; 
  "rar 1/24/89 File unfiled cards in the default filebox (not always TBF).  Changed message as well.")

    (NC.ProtectedCardOperation Card "Filing" NIL
           (COND
              [(NC.CardNeedsFilingP Card)
               (OR InterestedWindow (SETQ InterestedWindow (NC.CoerceToInterestedWindow Card)))
               (COND
                  (NC.ForceFilingFlg (NC.MakeFilingLinks Card (CONCAT "This card (" (NC.RetrieveTitle
                                                                                     Card)
                                                                     
                                            ") is not currently filed in a FileBox in this notefile."
                                                                     (CHARACTER 13))
                                            InterestedWindow))
                  (T                                         (* ; 
                              "NC.HookToOrphanCard is doing the work and returns the parent(FB) card")
                     (NC.PrintMsg InterestedWindow T "This card (" (NC.RetrieveTitle Card)
                            ") is not currently filed in a FileBox."
                            (CHARACTER 13)
                            "It is being filed in the"
                            [NCP.CardTitle (NC.HookToOrphanCard Card (NCP.DefaultFileBox
                                                                      (fetch (Card NoteFile)
                                                                         of Card]
                            " FileBox."
                            (CHARACTER 13]
              (T T])
)



(* ;; "Additions to the Programmer's Interface to set and get the default filebox")




(* ;; "Add to NCPROGINT")

(DEFINEQ

(NCP.DefaultFileBox
  [LAMBDA (noteFileOrWindow newDefaultFileBox)               (* ; "Edited 25-Jan-89 10:31 by RAR")

    (* ;; " Set the default filebox to the newFileBox if specified. Returns the current value")

    (LET* [(noteFile (if (WINDOWP noteFileOrWindow)
                         then (NCP.WhichNoteFile noteFileOrWindow)
                       else noteFileOrWindow))
           (previousCard (OR (NCP.LookupCardByName 'DefaultFileBox noteFile)
                             (fetch (NoteFile ToBeFiledCard) of noteFile]
          (if (AND newDefaultFileBox (NC.SameNoteFileP noteFile (NCP.CardNoteFile newDefaultFileBox))
                   )
              then (NCP.RegisterCardByName 'DefaultFileBox newDefaultFileBox))
          previousCard])
)
(PUTPROPS RARPATCH061 COPYRIGHT ("Xerox Corporation" 1989))
(DECLARE%: DONTCOPY
  (FILEMAP (NIL (1314 4079 (NC.CheckFiling 1324 . 4077)) (4206 5022 (NCP.DefaultFileBox 4216 . 5020))))
)
STOP