DIRECTORY Imager USING [Box], ViewerClasses USING [Viewer], ImagerColor USING [RGB, HSV, HSL, YIQ], CNSColor USING [CSLChroma, CSLSaturation, CSLLightness, red, vivid, medium], ImagerColorMap USING [MapEntry]; ColorPatch: CEDAR DEFINITIONS ~ BEGIN Viewer: TYPE = ViewerClasses.Viewer; ColorPatchViewer: TYPE = Viewer; MakeColorPatch: PROCEDURE[parent: Viewer, wx, wy, width, height: CARDINAL] RETURNS[ColorPatchViewer]; InterpolationType: TYPE = {left, right, stop, off}; ColorPatchData: TYPE = REF ColorPatchDataRec; ColorPatchDataRec: TYPE = RECORD [ box: Imager.Box, patchMapEntry: ImagerColorMap.MapEntry _ [mapIndex: 100, red: 0, green: 0, blue: 0], rgbContrastMapEntry: ImagerColorMap.MapEntry _ [mapIndex: 99, red: 0, green: 0, blue: 0], hsvContrastMapEntry: ImagerColorMap.MapEntry _ [mapIndex: 98, red: 0, green: 0, blue: 0], hslContrastMapEntry: ImagerColorMap.MapEntry _ [mapIndex: 97, red: 0, green: 0, blue: 0], yiqContrastMapEntry: ImagerColorMap.MapEntry _ [mapIndex: 96, red: 0, green: 0, blue: 0], argybContrastMapEntry: ImagerColorMap.MapEntry _ [mapIndex: 95, red: 0, green: 0, blue: 0], leftInterpolateMapEntry: ImagerColorMap.MapEntry _ [mapIndex: 94, red: 255, green: 255, blue: 255], rightInterpolateMapEntry: ImagerColorMap.MapEntry _ [mapIndex: 77, red: 255, green: 255, blue: 255], separate: BOOLEAN _ FALSE, dither: BOOLEAN _ FALSE, -- dither=TRUE means that half of the color patch is dithered consistencyCheck: BOOLEAN _ FALSE, -- consistencyCheck=TRUE means that the color space which is being modified is checked for consistency with the computed RGB values rgbContrast, hsvContrast, hslContrast, yiqContrast, argybContrast: BOOLEAN _ FALSE, -- xxxContrast=TRUE means that the contrasting patch for xxx is visible interpolationRequest: InterpolationType _ off, -- off: interpolation bar invisible; left: track left side of interpolation bar; right: track right side of interpolation bar; stop: stop tracking color patch leftInterpolateColor: ImagerColor.RGB _ [1,1,1], rightInterpolateColor: ImagerColor.RGB _ [1,1,1], rgb: ImagerColor.RGB _ [0,0,0], hsv: ImagerColor.HSV _ [0,0,0], hsl: ImagerColor.HSL _ [0,0,0], yiq: ImagerColor.YIQ _ [0,0,0], argybA: REAL _ 0.0, argybRg: REAL _ 0.0, argybYb: REAL _ 0.0, cslC: CNSColor.CSLChroma _ CNSColor.red, cslS: CNSColor.CSLSaturation _ CNSColor.vivid, cslL: CNSColor.CSLLightness _ CNSColor.medium ]; END. ΌColorPatch.mesa Copyright c 1985 by Xerox Corporation. All rights reserved. Written by: Maureen Stone August 15, 1985 10:12:32 pm PDT Avi Naiman, September 8, 1985 7:47:13 pm PDT Κ*˜codešœ Οkœ™Kšœ Οmœ1™˜LKšœœ ˜ K™—KšΠln œœ ˜šœ˜K˜Kšœœ˜$Jšœœ ˜ JšΟnœ œ(œœ˜eJ˜Jšœœ˜3J˜Jšœœœ˜.šœœœ˜"J˜JšœT˜TJšœY˜YJšœY˜YJšœY˜YJšœY˜YJšœ[˜[Jšœc˜cJšœd˜dJšœ œœ˜JšœœœΟc=˜XJšœœœ‘ƒ˜¨JšœCœœ‘G˜œJšœ/‘ž˜ΝJšœ"œ ˜0Jšœ#œ ˜1Jšœœ ˜Jšœœ ˜Jšœœ ˜Jšœœ ˜Jšœœ˜Jšœ œ˜Jšœ œ˜Jšœ(˜(Jšœ.˜.Jšœ-˜-Jšœ˜—J˜K˜—K˜Kšœ˜—…— \ B