<<-- TEditFormat.mesa Edited by Paxton on December 2, 1982 2:48 pm>> DIRECTORY GraphicsOps USING [BitmapRef], NodeStyle USING [LineFormatting, Ref], TEditCompile USING [maxCharsPerLine], TEditDocument USING [LineBreak, TEditDocumentData], TextEdit USING [Offset, RefTextNode], TextLooks USING [Looks, noLooks], TextNode USING [Location], VFonts USING [Font], ViewerClasses USING [Viewer]; TEditFormat: CEDAR DEFINITIONS = BEGIN OPEN TextNode, TEditDocument; GetLineBitmap: PROC [viewer: ViewerClasses.Viewer, tdd: TEditDocumentData, node: TextEdit.RefTextNode, pos: TextEdit.Offset, formatInfo: FormatInfo, trimEnd: BOOLEAN _ FALSE] RETURNS [bitmap: Bitmap] ; FormatInfo: TYPE = REF FormatInfoRec ; FormatInfoRec: TYPE = RECORD [ nodeStyle: NodeStyle.Ref _ NIL, tabStyle: NodeStyle.Ref _ NIL, charStyle: NodeStyle.Ref _ NIL, font: VFonts.Font _ NIL, lineFormatting: NodeStyle.LineFormatting _ NULL, leftIndent: INTEGER _ NULL, bodyIndent: INTEGER _ NULL, firstIndent: INTEGER _ NULL, lineMeasure: INTEGER _ NULL, savedLooks: TextLooks.Looks _ TextLooks.noLooks, tabWidth: INTEGER _ NULL, -- in char widths italSlice: INTEGER _ 0, italRem: INTEGER _ 0, italPieces: INTEGER _ 0, italInitDx: INTEGER _ 0, italInitDy: CARDINAL _ 0, italDy: CARDINAL _ 0, italInitFdy: CARDINAL _ 0, italFdy: CARDINAL _ 0 ]; Bitmap: TYPE = REF BitmapRec ; BitmapRec: TYPE = RECORD [ bits: GraphicsOps.BitmapRef, yOffset: INTEGER _ 0, ascent: INTEGER _ 0, descent: INTEGER _ 0, width: INTEGER _ 0, chars: INTEGER _ 0, leftIndent: INTEGER _ 0, break: LineBreak ]; CharWidth: TYPE = INTEGER _ LAST[INTEGER]; LineInfoRec: TYPE = ARRAY [0..TEditCompile.maxCharsPerLine) OF CharWidth; LineInfo: TYPE = REF LineInfoRec; GetLineInfo: PROC [viewer: ViewerClasses.Viewer, tdd: TEditDocumentData, pos: Location, nodeStyle: NodeStyle.Ref] RETURNS [lineInfo: LineInfo, ascent: INTEGER, descent: INTEGER, nextPos: Location, nChars: CARDINAL, leading: INTEGER] ; END.