ImagerPrivate.mesa
Copyright © 1985 by Xerox Corporation. All rights reserved.
Doug Wyatt, May 16, 1985 3:37:55 pm PDT
Michael Plass, June 11, 1985 3:00:01 pm PDT
DIRECTORY
Atom USING [PropList],
Imager USING [Color, ColorOperator, Context, Font, PathProc, PixelArray, Rectangle, StrokeEnd, StrokeJoint, Transformation, VEC, XStringProc],
ImagerBackdoor USING [Clipper, IntKey, RealKey];
ImagerPrivate: CEDAR DEFINITIONS
~ BEGIN OPEN ImagerBackdoor, Imager;
StrokeDashes: TYPE ~ REF StrokeDashesRep;
StrokeDashesRep: TYPE ~ RECORD[begin, repeat, end: DashPattern ← NIL];
DashPattern: TYPE ~ LIST OF DashSpec;
DashSpec: TYPE ~ RECORD[end: StrokeEnd, joint: StrokeJoint, width, length, stretch: REAL];
Class: TYPE ~ REF ClassRep;
ClassRep: TYPE ~ RECORD[
type: ATOM ←,
DoSave: PROC[context: Context, action: PROC, all: BOOL] ←,
SetInt: PROC[context: Context, key: IntKey, val: INT] ←,
SetReal: PROC[context: Context, key: RealKey, val: REAL] ←,
SetT: PROC[context: Context, m: Transformation] ←,
SetFont: PROC[context: Context, font: Font] ←,
SetColor: PROC[context: Context, color: Color] ←,
SetClipper: PROC[context: Context, clipper: Clipper] ←,
SetStrokeDashes: PROC[context: Context, strokeDashes: StrokeDashes] ←,
GetInt: PROC[context: Context, key: IntKey] RETURNS[INT] ←,
GetReal: PROC[context: Context, key: RealKey] RETURNS[REAL] ←,
GetT: PROC[context: Context] RETURNS[Transformation] ←,
GetFont: PROC[context: Context] RETURNS[Font] ←,
GetColor: PROC[context: Context] RETURNS[Color] ←,
GetClipper: PROC[context: Context] RETURNS[Clipper] ←,
GetStrokeDashes: PROC[context: Context] RETURNS[StrokeDashes] ←,
ConcatT: PROC[context: Context, m: Transformation] ←,
Scale2T: PROC[context: Context, s: VEC] ←,
RotateT: PROC[context: Context, a: REAL] ←,
TranslateT: PROC[context: Context, t: VEC] ←,
Move: PROC[context: Context, rounded: BOOL] ←,
SetXY: PROC[context: Context, p: VEC] ←,
SetXYRel: PROC[context: Context, v: VEC] ←,
Show: PROC[context: Context, string: XStringProc, xrel: BOOL] ←,
ShowText: PROC[context: Context, text: REF READONLY TEXT, start, len: NAT, xrel: BOOL] ←,
StartUnderline: PROC[context: Context] ←,
MaskUnderline: PROC[context: Context, dy, h: REAL] ←,
CorrectMask: PROC[context: Context] ←,
CorrectSpace: PROC[context: Context, v: VEC] ←,
Space: PROC[context: Context, x: REAL] ←,
SetCorrectMeasure: PROC[context: Context, v: VEC] ←,
SetCorrectTolerance: PROC[context: Context, v: VEC] ←,
Correct: PROC[context: Context, action: PROC] ←,
DontCorrect: PROC[context: Context, action: PROC, saveCP: BOOL] ←,
SetGray: PROC[context: Context, f: REAL] ←,
SetSampledColor: PROC[context: Context, pa: PixelArray,
m: Transformation, colorOperator: ColorOperator] ←,
SetSampledBlack: PROC[context: Context, pa: PixelArray,
m: Transformation, clear: BOOL] ←,
MaskFill: PROC[context: Context, path: PathProc, parity: BOOL] ←,
MaskRectangle: PROC[context: Context, r: Rectangle] ←,
MaskRectangleI: PROC[context: Context, x, y, w, h: INTEGER] ←,
MaskStroke: PROC[context: Context, path: PathProc, closed: BOOL] ←,
MaskVector: PROC[context: Context, p1, p2: VEC] ←,
MaskPixel: PROC[context: Context, pa: PixelArray] ←,
MaskBits: PROC[context: Context, base: LONG POINTER, wordsPerLine: NAT,
sMin, fMin, sSize, fSize: NAT, tx, ty: INTEGER] ←,
DrawBits: PROC[context: Context, base: LONG POINTER, wordsPerLine: NAT,
sMin, fMin, sSize, fSize: NAT, tx, ty: INTEGER] ← NIL,
Clip: PROC[context: Context, path: PathProc, parity: BOOL, exclude: BOOL] ←,
ClipRectangle: PROC[context: Context, r: Rectangle, exclude: BOOL] ←,
ClipRectangleI: PROC[context: Context, x, y, w, h: INTEGER, exclude: BOOL] ←,
GetCP: PROC[context: Context, rounded: BOOL] RETURNS[VEC] ←,
GetBoundingRectangle: PROC[context: Context] RETURNS[Rectangle] ←,
propList: Atom.PropList ← NIL
];
SetStrokeDashes: PROC[context: Context, strokeDashes: StrokeDashes];
GetStrokeDashes: PROC[context: Context] RETURNS[StrokeDashes];
END.