NewerBottom:
CEDAR
DEFINITIONS = {
Bitmap: TYPE = GraphicsOps.BitmapRef;
Box: TYPE = GraphicsBasic.Box;
Context:TYPE = Graphics.Context;
Path: TYPE = Graphics.Path;
Transform: TYPE = GraphicsBasic.Transformation;
Conser: TYPE = REF ConserRep;
ConserRep:
TYPE =
RECORD [
Cons: PROC [arg: REF ANY] RETURNS [context: Context],
arg: REF ANY];
Replace: PROC [conser: Conser, paint: BOOL ← TRUE];
Vanillify: PROC [paint: BOOL ← TRUE];
XFormArg: TYPE = REF XFormArgRep;
XFormArgRep:
TYPE =
RECORD [
t: Transform ← [1, 0, 0, 1, 0, 0],
clipBox: Box ← [0, 0, 0, 0],
clipByBox: BOOL ← FALSE,
clipPath: Path ← NIL,
clipByPath: BOOL ← FALSE,
Client not responsible for fields below:
screenB, bufferB: Bitmap ← NIL
];
DoXFormer: PROC [xfa: XFormArgRep, paint: BOOL ← TRUE];
Circle: PROC [x, y, r: REAL] RETURNS [p: Path];
}.