-- file: IntCommon.Mesa
-- edited by Brotz, March 7, 1983 4:05 PM
-- edited by Levin, July 15, 1980 4:24 PM
-- edited by Schroeder, March 13, 1981 11:45 AM
-- edited by Taft, May 10, 1983 6:01 PM

DIRECTORY
Core USING [DMSUserBlk],
dsD: FROM "DisplayDefs" USING [ScreenXCoord],
Editor USING [CommandType, EditorType, UnderlineType],
exD: FROM "ExceptionDefs" USING [ExceptionType],
inD: FROM "InteractorDefs" USING [BoundaryPadNbrPtr, BoundarySet, CharIndex,
CommandNbrPtr, HousePtr, LinePtr, MessageTextNbrPtr, RegionPtr, ScreenXCoord,
TextSelection, ThumbLineNbrPtr, TOCTextNbrPtr],
LaurelHardcopyDefs USING [HardcopyFormTable],
lmD: FROM "LaurelMenuDefs" USING [EditorMenuState],
lsD: FROM "LaurelStateDefs" USING [StateSegment],
RetrieveDefs USING [Handle],
StreamDefs USING [StreamHandle];

intCommon: PROGRAM = PUBLIC

BEGIN
OPEN inD;

-- Purpose: Named common block for variables shared by the interactor modules.

--leftMargin,
--rightMargin,
--lineBarLeftX,
--consideredLeftX,
first X coord. in TOC considered mark field
--markLeftX,
first X coord. in TOC mark field
--numberLeftX,
first X coord. in TOC number field
--numberRightX,
first X coord. not in TOC number field
-- Above commented out values have been moved to inD as constants.

dateLeftX,
-- first X coord. in TOC date field
dateRightX,
-- first X coord. not in TOC date field
fromLeftX,
-- first X coord. in TOC from field
fromRightX,
-- first X coord. not in TOC from field
subjectLeftX,
-- first X in first line of TOC subject field
subjectExtensionLeftX: ScreenXCoord;
-- first X coord. in additional TOC subject field lines

--CRWidth, Moved to inD as constant.
--digitWidth: CARDINAL; Moved to inD as constant.

secondsLastChecked,
lastMinuteSeconds: CARDINAL;

keystream: StreamDefs.StreamHandle;

regions,
mailCommandRegion,
TOCRegion,
TOCCommandRegion,
DMRegion,
CMCommandRegion,
CMRegion,
exceptionsRegion: RegionPtr;

linePoolPtr: LinePtr;

mailCommandNbr,
tocCommandNbr,
cmCommandNbr: CommandNbrPtr;

tocTextNbr: TOCTextNbrPtr;
dmTextNbr,
cmTextNbr: MessageTextNbrPtr;

tocThumbLineNbr,
dmThumbLineNbr,
cmThumbLineNbr: ThumbLineNbrPtr;

tocdmBoundaryPadNbr,
dmcmBoundaryPadNbr: BoundaryPadNbrPtr;

boundarySet: BoundarySet;

versionHouse,
timeHouse,
newMessagesHouse,
bboardCommandHouse,
freePagesHouse,
userCommandHouse,
userBracketsHouse,
newMailCommandHouse,
mailFileCommandHouse,
mailFileBracketsHouse,
quitCommandHouse,
displayCommandHouse,
hardcopyCommandHouse,
deleteCommandHouse,
undeleteCommandHouse,
moveToCommandHouse,
moveToBracketsHouse,
newFormCommandHouse,
answerCommandHouse,
forwardCommandHouse,
getCommandHouse,
putCommandHouse,
copyCommandHouse,
runCommandHouse,
deliverCommandHouse,
runBracketsHouse,
findHouse,
findBracketsHouse,
substituteHouse,
substituteNewBracketsHouse,
substituteOldBracketsHouse,
copySourceBracketsHouse,
copyTargetBracketsHouse,
printerBracketsHouse,
copiesBracketsHouse,
duplexBracketsHouse,
formBracketsHouse,
getPutBracketsHouse,
currentCommand: HousePtr;

hardcopyMenuSegment,
getPutMenuSegment,
runMenuSegment,
findMenuSegment,
substituteMenuSegment,
copyMenuSegment: lsD.StateSegment;

editorMenuState: lmD.EditorMenuState;

imageFileName: STRING ← NIL;

audioEnabled,
twoSidedPrinting,
twoSidedPrintingDefault,
passwordPrinting,
passwordPrintingDefault,
timeMayBeBogus,
hardcopyInstallError,
calledFromDebugger,
debuggerExtant,
commandMode,
runCommandMode,
newTargetSelection,
pendingDeleteSetByControl,
controlRedEnabled,
bluePendingDelete,
secondarySelectionEnabled,
disableWriting,
cForCopies,
composedMessageEdited,
newFormAfterDelivery,
displayAfterDelete,
autoConfirm,
deliverWithCR,
deliverCommandVisible,
isCholla: BOOLEAN;

fontDirectorySegment: lsD.StateSegment;
hardcopyWidthTableSegment: lsD.StateSegment;
hardcopyFormTable: LaurelHardcopyDefs.HardcopyFormTable;
defaultHardcopyFormName: STRING ← NIL;
newMailTune: STRING ← NIL;

defaultHardCopies,
hardCopies: CARDINAL;

target,
source: TextSelection;

actionPoint: CharIndex;

currentSelection: Editor.UnderlineType;

multiClickTimeOut: CARDINAL; -- in 1/26ths of a second --
tapTimeOut: CARDINAL; -- in 1/26ths of a second --
continuousScrollTimeOut: CARDINAL; -- in 1/26ths of a second --
continuousScrollDelay: CARDINAL; -- in 1/26ths of a second --
nextBracketTimeout: CARDINAL; -- in 1/26ths of a second --
nextBracketDelay: CARDINAL; -- in 1/26ths of a second --

numScanLines: CARDINAL;

user: Core.DMSUserBlk;

retrieveHandle: RetrieveDefs.Handle;

ProtocolSelector: TYPE = {auto, gv, mtp};

profileRegistry: STRING;
profileSendMode: ProtocolSelector;
profileSend: STRING;
profileRetrieveMode: ProtocolSelector;
profileRetrieve: STRING;
gvTestingMode: BOOLEAN;

leafOk: BOOLEAN;
remoteFilePath: STRING;
chollaArchiveFilePath: STRING;

hardcopyHost: STRING;
hardcopyUserName: STRING;

workstationName: STRING;
chollaDL: STRING;

bugReportee: STRING;

runPath: STRING;

mailcheckPollingInterval: CARDINAL; -- in seconds --

editorType: Editor.EditorType;
exceptionType: exD.ExceptionType;

commandType: Editor.CommandType;
pendingCommandType: Editor.CommandType ← noCommand;

END. -- of intCommon --