<> <> <> <> <> DIRECTORY ChoiceButtons, PieViewers, Process, Rope, ViewerClasses; PressScreen: CEDAR DEFINITIONS = BEGIN ROPE: TYPE = Rope.ROPE; Side: TYPE = {leftSide, bothSides, rightSide}; PressScreen: PROCEDURE [pressFileName: ROPE, which: Side]; <> ScreenParameters: TYPE = RECORD [ sourceHeight: NAT _ NAT.LAST, sourceWidth: NAT _ NAT.LAST, sourceBottom: NAT _ 0, sourceLeft: NAT _ 0, borderWidth: REAL _ 2.0, lockViewers: BOOLEAN _ TRUE, displayCursor: BOOLEAN _ FALSE, displayCarets: BOOLEAN _ FALSE ]; PageParameters: TYPE = RECORD [ magnification: REAL _ 0.5, scaleToFit: MagnificationType _ useMagnification, leftMarginInches, rightMarginInches: REAL _ 0.75, landscape: BOOLEAN _ FALSE ]; MagnificationType: TYPE = {fullPage, halfPage, useMagnification}; AISPressScreen: PROCEDURE [ pressFileName: ROPE, screenParms: ScreenParameters _ [], pageParms: PageParameters _ [] ] RETURNS [fileName: ROPE]; <> <> <> IPScreen: PROCEDURE [ipFileName: ROPE, screenParms: ScreenParameters _ [], pageParms: PageParameters _ []] RETURNS [fileName: ROPE]; <> <> <> StuffScreen: PROCEDURE [screenParms: ScreenParameters _ []]; <> <> <> MagnificationFactorTooLarge: SIGNAL; <> AISPageAlignmentHackFailed: SIGNAL; <> NewPressName: PROCEDURE RETURNS [pressFileName: ROPE]; <> <<>> NewAISPressName: PROCEDURE RETURNS [pressFileName: ROPE]; <> <<>> NewIPName: PROCEDURE RETURNS [ipFileName: ROPE]; <> PressScreenTool: TYPE = REF PressScreenToolRec; PressScreenToolRec: TYPE = RECORD[ stateSaved: BOOLEAN _ FALSE, destroyed: BOOLEAN _ FALSE, tool: ViewerClasses.Viewer, outputStyleChoice: ChoiceButtons.EnumTypeRef, outputStyleRope: ROPE, screenAreaChoice: ChoiceButtons.EnumTypeRef, screenAreaRope: ROPE, magnificationChoice: ChoiceButtons.EnumTypeRef, magnificationRope: ROPE, magnificationViewer: ViewerClasses.Viewer, -- magnification factor magnificationFactor: REAL, ulx, uly, lrx, lry: ViewerClasses.Viewer, -- upper left, lower right coordinates ulX, ulY, lrX, lrY: REAL, formatViewer: ChoiceButtons.EnumTypeRef, formatRope: ROPE, borderViewer: ViewerClasses.Viewer, -- border width borderWidth: REAL, pageMarginViewer: ViewerClasses.Viewer, pageMargin: REAL, countDownTimerViewer: ViewerClasses.Viewer, countDownTime: Process.Ticks, countDownPieViewer: PieViewers.PieViewer, lockViewersTriState: ChoiceButtons.ThreeStateRef, lockViewers: BOOLEAN, displayCursorTriState: ChoiceButtons.ThreeStateRef, displayCursor: BOOLEAN, displayCaretsTriState: ChoiceButtons.ThreeStateRef, displayCarets: BOOLEAN, logViewer: ViewerClasses.Viewer, logMessage: ROPE ]; NewPressScreenTool: PROCEDURE [serverName: ROPE] RETURNS[psTool: PressScreenTool]; <> END. <> <> <<>> <<>>