(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10) (FILECREATED " 1-Feb-2022 17:00:03"  {DSK}kaplan>Local>medley3.5>my-medley>lispusers>LOOKUPINFILES.;2 32247 :CHANGES-TO (FNS MakeLookupWindow ShowLookUpString) :PREVIOUS-DATE "23-Feb-89 13:20:33" {DSK}kaplan>Local>medley3.5>my-medley>lispusers>LOOKUPINFILES.;1) (* ; " Copyright (c) 1986, 1988-1989 by Xerox Corporation. ") (PRETTYCOMPRINT LOOKUPINFILESCOMS) (RPAQQ LOOKUPINFILESCOMS ( (* ;;; "Fast lookup in files") (LOCALVARS . T) (SPECVARS PROMPTWINDOW) (FNS AddFileToList DeleteFileFromList Lookup-CacheFile Lookup-CacheFiles Lookup-EditFile Lookup-KillProcess Lookup-MakeIconWindow Lookup-RecacheFile Lookup-RightbuttonFn Lookup-CacheFile Lookup-RightbuttonFn Lookup-StartProcess Lookup-TitleMenuFn Lookup-WhenClosedFn Lookup-WhenOpenedFn LookupAttachedMenu LookupString MakeLookupWindow ShowLookUpString) (FUNCTIONS Lookup-Notify busy-protect) (VARS *LookupPrompt* DEFAULT-LOOKUP-BITMAP DEFAULT-LOOKUP-MASK (LOOKUP-DEFAULT-EDITREGION (CREATEREGION 300 300 400 200)) (LOOKUP-DEFAULT-ICONPOSITION (CREATEPOSITION 300 300))) (GLOBALVARS *LookupPrompt* DEFAULT-LOOKUP-BITMAP DEFAULT-LOOKUP-MASK LOOKUP-DEFAULT-EDITREGION LOOKUP-DEFAULT-ICONPOSITION) (DECLARE%: DONTCOPY (RECORDS Lookup-CacheRecord)))) (* ;;; "Fast lookup in files") (DECLARE%: DOEVAL@COMPILE DONTCOPY (LOCALVARS . T) ) (DECLARE%: DOEVAL@COMPILE DONTCOPY (SPECVARS PROMPTWINDOW) ) (DEFINEQ (AddFileToList [LAMBDA (WINDOW) (* ; "Edited 26-Jan-89 10:24 by dgb:") (LET* (entry fullname (OLD.TTYPROCESS (TTY.PROCESS (THIS.PROCESS))) (OLDDISPLAYSTREAM (TTYDISPLAYSTREAM WINDOW))) (busy-protect WINDOW "adding file to list" (LET ((fileName (TTYIN "New File: " NIL NIL '(STRING NORAISE) NIL NIL NIL NIL))) (TTY.PROCESS T) (Lookup-Notify WINDOW T "Trying to add " fileName T) (COND ((SETQ fullname (FULLNAME fileName)) [WINDOWPROP WINDOW 'FileList (CONS fileName (WINDOWPROP WINDOW 'FileList] [WINDOWPROP WINDOW 'CacheForFiles (CONS (SETQ entry (create Lookup-CacheRecord fileName _ fullname originalFileName _ fileName)) (WINDOWPROP WINDOW 'CacheForFiles] (Lookup-CacheFile entry WINDOW) (Lookup-Notify WINDOW "Caching done" T)) (fileName (Lookup-Notify WINDOW T fileName " not found." T]) (DeleteFileFromList [LAMBDA (window) (* ; "Edited 26-Jan-89 21:37 by dgb:") (LET* [(ITEMS (WINDOWPROP window 'CacheForFiles] (CL:IF ITEMS [busy-protect window "deleting file from list" (LET* [(CHOSEN (MENU (create MENU ITEMS _ (for ITEM in ITEMS collect (LIST (fetch originalFileName of ITEM) (KWOTE ITEM] (CL:WHEN CHOSEN (WINDOWPROP window 'CacheForFiles (REMOVE CHOSEN ITEMS)) [WINDOWPROP window 'FileList (REMOVE (fetch originalFileName of CHOSEN) (WINDOWPROP window 'FileList])] (Lookup-Notify window "No files"))]) (Lookup-CacheFile [LAMBDA (entry msgStream window) (* ; "Edited 23-Feb-89 13:04 by dgb:") (LET* (localFile strm textStream (file (fetch fileName of entry))) (WINDOWPROP window 'lastFileIndex NIL) (WINDOWPROP window 'lastEntryIndex NIL) (CL:WHEN file (SETQ localFile (PACKFILENAME.STRING 'HOST 'NODIRCORE 'VERSION NIL 'BODY file)) (SETQ file (PACKFILENAME 'VERSION NIL 'BODY file)) (Lookup-Notify msgStream "Looking for: " (FILENAMEFIELD file 'NAME) T) (COND ((FINDFILE file) (Lookup-Notify msgStream "Caching: " (FILENAMEFIELD file 'NAME) T) (create Lookup-CacheRecord smashing entry fileName _ file openStream _ (SETQ strm (OPENSTREAM (COPYFILE file localFile) 'INPUT)) textStream _ (SETQ textStream (OPENTEXTSTREAM strm)) textLength _ (fetch TEXTLEN of (TEXTOBJ textStream)) originalFileName _ (fetch originalFileName of entry))) (T (SETQ localFile NIL) (Lookup-Notify msgStream file " not found" T) (create Lookup-CacheRecord smashing entry fileName _ file))))]) (Lookup-CacheFiles [LAMBDA (WINDOW) (* ; "Edited 26-Jan-89 21:09 by dgb:") (* ;;; "Cache the files in core") (busy-protect WINDOW "caching files." (LET* [(CACHE NIL) (OLDCACHE (WINDOWPROP WINDOW 'CacheForFiles)) (FILELIST (CL:IF OLDCACHE (for ITEM in OLDCACHE collect (fetch originalFileName of ITEM)) (WINDOWPROP WINDOW 'FileList))] (WINDOWPROP WINDOW 'FileList FILELIST) (WINDOWPROP WINDOW 'CacheForFiles NIL) (Lookup-Notify WINDOW T "Caching files in core..." T) [for file in FILELIST do (LET ((FULLNAME (FULLNAME file))) (if FULLNAME then (CL:PUSH (create Lookup-CacheRecord fileName _ FULLNAME originalFileName _ file) CACHE) else (Lookup-Notify WINDOW file " not found" T] (for entry in CACHE do (Lookup-CacheFile entry WINDOW WINDOW)) (Lookup-Notify WINDOW T "Caching done" T) (WINDOWPROP WINDOW 'CacheForFiles (REVERSE CACHE]) (Lookup-EditFile [LAMBDA (window) (* ; "Edited 26-Jan-89 15:53 by dgb:") (LET* [[file (COND [(WINDOWPROP window 'lastFileIndex) (CAR (NTH (WINDOWPROP window 'FileList) (WINDOWPROP window 'lastFileIndex] (T (LET [(ITEMS (WINDOWPROP window 'CacheForFiles] (CL:IF ITEMS [MENU (create MENU ITEMS _ (for ITEM in ITEMS collect (LIST (fetch originalFileName of ITEM) (KWOTE (fetch fileName of ITEM] (PROGN (Lookup-Notify window "No files") NIL))] [w (AND file (TEDIT (MKATOM file] (n (WINDOWPROP window 'lastEntryIndex] (AND file n (TEDIT.NORMALIZECARET w (TEDIT.SETSEL w n 0))) w]) (Lookup-KillProcess [LAMBDA (WINDOW) (* ; "Edited 23-Nov-88 13:03 by dgb:") (* ;;; "Kill the lookup process associated with the window") (LET* [(PROMPT (GETPROMPTWINDOW WINDOW)) (PROC (WINDOWPROP PROMPT 'PROCESS] (WINDOWPROP PROMPT 'PROCESS NIL) (WINDOWPROP WINDOW 'lookupProcess NIL) (COND ((PROCESSP PROC) (AND (TTY.PROCESSP PROC) (TTY.PROCESS T)) (DEL.PROCESS PROC) (PROCESSPROP PROC 'PROCWINDOW NIL]) (Lookup-MakeIconWindow [LAMBDA (window iconBM iconMask iconPosition icontitle)(* ; "Edited 26-Jan-89 15:33 by dgb:") (OR iconBM (SETQ iconBM DEFAULT-LOOKUP-BITMAP) (SETQ iconMask DEFAULT-LOOKUP-MASK)) (LET [(ICONWINDOW (COND (icontitle (TITLEDICONW (create TITLEDICON ICON _ iconBM MASK _ iconMask TITLEREG _ (CREATEREGION 2 2 (- (BITMAPWIDTH iconBM) 4) 26)) icontitle DEFAULTICONFONT (OR iconPosition LOOKUP-DEFAULT-ICONPOSITION) T)) (T (ICONW iconBM iconMask (OR iconPosition LOOKUP-DEFAULT-ICONPOSITION) T] (* ;;; "Make icon for this window") (WINDOWPROP window 'ICON ICONWINDOW) (WINDOWPROP ICONWINDOW 'CLOSEFN (FUNCTION (LAMBDA (W) (LET [(MAIN (WINDOWPROP W 'ICONFOR] (EXPANDW W]) (Lookup-RecacheFile [LAMBDA (WINDOW) (* ; "Edited 26-Jan-89 21:01 by dgb:") (busy-protect WINDOW "recaching a file." (LET [(index (WINDOWPROP WINDOW 'lastFileIndex] (CLEARW (GETPROMPTWINDOW WINDOW)) (COND (index (Lookup-Notify WINDOW "Recaching" T) (Lookup-CacheFile (CAR (NTH (WINDOWPROP WINDOW 'CacheForFiles) index)) WINDOW WINDOW) (Lookup-Notify WINDOW "Caching done" T) (CL:WHEN (OPENWP WINDOW) (ShowLookUpString (WINDOWPROP WINDOW 'searchString) WINDOW index 0))) (T (Lookup-Notify WINDOW T "No file selected" T]) (Lookup-RightbuttonFn [LAMBDA (W s) (* ; "Edited 26-Jan-89 21:24 by dgb:") (SELECTQ [MENU (create MENU ITEMS _ '(Move Shape Close Redisplay Shrink] (Move (MOVEW W)) (Shape (SHAPEW W)) (Close (CL:IF (PROGN (CLEARW W) (MOUSECONFIRM "Are you sure you want to close this Lookup window? " NIL W T))(PROGN (Lookup-KillProcess W) (CLOSEW W)) (REDISPLAYW W NIL T))) (Redisplay (REDISPLAYW W NIL T)) (Shrink (SHRINKW W)) NIL]) (Lookup-CacheFile [LAMBDA (entry msgStream window) (* ; "Edited 23-Feb-89 13:04 by dgb:") (LET* (localFile strm textStream (file (fetch fileName of entry))) (WINDOWPROP window 'lastFileIndex NIL) (WINDOWPROP window 'lastEntryIndex NIL) (CL:WHEN file (SETQ localFile (PACKFILENAME.STRING 'HOST 'NODIRCORE 'VERSION NIL 'BODY file)) (SETQ file (PACKFILENAME 'VERSION NIL 'BODY file)) (Lookup-Notify msgStream "Looking for: " (FILENAMEFIELD file 'NAME) T) (COND ((FINDFILE file) (Lookup-Notify msgStream "Caching: " (FILENAMEFIELD file 'NAME) T) (create Lookup-CacheRecord smashing entry fileName _ file openStream _ (SETQ strm (OPENSTREAM (COPYFILE file localFile) 'INPUT)) textStream _ (SETQ textStream (OPENTEXTSTREAM strm)) textLength _ (fetch TEXTLEN of (TEXTOBJ textStream)) originalFileName _ (fetch originalFileName of entry))) (T (SETQ localFile NIL) (Lookup-Notify msgStream file " not found" T) (create Lookup-CacheRecord smashing entry fileName _ file))))]) (Lookup-RightbuttonFn [LAMBDA (W s) (* ; "Edited 26-Jan-89 21:24 by dgb:") (SELECTQ [MENU (create MENU ITEMS _ '(Move Shape Close Redisplay Shrink] (Move (MOVEW W)) (Shape (SHAPEW W)) (Close (CL:IF (PROGN (CLEARW W) (MOUSECONFIRM "Are you sure you want to close this Lookup window? " NIL W T))(PROGN (Lookup-KillProcess W) (CLOSEW W)) (REDISPLAYW W NIL T))) (Redisplay (REDISPLAYW W NIL T)) (Shrink (SHRINKW W)) NIL]) (Lookup-StartProcess [LAMBDA (WINDOW) (* ; "Edited 23-Nov-88 13:26 by dgb:") (AND (OPENWP WINDOW) [NOT (PROCESSP (WINDOWPROP (GETPROMPTWINDOW WINDOW) 'PROCESS] (COND ((WINDOWPROP WINDOW 'BUSYACTION) (CLEARW WINDOW) (PRINTOUT WINDOW T "Busy with " (WINDOWPROP WINDOW 'BUSYACTION) T) (* ;; "don't start process") NIL) (T T)) (ADD.PROCESS `(LookupString ,WINDOW) 'NAME (WINDOWPROP WINDOW 'ProcessName) 'WINDOW (GETPROMPTWINDOW WINDOW]) (Lookup-TitleMenuFn [LAMBDA (window) (* ; "Edited 25-Jan-89 09:57 by dgb:") (SELECTQ [MENU (if (WINDOWPROP window 'lastFileIndex) then [LOADTIMECONSTANT (create MENU ITEMS _ '(["Edit file named in window title" 'Edit "Edit file named in window title" (SUBITEMS ("Select file to edit" 'EditFile] ("Add new file" 'AddFile "Add specified file to list") ("Delete file from list" 'DeleteFile "Delete file from those used for lookup" ) ("Recache file named in window title" 'RecacheFile "Recache file named in window title" (SUBITEMS ("Recache all files" 'Recache] else (LOADTIMECONSTANT (create MENU ITEMS _ '(("Select file to edit" 'EditFile "Make choice from current files" ) ("Add new file" 'AddFile "Add specified file to list") ("Delete file from list" 'DeleteFile "Delete file from those used for lookup" ) ("Recache all files" 'Recache] (AddFile (AddFileToList window)) (DeleteFile (DeleteFileFromList window)) (Recache (WINDOWPROP window 'TITLE "") (CLEARW window) (Lookup-CacheFiles window T)) (RecacheFile (Lookup-RecacheFile window)) (Edit (Lookup-EditFile window)) (EditFile (WINDOWPROP window 'lastFileIndex NIL) (WINDOWPROP window 'TITLE "") (Lookup-EditFile window)) NIL]) (Lookup-WhenClosedFn [LAMBDA (window) (* ; "Edited 25-Jan-89 13:34 by dgb:") (* ;;; "Kill the process associated with the window .") (Lookup-KillProcess window) (WINDOWPROP window 'CacheForFiles NIL) (WINDOWPROP window 'OPENFN NIL) window]) (Lookup-WhenOpenedFn [LAMBDA (WINDOW) (* ; "Edited 26-Jan-89 15:56 by dgb:") (* ;;; "The OPENFN for the lookup window") (WINDOWPROP WINDOW 'RIGHTBUTTONFN 'Lookup-RightbuttonFn) (CLEARW (GETPROMPTWINDOW WINDOW)) (Lookup-StartProcess WINDOW]) (LookupAttachedMenu [LAMBDA (ITEM menu button) (* ; "Edited 23-Nov-88 13:05 by dgb:") (LET* [(WINDOW (MAINWINDOW (WFROMMENU menu))) (oldName (WINDOWPROP WINDOW 'searchString] (SELECTQ (CADR ITEM) (NEXT (COND (oldName (Lookup-KillProcess WINDOW) (PRINTOUT (GETPROMPTWINDOW WINDOW) oldName T) (ShowLookUpString (WINDOWPROP WINDOW 'searchString) WINDOW (OR (NUMBERP (WINDOWPROP WINDOW 'lastFileIndex)) 1) (ADD1 (OR (NUMBERP (WINDOWPROP WINDOW 'lastEntryIndex)) -1))) (Lookup-StartProcess WINDOW)))) (SHRINK (SHRINKW WINDOW)) NIL]) (LookupString [LAMBDA (mainWindow) (* ; "Edited 26-Jan-89 19:44 by dgb:") (* ;;; "The main program for the LookupInFiles Program") (OPENW mainWindow) (LET ((w (GETPROMPTWINDOW mainWindow))) (CLEARW w) (TTYDISPLAYSTREAM w) (TTY.PROCESS (THIS.PROCESS)) (bind lookup-string do (WINDOWPROP mainWindow 'RIGHTBUTTONFN 'Lookup-RightbuttonFn) (SETQ lookup-string (RESETVAR TTYINREADMACROS '((19 T CONS)) (TTYIN *LookupPrompt* NIL NIL '(STRING NORAISE) NIL NIL NIL NIL))) (COND ((LISTP lookup-string) (SHRINKW mainWindow) (PROCESS.RETURN)) [(NULL lookup-string) (LET [(oldName (WINDOWPROP mainWindow 'searchString] (if oldName then (PRINTOUT w *LookupPrompt* oldName T) (ShowLookUpString oldName mainWindow (WINDOWPROP mainWindow 'lastFileIndex) (ADD1 (OR (WINDOWPROP mainWindow 'lastEntryIndex) -1] (T (ShowLookUpString lookup-string mainWindow))) until (NOT (OPENWP w]) (MakeLookupWindow [LAMBDA (fileList processName editRegion iconBM iconMask iconPosition iconTitle) (* ; "Edited 1-Feb-2022 16:59 by rmk") (* ; "Edited 25-Jan-89 13:37 by dgb:") (* ;; "Compute defaults") (LET [(window (CREATEMENUEDWINDOW (create MENU CENTERFLG _ T MENUFONT _ '(HELVETICA 12 BOLD) ITEMS _ '(("Shrink" SHRINK "Shrink window to an icon") ("Next Occurrence" NEXT "Find next occurrence of string.")) WHENSELECTEDFN _ (FUNCTION LookupAttachedMenu)) "" 'TOP (OR editRegion LOOKUP-DEFAULT-EDITREGION] (* ;;; "Create Menued window with prompt") (GETPROMPTWINDOW window 2 '(HELVETICA 12 BOLD)) (* ;;; "Create icon") (Lookup-MakeIconWindow window iconBM iconMask iconPosition iconTitle) (* ;;; "Opening starts process, and checks if caching needed") (WINDOWADDPROP window 'OPENFN (FUNCTION Lookup-WhenOpenedFn)) (WINDOWADDPROP window 'EXPANDFN (FUNCTION Lookup-WhenOpenedFn)) (* ;;; "Shrinking and closing kills the process. ") [WINDOWPROP window 'CLOSEFN (CONS (FUNCTION Lookup-KillProcess) (WINDOWPROP window 'CLOSEFN] (WINDOWPROP window 'RIGHTBUTTONFN 'Lookup-RightbuttonFn) [WINDOWPROP window 'SHRINKFN (CONS (FUNCTION Lookup-KillProcess) (WINDOWPROP window 'SHRINKFN] (* ;;; "Fix title menu for this TEDIT window") (OPENTEXTSTREAM NIL window NIL NIL '(READONLY T TEDIT.TITLEMENUFN Lookup-TitleMenuFn)) (WINDOWPROP window 'TEDIT.TITLEMENUFN 'Lookup-TitleMenuFn) (* ;;; "Cache FileList in Window") (WINDOWPROP window 'FileList (MKLIST fileList)) (* ;;; "Store name for PSW") (WINDOWPROP window 'ProcessName (OR processName 'Lookup)) (* ;;; "This should be default for attached window") (for w1 in (ALLATTACHEDWINDOWS window) do (WINDOWPROP w1 'PASSTOMAINCOMS T) (WINDOWPROP w1 'RIGHTBUTTONFN 'NILL)) [ADD.PROCESS `(Lookup-CacheFiles ,window] (SHRINKW window) window]) (ShowLookUpString [LAMBDA (name-or-string window lst-index start-pos) (* ; "Edited 1-Feb-2022 16:59 by rmk") (* ; "Edited 22-Nov-88 15:10 by dgb:") (OR lst-index (SETQ lst-index 1)) (OR start-pos (SETQ start-pos 0)) (WINDOWPROP window 'searchString name-or-string) (for elt in (NTH (WINDOWPROP window 'CacheForFiles) lst-index) as file-index from lst-index bind pos openStream sel textStream when (SETQ openStream (fetch openStream of elt)) do (if (NOT (OPENP openStream)) then (OPENSTREAM openStream 'INPUT) (WINDOWPROP window 'lastFileIndex NIL)) (if (SETQ pos (FILEPOS name-or-string openStream start-pos (fetch textLength of elt) NIL NIL UPPERCASEARRAY)) then (WINDOWPROP window 'lastEntryIndex pos) (SETQ sel (TEDIT.SETSEL (SETQ textStream (fetch textStream of elt)) (ADD1 pos) (NCHARS name-or-string))) [if (EQP file-index (WINDOWPROP window 'lastFileIndex)) then (TEDIT.NORMALIZECARET textStream sel) else (WINDOWPROP window 'TITLE (CONCAT "Looking in: " (fetch fileName of elt))) (WINDOWPROP window 'lastFileIndex file-index) (OPENTEXTSTREAM textStream window NIL NIL '(READONLY T] (RETURN (PROG1 (TEDIT.SET.SEL.LOOKS sel 'PENDINGDEL) (TEDIT.SHOWSEL textStream T sel))) else (SETQ start-pos 0)) finally (WINDOWPROP window 'lastFileIndex NIL) (WINDOWPROP window 'lastEntryIndex NIL) (WINDOWPROP window 'TITLE "") (TEDIT.SETSEL (OPENTEXTSTREAM (OPENSTREAMSTRING (CONCAT name-or-string " not found.")) window NIL NIL '(READONLY T)) 1 (NCHARS name-or-string) 'RIGHT T]) ) (DEFMACRO Lookup-Notify (WINDOW &REST BODY) `(PRINTOUT (OR (OPENWP ,WINDOW) PROMPTWINDOW) \, BODY)) (DEFMACRO busy-protect (WINDOW NEW-BUSY-ACTION body-form unwind-form) `(CL:UNLESS (WINDOWPROP ,WINDOW 'BUSYACTION) (CL:UNWIND-PROTECT (PROGN (WINDOWPROP ,WINDOW 'BUSYACTION ,NEW-BUSY-ACTION) (AND (OPENWP ,WINDOW) (CLEARW ,WINDOW)) (Lookup-KillProcess ,WINDOW) ,body-form) ,unwind-form (WINDOWPROP ,WINDOW 'BUSYACTION NIL) (Lookup-StartProcess ,WINDOW)))) (RPAQQ *LookupPrompt* "Lookup String: ") (RPAQQ DEFAULT-LOOKUP-BITMAP #*(62 92)OOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLN@@@@@@@@@@@@@ALL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@OOH@@@@@@@@@LL@COON@@@@@@@@@LL@GOOO@@@@@@@@@LL@OOOOH@@@@@@@@LLAOOOOL@@@@@@@@LLAOOOOL@@@@@@@@LLAOOOOL@@@@@@@@LLCOOOON@@@@@@@@LLCOOOON@@@@@@@@LLCOOOON@@@@D@@@LLCOOOON@@@@N@A@LLCOOOON@@@AO@C@LLCOOOON@@@COHG@LLCOOOON@@@GOLO@LLAOOOOL@@@OONO@LLAOOOOL@@AOOOG@LLAOOOOL@@COOOK@LL@OOOOH@@GOOOM@LL@GOOO@@@OOOOO@LL@COON@@AOOOOO@LL@@OOH@@COOOON@LL@L@@@@@GOOOOL@LL@N@@@@@GOOOOH@LL@OON@@@COOOO@@LL@OOO@@@AOOON@@LL@OOOH@@@OOOL@@LL@OOOL@@@GOOH@@LL@OOON@@@COO@@@LL@OOOO@@@AON@@@LL@OOOOH@@@OL@@@LL@OOOOL@@NGH@@@LL@OOOON@AOC@@@@LL@OOOOO@COH@@@@LL@OOOOOHGOH@@@@LL@OOOOOLOOH@@@@LL@OOOOOOOO@@@@@LL@OOOOOOON@@@@@LL@OOOOOOOL@@@@@LL@OOOOOOOH@@@@@LL@OOONOOO@@@@@@LL@OOONGON@@@@@@LL@OOONCOL@@@@@@LL@OOONAOH@@@@@@LL@OOON@O@@@@@@@LL@GOON@F@@@@@@@LL@COON@@@@@@@@@LL@AOON@@@@@@@@@LL@@OON@@@@@@@@@LL@@GON@@@@@@@@@LL@@CON@@@@@@@@@LL@@AON@@@@@@@@@LL@@@ON@@@@@@@@@LL@@@GN@@@@@@@@@LL@@@CN@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LL@@@@@@@@@@@@@@LOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOL ) (RPAQQ DEFAULT-LOOKUP-MASK #*(62 92)OOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOLOOOOOOOOOOOOOOOL ) (RPAQ LOOKUP-DEFAULT-EDITREGION (CREATEREGION 300 300 400 200)) (RPAQ LOOKUP-DEFAULT-ICONPOSITION (CREATEPOSITION 300 300)) (DECLARE%: DOEVAL@COMPILE DONTCOPY (GLOBALVARS *LookupPrompt* DEFAULT-LOOKUP-BITMAP DEFAULT-LOOKUP-MASK LOOKUP-DEFAULT-EDITREGION LOOKUP-DEFAULT-ICONPOSITION) ) (DECLARE%: DONTCOPY (DECLARE%: EVAL@COMPILE (RECORD Lookup-CacheRecord (fileName openStream textStream textLength originalFileName)) ) ) (PUTPROPS LOOKUPINFILES COPYRIGHT ("Xerox Corporation" 1986 1988 1989)) (DECLARE%: DONTCOPY (FILEMAP (NIL (1645 27979 (AddFileToList 1655 . 3003) (DeleteFileFromList 3005 . 4252) ( Lookup-CacheFile 4254 . 6154) (Lookup-CacheFiles 6156 . 7719) (Lookup-EditFile 7721 . 8985) ( Lookup-KillProcess 8987 . 9568) (Lookup-MakeIconWindow 9570 . 11062) (Lookup-RecacheFile 11064 . 12498 ) (Lookup-RightbuttonFn 12500 . 13124) (Lookup-CacheFile 13126 . 15026) (Lookup-RightbuttonFn 15028 . 15652) (Lookup-StartProcess 15654 . 16370) (Lookup-TitleMenuFn 16372 . 19424) (Lookup-WhenClosedFn 19426 . 19744) (Lookup-WhenOpenedFn 19746 . 20060) (LookupAttachedMenu 20062 . 21059) (LookupString 21061 . 22674) (MakeLookupWindow 22676 . 25328) (ShowLookUpString 25330 . 27977)) (27981 28116 ( Lookup-Notify 27981 . 28116)) (28118 28624 (busy-protect 28118 . 28624))))) STOP