1
0
mirror of synced 2026-04-25 03:45:30 +00:00

LAFITE files: Tedit--strings are filenames

more of #666
This commit is contained in:
rmkaplan
2022-02-19 18:35:11 -08:00
parent 160cf35f91
commit c4fac75f0a
8 changed files with 476 additions and 382 deletions

View File

@@ -1,9 +1,14 @@
(DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
(FILECREATED "30-Sep-2021 22:58:58" 
{DSK}<USERS>KAPLAN>LOCAL>MEDLEY3.5>GIT-MEDLEY>LIBRARY>LAFITE>LAFITESEND.;1 99805
previous date%: " 3-Dec-2000 14:53:30"
{DSK}<USERS>KAPLAN>LOCAL>MEDLEY3.5>GIT-MEDLEY>LIBRARY>LAFITE>LAFITESEND.;1)
(FILECREATED " 7-Feb-2022 12:04:09" 
{DSK}<Users>kaplan>Local>medley3.5>my-medley>library>lafite>LAFITESEND.;2 100778
:CHANGES-TO (FILES LAFITEDECLS)
(FNS \SENDMESSAGE.RESTARTABLE \SENDMESSAGE LAFITE.SENDMESSAGE MAKEXXXSUPPORTFORM
MAKENEWMESSAGEFORM MAKEANSWERFORM LAFITE.FILL.IN.ANSWER.FORM MAKEFORWARDFORM)
:PREVIOUS-DATE "30-Sep-2021 22:58:58"
{DSK}<Users>kaplan>Local>medley3.5>my-medley>library>lafite>LAFITESEND.;1)
(* ; "
@@ -501,16 +506,18 @@ Copyright (c) 1984-1990, 1993, 1999-2000, 2021 by Xerox Corporation.
(DEFINEQ
(\SENDMESSAGE
[LAMBDA (FORM TEDITPROPS FORMNAME) (* ; "Edited 10-Feb-89 12:22 by bvm")
[LAMBDA (FORM TEDITPROPS FORMNAME) (* ; "Edited 7-Feb-2022 11:54 by rmk")
(* ; "Edited 10-Feb-89 12:22 by bvm")
(* ;;; "FORM can be a string, file, or stream --- The value of \SENDMESSAGE is T only if the message was actually sent")
(OR (TEXTSTREAMP FORM)
(SETQ FORM (OPENTEXTSTREAM FORM NIL NIL NIL TEDITPROPS)))
(SETQ FORM (OPENTEXTSTREAM (OPENSTRINGSTREAM FORM)
NIL NIL NIL TEDITPROPS)))
(TEDIT.STREAMCHANGEDP FORM T) (* ; "Clear the changed bit")
(if (NOT (LISTGET TEDITPROPS 'LEAVETTY))
then (* ; "Take control of the keyboard")
(TTY.PROCESS (THIS.PROCESS)))
then (* ; "Take control of the keyboard")
(TTY.PROCESS (THIS.PROCESS)))
(PROG [(MODE (LISTGET TEDITPROPS 'LAFITEMODE] (* ; "Old way of specifying mode")
(if MODE
then (TEXTPROP FORM 'LAFITEMODE MODE)
@@ -518,87 +525,84 @@ Copyright (c) 1984-1990, 1993, 1999-2000, 2021 by Xerox Corporation.
elseif (SETQ MODE (fetch LAFITEMODE of \LAFITEMODE))
then (TEXTPROP FORM 'LAFITEMODE MODE)
else (PRINTOUT PROMPTWINDOW T "Can't send mail without a Lafite mode.")
(RETURN NIL))
(RETURN NIL))
(RETURN (\SENDMESSAGE.RESTARTABLE FORM TEDITPROPS NIL FORMNAME])
(\SENDMESSAGE.RESTARTABLE
[LAMBDA (FORM TEDITPROPS EDITORWINDOW FORMNAME) (* ; "Edited 3-Nov-89 15:06 by bvm")
[LAMBDA (FORM TEDITPROPS EDITORWINDOW FORMNAME) (* ; "Edited 7-Feb-2022 11:50 by rmk")
(* ; "Edited 3-Nov-89 15:06 by bvm")
(bind (CURRENTMESSAGE _ FORM)
(FIRSTTIME _ T)
EDITORRESULT DONE SENTOK PARSE
(FIRSTTIME _ T)
EDITORRESULT DONE SENTOK PARSE
do (PROCESSPROP (THIS.PROCESS)
'BEFOREEXIT NIL) (* ;
 "Allow LOGOUT until delivery is attempted. Need to do this if we loop or restart")
(COND
([NULL (PROG1 EDITORWINDOW
[SETQ EDITORWINDOW (\SENDMESSAGE.MAKEWINDOW CURRENTMESSAGE NIL
EDITORWINDOW (TEXTPROP FORM 'LAFITEMODE])]
'BEFOREEXIT NIL) (* ;
 "Allow LOGOUT until delivery is attempted. Need to do this if we loop or restart")
(COND
([NULL (PROG1 EDITORWINDOW
[SETQ EDITORWINDOW (\SENDMESSAGE.MAKEWINDOW CURRENTMESSAGE NIL EDITORWINDOW
(TEXTPROP FORM 'LAFITEMODE])]
(* ;
 "First time thru. Fix it so that we can restart if aborted")
(PROCESSPROP (THIS.PROCESS)
'RESTARTFORM
(LIST (FUNCTION \SENDMESSAGE.RESTARTABLE)
(KWOTE FORM)
(KWOTE TEDITPROPS)
(KWOTE EDITORWINDOW))) (* ;
 "If process is reset or aborted, this is how to resurrect")
(PROCESSPROP (THIS.PROCESS)
'RESTARTABLE T)
(WINDOWPROP EDITORWINDOW 'LAFITEFORM FORMNAME)))
(COND
(FIRSTTIME (RESETSAVE NIL (LIST (FUNCTION \SENDMESSAGE.CLEANUP)
EDITORWINDOW))
(push LAFITECURRENTEDITORWINDOWS EDITORWINDOW)
(SETQ FIRSTTIME)))
[SETQ EDITORRESULT (TEDIT FORM EDITORWINDOW T (APPEND TEDITPROPS (LIST 'FONT
LAFITEEDITORFONT]
(COND
((TTY.PROCESSP) (* ; "give back the keyboard")
(TTY.PROCESS T)))
(WINDOWDELPROP EDITORWINDOW 'CLOSEFN 'DON'T) (* ; "let the window close")
(COND
((NOT (type? SENDINGCOMMAND EDITORRESULT))
 "First time thru. Fix it so that we can restart if aborted")
(PROCESSPROP (THIS.PROCESS)
'RESTARTFORM
(LIST (FUNCTION \SENDMESSAGE.RESTARTABLE)
(KWOTE FORM)
(KWOTE TEDITPROPS)
(KWOTE EDITORWINDOW))) (* ;
 "If process is reset or aborted, this is how to resurrect")
(PROCESSPROP (THIS.PROCESS)
'RESTARTABLE T)
(WINDOWPROP EDITORWINDOW 'LAFITEFORM FORMNAME)))
(COND
(FIRSTTIME (RESETSAVE NIL (LIST (FUNCTION \SENDMESSAGE.CLEANUP)
EDITORWINDOW))
(push LAFITECURRENTEDITORWINDOWS EDITORWINDOW)
(SETQ FIRSTTIME)))
[SETQ EDITORRESULT (TEDIT (OPENSTRINGSTREAM FORM)
EDITORWINDOW T (APPEND TEDITPROPS (LIST 'FONT LAFITEEDITORFONT]
(COND
((TTY.PROCESSP) (* ; "give back the keyboard")
(TTY.PROCESS T)))
(WINDOWDELPROP EDITORWINDOW 'CLOSEFN 'DON'T) (* ; "let the window close")
(COND
((NOT (type? SENDINGCOMMAND EDITORRESULT)) (* ;
 "get out anyway since the user used the TEDIT `quit' command instead of one of the sending commands")
(SETQ DONE T))
(T (* ;
 "the user used the lafite menu to get out rather than the TEDIT menu so we have to do something")
(* ;
"get out anyway since the user used the TEDIT `quit' command instead of one of the sending commands")
(SETQ DONE T))
(T (* ;
 "the user used the lafite menu to get out rather than the TEDIT menu so we have to do something")
(* ;
 "make sure CURRENTMESSAGE is always a string")
(SETQ CURRENTMESSAGE (fetch (SENDINGCOMMAND MESSAGE) of EDITORRESULT))
(SETQ DONE (SELECTQ (AND EDITORRESULT (fetch (SENDINGCOMMAND COMMAND)
of EDITORRESULT))
(%##SEND## [SETQ SENTOK (\SENDMESSAGE0 CURRENTMESSAGE
EDITORWINDOW (SETQ PARSE
(fetch
(SENDINGCOMMAND
MESSAGEPARSE)
of EDITORRESULT
])
(SHOULDNT)))
(SHADEITEM (fetch (SENDINGCOMMAND ITEM) of EDITORRESULT)
(fetch (SENDINGCOMMAND MENU) of EDITORRESULT)
WHITESHADE) (* ;
 "Unshade command. DOLAFITESENDINGCOMMAND shaded it to begin with")
))
(COND
(DONE (* ; "Message successfully dispatched")
(PROCESSPROP (THIS.PROCESS)
'RESTARTABLE NIL) (* ;
 "Don't try to restart if there's any sort of error now")
(COND
(CURRENTMESSAGE (* ;
 "Mark text unchanged now, so no trouble closing icon")
(TEDIT.STREAMCHANGEDP CURRENTMESSAGE T)))
(COND
((NULL SENTOK)
(CLOSEW EDITORWINDOW))
(T (* ; "shrink the window")
(\LAFITE.AFTER.DELIVER EDITORWINDOW CURRENTMESSAGE PARSE)))
(RETURN SENTOK))
(T (* ;
 "Loop if deliver failed or \LAFITE.SAVE.FORM was aborted.")
])
 "make sure CURRENTMESSAGE is always a string")
(SETQ CURRENTMESSAGE (fetch (SENDINGCOMMAND MESSAGE) of EDITORRESULT))
(SETQ DONE (SELECTQ (AND EDITORRESULT (fetch (SENDINGCOMMAND COMMAND) of EDITORRESULT
))
(%##SEND## [SETQ SENTOK (\SENDMESSAGE0 CURRENTMESSAGE EDITORWINDOW
(SETQ PARSE (fetch (SENDINGCOMMAND
MESSAGEPARSE)
of EDITORRESULT])
(SHOULDNT)))
(SHADEITEM (fetch (SENDINGCOMMAND ITEM) of EDITORRESULT)
(fetch (SENDINGCOMMAND MENU) of EDITORRESULT)
WHITESHADE) (* ;
 "Unshade command. DOLAFITESENDINGCOMMAND shaded it to begin with")
))
(COND
(DONE (* ; "Message successfully dispatched")
(PROCESSPROP (THIS.PROCESS)
'RESTARTABLE NIL) (* ;
 "Don't try to restart if there's any sort of error now")
(COND
(CURRENTMESSAGE (* ;
 "Mark text unchanged now, so no trouble closing icon")
(TEDIT.STREAMCHANGEDP CURRENTMESSAGE T)))
(COND
((NULL SENTOK)
(CLOSEW EDITORWINDOW))
(T (* ; "shrink the window")
(\LAFITE.AFTER.DELIVER EDITORWINDOW CURRENTMESSAGE PARSE)))
(RETURN SENTOK))
(T (* ;
 "Loop if deliver failed or \LAFITE.SAVE.FORM was aborted.")
])
(\SENDMESSAGE.CLEANUP
[LAMBDA (EDITORWINDOW) (* ; "Edited 6-Oct-87 15:58 by bvm:")
@@ -795,11 +799,12 @@ Copyright (c) 1984-1990, 1993, 1999-2000, 2021 by Xerox Corporation.
(T STR))))])
(LAFITE.SENDMESSAGE
[LAMBDA (MESSAGEFORM) (* ; "Edited 12-Sep-88 14:07 by bvm")
[LAMBDA (MESSAGEFORM) (* ; "Edited 7-Feb-2022 11:55 by rmk")
(* ; "Edited 12-Sep-88 14:07 by bvm")
(* ;;; "this is the external interface to sending a message")
(SETQ MESSAGEFORM (OPENTEXTSTREAM MESSAGEFORM))
(SETQ MESSAGEFORM (OPENTEXTSTREAM (OPENSTRINGSTREAM MESSAGEFORM)))
(LET* ((MODE (TEXTPROP MESSAGEFORM 'LAFITEMODE))
(*LAFITE-MODE-DATA* (\LAFITE.GET.USER.DATA MODE))
PARSE)
@@ -1197,16 +1202,16 @@ Copyright (c) 1984-1990, 1993, 1999-2000, 2021 by Xerox Corporation.
(MAKEXXXSUPPORTFORM "Lisp" LISPSUPPORT])
(MAKEXXXSUPPORTFORM
[LAMBDA (SYSTEMNAME ADDRESS SYSTEMDATE) (* ; "Edited 3-May-89 18:37 by bvm")
[LAMBDA (SYSTEMNAME ADDRESS SYSTEMDATE) (* ; "Edited 7-Feb-2022 11:56 by rmk")
(* ; "Edited 3-May-89 18:37 by bvm")
(PROG ((SUBJFIELD ">>Terse summary of problem<<")
(UCODEVERSION (MICROCODEVERSION))
(SCRATCH (OPENSTREAM "{nodircore}" 'BOTH))
TEXTSTREAM SELECTPOSITION MODE)
[COND
[(LISTP ADDRESS) (* ;
 "Mode-dependent address. Pick the first address that's in a mode we know how to send")
(SETQ ADDRESS (for PAIR in ADDRESS when (\LAFITE.GET.USER.DATA
(SETQ MODE (CAR PAIR)))
 "Mode-dependent address. Pick the first address that's in a mode we know how to send")
(SETQ ADDRESS (for PAIR in ADDRESS when (\LAFITE.GET.USER.DATA (SETQ MODE (CAR PAIR)))
do (RETURN (CADR PAIR]
(T (* ; "Just send in current mode")
(SETQ MODE (fetch LAFITEMODE of \LAFITEMODE]
@@ -1214,11 +1219,11 @@ Copyright (c) 1984-1990, 1993, 1999-2000, 2021 by Xerox Corporation.
((NOT ADDRESS)
(printout PROMPTWINDOW T "Can't -- no address known for " SYSTEMNAME " report.")
(RETURN)))
(SETQ TEXTSTREAM (OPENTEXTSTREAM (CONCAT "Subject: " SYSTEMNAME ": ")
(SETQ TEXTSTREAM (OPENTEXTSTREAM (OPENSTRINGSTREAM (CONCAT "Subject: " SYSTEMNAME ": "))
NIL NIL NIL (LIST 'FONT LAFITEEDITORFONT)))
(SETQ SELECTPOSITION (ADD1 (GETEOFPTR TEXTSTREAM)))
(PROGN (* ;
 "Now write the main stuff to a scratch stream. faster than bouting a byte at a time to tedit")
 "Now write the main stuff to a scratch stream. faster than bouting a byte at a time to tedit")
(printout SCRATCH SUBJFIELD T)
(printout SCRATCH "To: " ADDRESS T)
(printout SCRATCH "cc: " (FULLUSERNAME NIL MODE)
@@ -1258,8 +1263,9 @@ Impact: >> Fatal, Serious, Moderate, Annoying, Minor <<" T T)
(RETURN TEXTSTREAM])
(MAKENEWMESSAGEFORM
[LAMBDA NIL (* ; "Edited 6-Jun-88 12:22 by bvm")
(LET ((OUTSTREAM (OPENTEXTSTREAM "" NIL NIL NIL (LIST 'FONT LAFITEEDITORFONT)))
[LAMBDA NIL (* ; "Edited 7-Feb-2022 11:56 by rmk")
(* ; "Edited 6-Jun-88 12:22 by bvm")
(LET ((OUTSTREAM (OPENTEXTSTREAM NIL NIL NIL NIL (LIST 'FONT LAFITEEDITORFONT)))
SELECTPOSITION)
(printout OUTSTREAM "Subject: ")
(SETQ SELECTPOSITION (ADD1 (GETFILEPTR OUTSTREAM)))
@@ -1269,8 +1275,8 @@ Impact: >> Fatal, Serious, Moderate, Annoying, Minor <<" T T)
T T)
(printout OUTSTREAM MESSAGESTR T)
(if LAFITE.SIGNATURE
then (* ; "Pre-sign it")
(PRIN3 LAFITE.SIGNATURE OUTSTREAM))
then (* ; "Pre-sign it")
(PRIN3 LAFITE.SIGNATURE OUTSTREAM))
(TEDIT.SETSEL OUTSTREAM SELECTPOSITION (NCHARS SUBJECTSTR)
'RIGHT T)
OUTSTREAM])
@@ -1442,7 +1448,8 @@ Impact: >> Fatal, Serious, Moderate, Annoying, Minor <<" T T)
(MARKMESSAGE MSGDESCRIPTOR MAILFOLDER ANSWERMARK])])
(MAKEANSWERFORM
[LAMBDA (MSGDESCRIPTORS MAILFOLDER) (* ; "Edited 10-Aug-89 17:28 by bvm")
[LAMBDA (MSGDESCRIPTORS MAILFOLDER) (* ; "Edited 7-Feb-2022 11:58 by rmk")
(* ; "Edited 10-Aug-89 17:28 by bvm")
(LET* ((FIRSTMSG (if (LISTP MSGDESCRIPTORS)
then (CAR MSGDESCRIPTORS)
else MSGDESCRIPTORS))
@@ -1450,20 +1457,17 @@ Impact: >> Fatal, Serious, Moderate, Annoying, Minor <<" T T)
(MODE (CL:NTH MODEBITS *LAFITE-WELL-KNOWN-MODES*)))
(if (NULL MODE)
then (if [OR (NEQ MODEBITS 0)
(NULL (SETQ MODE (\LAFITE.GUESS.MODE FIRSTMSG]
then (LAB.PROMPTPRINT MAILFOLDER (if (EQ MODEBITS 0)
then
"Message of unknown protocol."
else
(NULL (SETQ MODE (\LAFITE.GUESS.MODE FIRSTMSG]
then (LAB.PROMPTPRINT MAILFOLDER (if (EQ MODEBITS 0)
then "Message of unknown protocol."
else
"Warning: This message was retrieved under a protocol not currently enabled."
))
(LAB.PROMPTPRINT MAILFOLDER "Will answer in " (SETQ MODE
(fetch
(LAFITEOPS
LAFITEMODE)
of \LAFITEMODE
))
" mode; this may not work. ")))
))
(LAB.PROMPTPRINT MAILFOLDER "Will answer in " (SETQ MODE
(fetch (LAFITEOPS
LAFITEMODE)
of \LAFITEMODE))
" mode; this may not work. ")))
(* ;; "Currently we only pay attention to the first message. If we ever do otherwise, we'll want to notice whether the other messages are in the same mode")
@@ -1474,14 +1478,13 @@ Impact: >> Fatal, Serious, Moderate, Annoying, Minor <<" T T)
(if (NULL *LAFITE-MODE-DATA*)
then (LAB.FORMAT MAILFOLDER "Failed: can't authenticate user in ~A mode" MODE)
elseif (SETQ MSG (CL:FUNCALL (fetch (LAFITEMODEDATA ANSWERER) of
*LAFITE-MODE-DATA*
)
MSGDESCRIPTORS MAILFOLDER))
elseif (SETQ MSG (CL:FUNCALL (fetch (LAFITEMODEDATA ANSWERER) of *LAFITE-MODE-DATA*)
MSGDESCRIPTORS MAILFOLDER))
then (if (TEXTSTREAMP MSG)
then (TEXTPROP MSG 'LAFITEMODE MODE)
MSG
else (OPENTEXTSTREAM MSG NIL NIL NIL `(LAFITEMODE ,MODE])
then (TEXTPROP MSG 'LAFITEMODE MODE)
MSG
else (OPENTEXTSTREAM (OPENSTRINGSTREAM MSG)
NIL NIL NIL `(LAFITEMODE ,MODE])
(LA.PRINT.COMMA.LIST
[LAMBDA (STRINGS STREAM) (* ; "Edited 6-Jun-88 12:50 by bvm")
@@ -1491,21 +1494,22 @@ Impact: >> Fatal, Serious, Moderate, Annoying, Minor <<" T T)
(PRIN3 STR STREAM])
(LAFITE.FILL.IN.ANSWER.FORM
[LAMBDA (SUBJECT FROM DATE TO CC ADDRESSPRINTFN) (* ; "Edited 10-Jun-88 17:19 by bvm")
[LAMBDA (SUBJECT FROM DATE TO CC ADDRESSPRINTFN) (* ; "Edited 7-Feb-2022 11:58 by rmk")
(* ; "Edited 10-Jun-88 17:19 by bvm")
(* ;; "Construct an answer form replying to a message from FROM on DATE with specified SUBJECT. Reply should go to the lists of names TO and CC. ADDRESSPRINTFN is a function that prints a list of names suitably for the protocol in question.")
(LET ((OUTSTREAM (OPENTEXTSTREAM "" NIL NIL NIL (LIST 'FONT LAFITEEDITORFONT)))
(LET ((OUTSTREAM (OPENTEXTSTREAM NIL NIL NIL NIL (LIST 'FONT LAFITEEDITORFONT)))
SELECTPOSITION)
(LINELENGTH MAX.SMALLP OUTSTREAM) (* ;
 "Sigh, apparently text streams have linelength")
 "Sigh, apparently text streams have linelength")
(PROGN (printout OUTSTREAM "Subject: ")
(if SUBJECT
then (COND
((NOT (STRING-EQUAL (SUBSTRING SUBJECT 1 3)
"Re:"))
(printout OUTSTREAM "Re: ")))
(printout OUTSTREAM SUBJECT)
((NOT (STRING-EQUAL (SUBSTRING SUBJECT 1 3)
"Re:"))
(printout OUTSTREAM "Re: ")))
(printout OUTSTREAM SUBJECT)
else (printout OUTSTREAM "(reply to message)")))
(PROGN (printout OUTSTREAM T "In-reply-to: ")
(if (NULL FROM)
@@ -1515,8 +1519,8 @@ Impact: >> Fatal, Serious, Moderate, Annoying, Minor <<" T T)
(PROGN (printout OUTSTREAM "To: ")
(if TO
then (CL:FUNCALL ADDRESSPRINTFN TO OUTSTREAM)
else (* ; "No to, so ask to fill in")
(printout OUTSTREAM RECIPIENTSSTR T))
else (* ; "No to, so ask to fill in")
(printout OUTSTREAM RECIPIENTSSTR T))
(TERPRI OUTSTREAM))
(COND
(CC (printout OUTSTREAM "cc: ")
@@ -1526,8 +1530,8 @@ Impact: >> Fatal, Serious, Moderate, Annoying, Minor <<" T T)
(SETQ SELECTPOSITION (ADD1 (GETFILEPTR OUTSTREAM)))
(printout OUTSTREAM MESSAGESTR T)
(if LAFITE.SIGNATURE
then (* ; "Pre-sign it")
(PRIN3 LAFITE.SIGNATURE OUTSTREAM))
then (* ; "Pre-sign it")
(PRIN3 LAFITE.SIGNATURE OUTSTREAM))
(TEDIT.SETSEL OUTSTREAM SELECTPOSITION (NCHARS MESSAGESTR)
'RIGHT T)
OUTSTREAM])
@@ -1583,12 +1587,13 @@ Impact: >> Fatal, Serious, Moderate, Annoying, Minor <<" T T)
(MARKMESSAGE MSG MAILFOLDER FORWARDMARK])])
(MAKEFORWARDFORM
[LAMBDA (WINDOW FOLDER MESSAGELIST) (* ; "Edited 5-Jan-90 17:46 by bvm")
[LAMBDA (WINDOW FOLDER MESSAGELIST) (* ; "Edited 7-Feb-2022 11:59 by rmk")
(* ; "Edited 5-Jan-90 17:46 by bvm")
(* ;; "Make a message form that forwards each of the messages in MESSAGELIST")
(PROG ((FOLDERSTREAM (\LAFITE.OPEN.FOLDER FOLDER 'INPUT :ABORT))
(TEXTSTREAM (OPENTEXTSTREAM "" NIL NIL NIL (LIST 'FONT LAFITEEDITORFONT)))
(TEXTSTREAM (OPENTEXTSTREAM NIL NIL NIL NIL (LIST 'FONT LAFITEEDITORFONT)))
(CURMSG (CAR MESSAGELIST))
SUBJECT SELECTPOSITION SELECTLEN)
(OR (fetch (LAFITEMSG PARSED?) of CURMSG)
@@ -1596,8 +1601,7 @@ Impact: >> Fatal, Serious, Moderate, Annoying, Minor <<" T T)
(LINELENGTH MAX.SMALLP TEXTSTREAM)
(PRIN3 "Subject: " TEXTSTREAM)
(COND
([OR LAFITEFORWARDSUBJECTSTR (NULL (SETQ SUBJECT (fetch (LAFITEMSG SUBJECT)
of CURMSG]
([OR LAFITEFORWARDSUBJECTSTR (NULL (SETQ SUBJECT (fetch (LAFITEMSG SUBJECT) of CURMSG]
(SETQ SELECTPOSITION (ADD1 (GETFILEPTR TEXTSTREAM)))
[SETQ SELECTLEN (NCHARS (SETQ SUBJECT (OR LAFITEFORWARDSUBJECTSTR SUBJECTSTR]
(PRIN3 SUBJECT TEXTSTREAM))
@@ -1616,23 +1620,29 @@ cc: ~A
" RECIPIENTSSTR (FULLUSERNAME)
(CAR LAFITEFORWARDSTRINGS))
(if LAFITE.SIGNATURE
then (* ;
 "Sign it up here, after the user's inserted comments, if any")
(PRIN3 LAFITE.SIGNATURE TEXTSTREAM)
(TERPRI TEXTSTREAM))
(for MSGDESCRIPTOR in MESSAGELIST bind NTHTIME
do (PRIN3 (COND
(NTHTIME (* ; "%"Next message%"")
(CADDR LAFITEFORWARDSTRINGS))
(T (* ; "%"Begin forwarded messages%"")
(SETQ NTHTIME T)
(CADR LAFITEFORWARDSTRINGS)))
TEXTSTREAM)
(TERPRI TEXTSTREAM)
(\LAFITE.APPEND.MESSAGE.BODY TEXTSTREAM FOLDERSTREAM MSGDESCRIPTOR
\LAPARSE.DONT.FORWARD.HEADERS)
(TERPRI TEXTSTREAM)
(TEDIT.CARETLOOKS TEXTSTREAM LAFITEEDITORFONT))
then (* ;
 "Sign it up here, after the user's inserted comments, if any")
(PRIN3 LAFITE.SIGNATURE TEXTSTREAM)
(TERPRI TEXTSTREAM))
(for MSGDESCRIPTOR in MESSAGELIST bind NTHTIME do (PRIN3 (COND
(NTHTIME
(* ; "%"Next message%"")
(CADDR
LAFITEFORWARDSTRINGS
))
(T
(* ; "%"Begin forwarded messages%"")
(SETQ NTHTIME T)
(CADR LAFITEFORWARDSTRINGS))
)
TEXTSTREAM)
(TERPRI TEXTSTREAM)
(\LAFITE.APPEND.MESSAGE.BODY TEXTSTREAM
FOLDERSTREAM MSGDESCRIPTOR
\LAPARSE.DONT.FORWARD.HEADERS)
(TERPRI TEXTSTREAM)
(TEDIT.CARETLOOKS TEXTSTREAM
LAFITEEDITORFONT))
(PRIN3 (CADDDR LAFITEFORWARDSTRINGS)
TEXTSTREAM)
(TERPRI TEXTSTREAM)
@@ -1640,25 +1650,23 @@ cc: ~A
(RETURN TEXTSTREAM])
)
(RPAQQ LAFITESENDINGMENUITEMS (("Deliver" '\SENDMSG.DELIVER "Send the message in the edit window"
)
("Reply To" '\SENDMSG.REPLYTO
"Insert a Reply-to field in this message")
("Change Mode" '\SENDMSG.CHANGE.MODE
"Change the mode (mail protocol) used to send this message."
)
("Save" '\SENDMSG.SAVE.FORM
(RPAQQ LAFITESENDINGMENUITEMS (("Deliver" '\SENDMSG.DELIVER "Send the message in the edit window")
("Reply To" '\SENDMSG.REPLYTO
"Insert a Reply-to field in this message")
("Change Mode" '\UNIXMAIL.CHANGE.MODE
"Change the mode (mail protocol) used to send this message.")
("Save" '\SENDMSG.SAVE.FORM
"Save the message in a file for later use (retrieve with middle-button SendMail)"
)))
)))
(RPAQQ LAFITEFORMSMENUITEMS (("Saved Form" '%##ANOTHERFORM##
"You will be asked to specify a filename for the form")
("Standard Form" (FUNCTION MAKENEWMESSAGEFORM)
"A clean message form")))
"You will be asked to specify a filename for the form")
("Standard Form" (FUNCTION MAKENEWMESSAGEFORM)
"A clean message form")))
(RPAQQ LAFITEFORMATMENUITEMS (("Send Formatted Message" 'TEDIT)
("Send Plain Text" 'TEXT)
("Abort" 'ABORT)))
("Send Plain Text" 'TEXT)
("Abort" 'ABORT)))
(RPAQQ LAFITEFORWARDSTRINGS (">>CoveringMessage<<" "
----- Begin Forwarded Messages -----
@@ -1670,9 +1678,9 @@ cc: ~A
(ADDTOVAR \SYSTEMCACHEVARS \LAFITE.REPORT.MACHINE)
(ADDTOVAR LAFITESPECIALFORMS ("Lisp Report" (FUNCTION MAKELISPSUPPORTFORM)
"A form to report a Lisp bug or suggestion")
("Lafite Report" (FUNCTION MAKELAFITESUPPORTFORM)
"A form to report a Lafite bug or suggestion"))
"A form to report a Lisp bug or suggestion")
("Lafite Report" (FUNCTION MAKELAFITESUPPORTFORM)
"A form to report a Lafite bug or suggestion"))
(ADDTOVAR LAFITEMENUVARS LAFITEFORMSMENU LAFITEFORMATMENU)
@@ -1709,9 +1717,9 @@ cc: ~A
(RPAQ? SUBJECTSTR ">>Subject<<")
(RPAQ? LAFITE.SEND.FORMATTED '((NSCHARS :ASK)
(CHARLOOKS :ASK)
(PARALOOKS :ASK)
(IMAGEOBJ :ASK)))
(CHARLOOKS :ASK)
(PARALOOKS :ASK)
(IMAGEOBJ :ASK)))
@@ -1726,15 +1734,15 @@ cc: ~A
(RPAQQ LAFITE.MSG.ICON (#*(82 72)@@@@@@@@@GO@@@@@@@@@@@@@@@@@@@@@AOOL@@@@@@@@@@@@@@@@@@@@GH@O@@@@@@@@@@@@@@@@@@@CN@@CL@@@@@@@@@@@@@@@@@@OH@@@OH@@@@@@@@@@@@@@@@CL@@@@CN@@@@@@@@@@@@@@@@O@@@@@@GH@@@@@@@@@@@@@@CL@@@@@@AN@@@@@@@@@@@@@AO@@@@@@@@GL@@@@@@@@@@@@GL@@@@@@@@AO@@@@@@@@@@@AN@@@@@@@@@@CL@@@@@@@@@@GH@@@@@@@@@@@O@@@@@@@@@CN@@@@@@@@@@@@CL@@@@@@@@OH@@@@@@@@@@@@@OH@@@@@@CL@@@@@@@@@@@@@@CN@@@@@@O@@@@@@@@@@@@@@@@GH@@@@CL@@@@@@@@@@@@@@@@AN@@@@O@@@@@@@@@@@@@@@@@@GH@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@O@@@@@@@@@@@@@@@@@@GL@@@ML@@@@@@@@@@@@@@@@ALL@@@LN@@@@@@@@@@@@@@@@CHL@@@LCH@@@@@@@@@@@@@@@N@L@@@LAL@@@@@@@@@@@@@@CL@L@@@L@G@@@@@@@@@@@@@@G@@L@@@L@CL@@@@@@@@@@@@AL@@L@@@L@@N@@@@@@@@@@@@CH@@L@@@L@@CH@@@@@@@@@@@N@@@L@@@L@@AL@@@@@@@@@@AL@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@@@@@@@@@@@@@@@@@@L@@@L@@N@@@@@@@@@@@@CH@@L@@@L@CL@@@@@@@@@@@@AL@@L@@@L@G@@@@@@@@@@@@@@G@@L@@@LAL@@@@@@@@@@@@@@CL@L@@@LCH@@@@@@@@@@@@@@@N@L@@@LN@@@@@@@@@@@@@@@@CHL@@@ML@@@@@@@@@@@@@@@@ALL@@@O@@@@@@@@@@@@@@@@@@GL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@
#*(82 72)@@@@@@@@@GO@@@@@@@@@@@@@@@@@@@@@AOOL@@@@@@@@@@@@@@@@@@@@GOOO@@@@@@@@@@@@@@@@@@@COOOOL@@@@@@@@@@@@@@@@@@OOOOOOH@@@@@@@@@@@@@@@@COOOOOON@@@@@@@@@@@@@@@@OOOOOOOOH@@@@@@@@@@@@@@COOOOOOOON@@@@@@@@@@@@@AOOOOOOOOOOL@@@@@@@@@@@@GOOOOOOOOOOO@@@@@@@@@@@AOOOOOOOOOOOOL@@@@@@@@@@GOOOOOOOOOOOOO@@@@@@@@@COOOOOOOOOOOOOOL@@@@@@@@OOOOOOOOOOOOOOOOH@@@@@@COOOOOOOOOOOOOOOON@@@@@@OOOOOOOOOOOOOOOOOOH@@@@COOOOOOOOOOOOOOOOOON@@@@OOOOOOOOOOOOOOOOOOOOH@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@
(8 8 64 36)))
#*(82 72)@@@@@@@@@GO@@@@@@@@@@@@@@@@@@@@@AOOL@@@@@@@@@@@@@@@@@@@@GOOO@@@@@@@@@@@@@@@@@@@COOOOL@@@@@@@@@@@@@@@@@@OOOOOOH@@@@@@@@@@@@@@@@COOOOOON@@@@@@@@@@@@@@@@OOOOOOOOH@@@@@@@@@@@@@@COOOOOOOON@@@@@@@@@@@@@AOOOOOOOOOOL@@@@@@@@@@@@GOOOOOOOOOOO@@@@@@@@@@@AOOOOOOOOOOOOL@@@@@@@@@@GOOOOOOOOOOOOO@@@@@@@@@COOOOOOOOOOOOOOL@@@@@@@@OOOOOOOOOOOOOOOOH@@@@@@COOOOOOOOOOOOOOOON@@@@@@OOOOOOOOOOOOOOOOOOH@@@@COOOOOOOOOOOOOOOOOON@@@@OOOOOOOOOOOOOOOOOOOOH@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@OOOOOOOOOOOOOOOOOOOOL@@@
(8 8 64 36)))
(DECLARE%: EVAL@COMPILE DONTCOPY
(DECLARE%: EVAL@COMPILE
(RECORD SENDINGCOMMAND (COMMAND ITEM MENU MESSAGE MESSAGEPARSE)
[TYPE? (AND (LISTP DATUM)
(FMEMB (fetch COMMAND of DATUM)
'(%##SEND## %##SAVE## %##FORGETIT##])
[TYPE? (AND (LISTP DATUM)
(FMEMB (fetch COMMAND of DATUM)
'(%##SEND## %##SAVE## %##FORGETIT##])
)
(DECLARE%: DOEVAL@COMPILE DONTCOPY
@@ -1758,29 +1766,29 @@ cc: ~A
(PUTPROPS LAFITESEND COPYRIGHT ("Xerox Corporation" 1984 1985 1986 1987 1988 1989 1990 1993 1999 2000
2021))
(DECLARE%: DONTCOPY
(FILEMAP (NIL (5301 28278 (DOLAFITESENDINGCOMMAND 5311 . 5801) (\SENDMESSAGE.INITIATE 5803 . 7742) (
\SENDMSG.DELIVER 7744 . 8352) (\SENDMSG.EXIT.TEDIT 8354 . 8725) (\SENDMSG.SAVE.FORM 8727 . 10714) (
\LAFITE.HEADER.EOF 10716 . 11009) (\LAFITE.INSERT.REPLYTO 11011 . 11619) (\SENDMSG.REPLYTO 11621 .
12180) (\SENDMSG.CHANGE.MODE 12182 . 17758) (\SENDMSG.FIND.FIELD 17760 . 18270) (\SENDMESSAGE.PARSE
18272 . 19068) (\LAFITE.PREPARE.SEND 19070 . 21903) (\LAFITE.PREPARE.ERROR 21905 . 23087) (
\LAFITE.CHOOSE.MSG.FORMAT 23089 . 25730) (LAFITE.MAKE.PLAIN.TEXTSTREAM 25732 . 26657) (
\SENDMESSAGE.MENUPROMPT 26659 . 27522) (\SENDMESSAGE.PROMPT 27524 . 28060) (\SENDMESSAGEFAIL 28062 .
28276)) (28279 52755 (\SENDMESSAGE 28289 . 29481) (\SENDMESSAGE.RESTARTABLE 29483 . 34790) (
\SENDMESSAGE.CLEANUP 34792 . 35008) (\SENDMESSAGE.MAKEWINDOW 35010 . 41183) (MAKELAFITEDELIVERMENU
41185 . 41492) (\LAFITE.CLOSEMSG? 41494 . 42444) (\LAFITE.AFTER.DELIVER 42446 . 45765) (
\LAFITE.UNSENT.ICON 45767 . 46077) (\LAFITE.FETCH.SUBJECT 46079 . 46879) (LAFITE.SENDMESSAGE 46881 .
47642) (\SENDMESSAGE0 47644 . 50508) (LA.ASSURE.PROMPT.WINDOW 50510 . 51407) (\LAFITE.SEND.FAIL 51409
. 51880) (\LAFITE.INVALID.RECIPIENTS 51882 . 52340) (\SENDMESSAGE.ABORT 52342 . 52753)) (52787 62700
(\OUTBOX.CREATE 52797 . 54260) (\OUTBOX.RESET 54262 . 54755) (\OUTBOX.CLOSEFN 54757 . 54897) (
\OUTBOX.REPAINTFN 54899 . 55562) (\OUTBOX.RESHAPEFN 55564 . 56847) (\OUTBOX.SHADEITEM 56849 . 57522) (
\OUTBOX.BUTTONFN 57524 . 60372) (\OUTBOX.DISPLAYLINE 60374 . 60868) (\OUTBOX.ADD.ITEM 60870 . 62698))
(62996 79218 (\LAFITE.MESSAGEFORM 63006 . 67349) (MAKELAFITESUPPORTFORM 67351 . 67540) (
MAKELISPSUPPORTFORM 67542 . 67708) (MAKEXXXSUPPORTFORM 67710 . 71690) (MAKENEWMESSAGEFORM 71692 .
72531) (MAKELAFITEPRIVATEFORMSITEMS 72533 . 72961) (\LAFITE.UNCACHE.MESSAGEFORM 72963 . 73416) (
\LAFITE.DELETE.MESSAGEFORM 73418 . 74019) (\LAFITE.SELECT.FORM 74021 . 74376) (
\LAFITE.DELETE.FORM.INTERNAL 74378 . 75522) (\LAFITE.READ.FORM 75524 . 78261) (\LAFITE.FIND.TEMPLATE
78263 . 79216)) (79242 87146 (\LAFITE.ANSWER 79252 . 79657) (\LAFITE.ANSWER.PROC 79659 . 81553) (
MAKEANSWERFORM 81555 . 84367) (LA.PRINT.COMMA.LIST 84369 . 84855) (LAFITE.FILL.IN.ANSWER.FORM 84857 .
87144)) (87171 92434 (\LAFITE.FORWARD 87181 . 87589) (\LAFITE.FORWARD.PROC 87591 . 89580) (
MAKEFORWARDFORM 89582 . 92432)))))
(FILEMAP (NIL (5539 28516 (DOLAFITESENDINGCOMMAND 5549 . 6039) (\SENDMESSAGE.INITIATE 6041 . 7980) (
\SENDMSG.DELIVER 7982 . 8590) (\SENDMSG.EXIT.TEDIT 8592 . 8963) (\SENDMSG.SAVE.FORM 8965 . 10952) (
\LAFITE.HEADER.EOF 10954 . 11247) (\LAFITE.INSERT.REPLYTO 11249 . 11857) (\SENDMSG.REPLYTO 11859 .
12418) (\SENDMSG.CHANGE.MODE 12420 . 17996) (\SENDMSG.FIND.FIELD 17998 . 18508) (\SENDMESSAGE.PARSE
18510 . 19306) (\LAFITE.PREPARE.SEND 19308 . 22141) (\LAFITE.PREPARE.ERROR 22143 . 23325) (
\LAFITE.CHOOSE.MSG.FORMAT 23327 . 25968) (LAFITE.MAKE.PLAIN.TEXTSTREAM 25970 . 26895) (
\SENDMESSAGE.MENUPROMPT 26897 . 27760) (\SENDMESSAGE.PROMPT 27762 . 28298) (\SENDMESSAGEFAIL 28300 .
28514)) (28517 52962 (\SENDMESSAGE 28527 . 29879) (\SENDMESSAGE.RESTARTABLE 29881 . 34865) (
\SENDMESSAGE.CLEANUP 34867 . 35083) (\SENDMESSAGE.MAKEWINDOW 35085 . 41258) (MAKELAFITEDELIVERMENU
41260 . 41567) (\LAFITE.CLOSEMSG? 41569 . 42519) (\LAFITE.AFTER.DELIVER 42521 . 45840) (
\LAFITE.UNSENT.ICON 45842 . 46152) (\LAFITE.FETCH.SUBJECT 46154 . 46954) (LAFITE.SENDMESSAGE 46956 .
47849) (\SENDMESSAGE0 47851 . 50715) (LA.ASSURE.PROMPT.WINDOW 50717 . 51614) (\LAFITE.SEND.FAIL 51616
. 52087) (\LAFITE.INVALID.RECIPIENTS 52089 . 52547) (\SENDMESSAGE.ABORT 52549 . 52960)) (52994 62907
(\OUTBOX.CREATE 53004 . 54467) (\OUTBOX.RESET 54469 . 54962) (\OUTBOX.CLOSEFN 54964 . 55104) (
\OUTBOX.REPAINTFN 55106 . 55769) (\OUTBOX.RESHAPEFN 55771 . 57054) (\OUTBOX.SHADEITEM 57056 . 57729) (
\OUTBOX.BUTTONFN 57731 . 60579) (\OUTBOX.DISPLAYLINE 60581 . 61075) (\OUTBOX.ADD.ITEM 61077 . 62905))
(63203 79611 (\LAFITE.MESSAGEFORM 63213 . 67556) (MAKELAFITESUPPORTFORM 67558 . 67747) (
MAKELISPSUPPORTFORM 67749 . 67915) (MAKEXXXSUPPORTFORM 67917 . 71966) (MAKENEWMESSAGEFORM 71968 .
72924) (MAKELAFITEPRIVATEFORMSITEMS 72926 . 73354) (\LAFITE.UNCACHE.MESSAGEFORM 73356 . 73809) (
\LAFITE.DELETE.MESSAGEFORM 73811 . 74412) (\LAFITE.SELECT.FORM 74414 . 74769) (
\LAFITE.DELETE.FORM.INTERNAL 74771 . 75915) (\LAFITE.READ.FORM 75917 . 78654) (\LAFITE.FIND.TEMPLATE
78656 . 79609)) (79635 87366 (\LAFITE.ANSWER 79645 . 80050) (\LAFITE.ANSWER.PROC 80052 . 81946) (
MAKEANSWERFORM 81948 . 84478) (LA.PRINT.COMMA.LIST 84480 . 84966) (LAFITE.FILL.IN.ANSWER.FORM 84968 .
87364)) (87391 93587 (\LAFITE.FORWARD 87401 . 87809) (\LAFITE.FORWARD.PROC 87811 . 89800) (
MAKEFORWARDFORM 89802 . 93585)))))
STOP