DIRECTORY CD, Rope USING [ROPE], Graphics USING [FontRef]; CDTexts: CEDAR DEFINITIONS = BEGIN TextPtr: TYPE = REF TextRec; TextRec: TYPE = RECORD [ text: Rope.ROPE, font: REF FontRec ]; FontRec: TYPE = RECORD [ font: Graphics.FontRef, baseOffsetX: REAL _ 0.0, --after scaling baseOffsetY: REAL _ 0.0, --after scaling scaling: BOOL _ FALSE, scale: REAL _ 1, height: CD.DesignNumber _ -1, --after scaling whiteBorder: CD.DesignNumber _ 0, --border offset on creation scaleByReplacingFontAllowed: BOOL _ FALSE, layerSubstitute: CD.Layer _ CD.combined, key: ATOM _ NIL, --unique for the technology name: Rope.ROPE _ NIL, --if known technology: CD.Technology_NIL, properties: CD.Properties _ NIL, data: REF ANY _ NIL ]; CreateText: PROC [text: Rope.ROPE, font: REF FontRec, layer: CD.Layer _ CD.combined] RETURNS [CD.ObPtr]; InstallFont: PROC [font: REF FontRec, key: ATOM_NIL, technology: CD.Technology] RETURNS [done: BOOL]; GetFont: PROC[key: ATOM, technology: CD.Technology _ NIL] RETURNS [REF FontRec]; MakeFont: PROC [ name: Rope.ROPE_NIL, scale: REAL _ 1, scaleByReplacingFontAllowed: BOOL _ FALSE, layerSubstitute: CD.Layer _ CD.combined] RETURNS [REF FontRec]; END. ”CDTexts.mesa A Chipndale module Copyright c 1983 by Xerox Corporation. All rights reserved. by Christian Jacobi July 29, 1983 10:42 am last edited by Christian Jacobi November 21, 1983 3:26 pm --key and technology overwrite font^ --done means GetFont would find the font --caller is supposed not to change font^ after Installation --returns NIL if not found --returns NIL if not found; Ê›˜šœ"™"Jšœ Ïmœ1™