-- WriteStringDefs.mesa
-- last modified by McCreight, August 5, 1982 12:26 PM
-- written by Hilton, August 4, 1982 1:42 PM

DIRECTORY
ppdefs;

WriteStringDefs: DEFINITIONS
IMPORTS ppdefs =

BEGIN OPEN ppdefs;


DrawOb: PROCEDURE[ob: obPtr, min: Point];
-- This procedure takes a pointer to an object
-- and puts an instance of it whose upper left corner is
-- at min onto the masterList to be displayed.


MakeCell: PROCEDURE[lpp: listPtr] RETURNS[ob: obPtr, min: Point];
-- This procedure makes a new unnamed cell of the
-- object instances on the list lpp. The upper left corner
-- of those instances is returned in min.


StringToRectangles: PROCEDURE [s: STRING, proc:
PROCEDURE [r: Rect]];
-- This procedure receives a string, s, finds cells for each of the
-- string’s characters and makes rectangles for each character.


ReadFont: PROCEDURE;
-- This procedure reads the named cells for the font "font.chip" into
-- the global variable "font". It can generate the SIGNAL NoFont.

NoFont: SIGNAL;

ReleaseFont: PROCEDURE;
-- This procedure clears out the named cells for the font from
-- the global variable "font". It must be called by any program
-- that calls StringToRectangles or ReadFont before user
-- interaction or output is possible, because if the output
-- routine encounters those cells in the cell super list,
-- a malformed output file can result.

font: PRIVATE LONG POINTER TO cList;

END. -- of WriteStringDefs --