<> <> <> <<>> DIRECTORY Imager, ImagerBasic, ImagerPrivate; ImagerDefault: CEDAR DEFINITIONS = BEGIN Context: TYPE = Imager.Context; FONT: TYPE = Imager.FONT; Color: TYPE = ImagerBasic.Color; IntPair: TYPE = ImagerBasic.IntPair; IntRectangle: TYPE = ImagerBasic.IntRectangle; Pair: TYPE = ImagerBasic.Pair; PathMapType: TYPE = ImagerBasic.PathMapType; PixelArray: TYPE = ImagerBasic.PixelArray; StrokeEnd: TYPE = ImagerBasic.StrokeEnd; Transformation: TYPE = ImagerBasic.Transformation; Visibility: TYPE = ImagerBasic.Visibility; Name: TYPE = ImagerPrivate.Name; State: TYPE = REF StateRep; StateRep: TYPE = RECORD[ -- persistent variables -- cpx, cpy: REAL, correctMX, correctMY: REAL, -- nonpersistent variables -- nps: NonPersistentState ]; NonPersistentState: TYPE = RECORD[ T: Transformation, priorityImportant: INT, mediumXSize, mediumYSize: REAL, fieldXMin, fieldYMin, fieldXMax, fieldYMax: REAL, showVec: REF, color: Color, noImage: INT, strokeWidth: REAL, strokeEnd: INT, underlineStart: REAL, amplifySpace: REAL, correctPass: INT, correctShrink: REAL, correctTX, correctTY: REAL, clipper: REF, -- CORRECT variables -- correctMaskCount: INT, correctMaskX, correctMaskY: REAL, correctSumX, correctSumY: REAL, correctSpaceX, correctSpaceY: REAL, correctcpx, correctcpy: REAL, correctTargetX, correctTargetY: REAL ]; <> < [any]>> < [x, y]>> < [x, y]>> <<>> <> <> <> <> <<>> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <> <<>> <> <> <> <> <> <> <> <> <> <> <<>> <> <> <> <> <> <<>> <> <> <<>> <> <<---------------->> <> <<>> InitState: PROC [context: Context]; <> IGet: PROC [context: Context, n: Name] RETURNS[REF]; <> ISet: PROC [context: Context, n: Name, x: REF]; <> IGetReal: PROC[context: Context, n: Name] RETURNS[REAL]; <> ISetReal: PROC[context: Context, n: Name, x: REAL]; <> IGetInt: PROC[context: Context, n: Name] RETURNS[INT]; <> ISetInt: PROC[context: Context, n: Name, x: INT]; <> ConcatT: PROC[context: Context, m: Transformation]; TranslateT: PROC[context: Context, x, y: REAL]; RotateT: PROC[context: Context, a: REAL]; ScaleT: PROC[context: Context, s: REAL]; Scale2T: PROC[context: Context, sx, sy: REAL]; Move: PROC[context: Context]; Trans: PROC[context: Context]; SetXY: PROC[context: Context, p: Pair]; IntegerSetXY: PROC[context: Context, x, y: INTEGER]; SetXYRel: PROC[context: Context, v: Pair]; IntegerSetXYRel: PROC[context: Context, x, y: INTEGER]; GetCP: PROC[context: Context] RETURNS[Pair]; GetCPRounded: PROC[context: Context] RETURNS[Pair]; MaskVector: PROC[context: Context, x1, y1, x2, y2: REAL]; IntegerMaskVector: PROC[context: Context, x1, y1, x2, y2: INTEGER]; StartUnderline: PROC[context: Context]; MaskUnderline: PROC[context: Context, dy, h: REAL]; IntegerMaskUnderline: PROC[context: Context, dy, h: INTEGER]; CorrectMask: PROC[context: Context]; CorrectSpace: PROC[context: Context, v: Pair]; SetCorrectMeasure: PROC[context: Context, v: Pair]; SetCorrectTolerance: PROC[context: Context, v: Pair]; Space: PROC[context: Context, x: REAL]; IntegerSpace: PROC[context: Context, x: INTEGER]; Correct: PROC[context: Context, body: PROC]; Reset: PROC[context: Context]; DrawBitmap: PROC[context: Context, base: LONG POINTER, raster: CARDINAL, area: IntRectangle]; MaskBits: PROC[context: Context, base: LONG POINTER, raster: CARDINAL, tile: IntRectangle, area: IntRectangle]; GetSurfaceBounds: PROC[context: Context] RETURNS[IntRectangle]; END.