Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

463 lines
21 KiB

/* WARNING: This file was machine generated from "\mactools\include\mpw\grlibrar.mpw".
** Changes to this file will be lost when it is next generated.
*/
/* graphics libraries:
general library interfaces
by Cary Clark, Georgiann Delaney, Michael Fairman, Dave Good, Robert Johnson, Keith McGreggor, Oliver Steele, David Van Brink, Chris Yerga
Copyright 1987 - 1991 Apple Computer, Inc. All rights reserved. */
#ifndef graphicsLibrariesIncludes
#define graphicsLibrariesIncludes
#ifdef __cplusplus
extern "C" {
#endif
#ifndef graphicsRoutinesIncludes
#include "grroutin.h"
#endif
#ifndef mathRoutinesIncludes
#include "mathrout.h"
#endif
#ifndef qdTextIncludes
#define DrawChar gDrawChar
#endif
#define NilShapeReturn(a) {if ((a) == (shape) nil) {PostGraphicsError(shape_is_nil); return; }}
#define NilShapeReturnNil(a) {if ((a) == (shape) nil) {PostGraphicsError(shape_is_nil); return 0L; }}
#define NilStyleReturn(a) {if ((a) == (style) nil) {PostGraphicsError(style_is_nil); return; }}
#define NilStyleReturnNil(a) {if ((a) == (style) nil) {PostGraphicsError(style_is_nil); return 0L; }}
#define NilInkReturn(a) {if ((a) == (ink) nil) {PostGraphicsError(ink_is_nil); return; }}
#define NilInkReturnNil(a) {if ((a) == (ink) nil) {PostGraphicsError(ink_is_nil); return 0L; }}
#define NilTransformReturn(a) {if ((a) == (transform) nil) {PostGraphicsError(transform_is_nil); return; }}
#define NilTransformReturnNil(a) {if ((a) == (transform) nil) {PostGraphicsError(transform_is_nil); return 0L; }}
#define NilColorSetReturn(a) {if ((a) == (colorSet) nil) {PostGraphicsError(colorSet_is_nil); return; }}
#define NilColorSetReturnNil(a) {if ((a) == (colorSet) nil) {PostGraphicsError(colorSet_is_nil); return 0L; }}
#define NilColorProfileReturn(a) {if ((a) == (colorProfile) nil) {PostGraphicsError(colorProfile_is_nil); return; }}
#define NilColorProfileReturnNil(a) {if ((a) == (colorProfile) nil) {PostGraphicsError(colorProfile_is_nil); return 0L; }}
#define NilTagReturn(a) {if ((a) == (tag) nil) {PostGraphicsError(tag_is_nil); return; }}
#define NilTagReturnNil(a) {if ((a) == (tag) nil) {PostGraphicsError(tag_is_nil); return 0L; }}
#ifdef debugging
#define IfDebug(a, b) {if (a) DebugStr(b);}
#define IfDebugReturn(a, b) {if (a) { DebugStr(b); return; }}
#define IfDebugReturnNil(a, b) {if (a) { DebugStr(b); return 0L; }}
#define NilParamReturn(a) {if ((a) == 0L) {PostGraphicsError(parameter_is_nil); return; }}
#define NilParamReturnNil(a) {if ((a) == 0L) {PostGraphicsError(parameter_is_nil); return 0L; }}
#define IfErrorReturn(a,b) {if (a) { PostGraphicsError(b); return; }}
#define IfErrorReturnNil(a,b) {if (a) { PostGraphicsError(b); return 0L; }}
#define IfNotice(a, b) {if (a) PostGraphicsNotice(b);}
#define IfWarning(a,b) {if (a) PostGraphicsWarning(b);}
#define IfWarningReturn(a,b) {if (a) { PostGraphicsWarning(b); return; }}
#define IfWarningReturnNil(a,b) {if (a) { PostGraphicsWarning(b); return 0L; }}
#else
#define IfDebug(a, b)
#define IfDebugReturn(a, b)
#define IfDebugReturnNil(a, b)
#define NilParamReturn(a)
#define NilParamReturnNil(a)
#define IfErrorReturn(a,b)
#define IfErrorReturnNil(a,b)
#define IfNotice(a, b)
#define IfWarning(a,b)
#define IfWarningReturn(a,b) {if (a) return;}
#define IfWarningReturnNil(a,b) {if (a) return 0L;}
#endif
typedef enum {
/* color names */
gxWhite = 1, gxBlack, gxGray, gxGrey = gxGray,
#ifndef __QUICKDRAW__
white = 1, black, gray, grey = gray,
#endif
/* primaries */
red, green, blue,
/* secondaries */
cyan, magenta, yellow,
/* tertiaries */
orange, chartreuse, aqua, teal = aqua,
slate, purple, violet = purple, maroon,
/* others */
brown, pink, turquoise,
cadmium_lemon, cadmium_light_yellow, aureoline_yellow, naples_deep_yellow,
cadmium_yellow, cadmium_deep_yellow, cadmium_orange, cadmium_light_red,
cadmium_deep_red, geranium_lake, alizarin_crimson, rose_madder,
madder_deep_lake, brown_madder, permanent_red_violet, cobalt_deep_violet,
ultramarine_violet, ultramarine_blue, cobalt_blue, royal_blue,
cerulean_blue, manganese_blue, indigo, turquoise_blue,
emerald_green, permanent_green, viridian_light, cobalt_green,
cinnabar_green, sap_green, chromium_oxide_green, terre_verte,
yellow_ochre, mars_yellow, raw_sienna, mars_orange,
gold_ochre, brown_ochre, deep_ochre, burnt_umber,
burnt_sienna, flesh, flesh_ochre, english_red,
venetian_red, indian_red, raw_umber, greenish_umber,
van_dyck_brown, sepia, warm_grey, cold_grey,
ivory_black, lamp_black, titanium_white, zinc_white,
pale_gold, gold, old_gold, pink_gold,
white_gold, yellow_gold, green_gold, platinum,
silver, antique_silver, chrome, steel,
copper, antique_copper, oxidized_copper, bronze,
brass, iron, rusted_iron, lead,
fluorescent_pink, fluorescent_green, fluorescent_blue,
incadescent_high, incadescent_low,
moonlight, sodium, daylight, dawn,
afternoon, dusk,
mauve,
apple_green, apple_yellow, apple_orange, apple_red,
apple_purple, apple_blue,
/* color modifiers */
light = 512,
dark = 1024,
warm = 2048,
reddish = warm,
cool = 4096,
bluish = cool,
grayish = 8192,
whitish = light,
blackish = dark,
greenish = 16384
} commonColors;
typedef long commonColor;
extern colorSet commonColorSet;
extern setColor commonColorList[];
extern short commonColorCount;
/* some very useful constructive definitions for creating colors */
/* see 'color library.c' for an example of their use... */
#define makeRGBSHORT(a,b,c) ((c >> 14) + ((b >> 13) + (a >> 13) << 3) << 3)
#define makeCMYKSHORT(a,b,c,d) ((d >> 14) + ((c >> 14) + ((b >> 14) + (a >> 14) << 2) << 2) << 2)
#define makeRGB16(a,b,c) ((c >> 11) + ((b >> 11) + (a >> 11) << 5) << 5)
#define makeCMYK16(a,b,c,d) ((d >> 12) + ((c >> 12) + ((b >> 12) + (a >> 12) << 4) << 4) << 4)
#define xRGB256(a,b,c) {rgbSpace,nil,{(a << 8)+a,(b << 8)+b,(c << 8)+c, 0 }}
#define xRGB(a,b,c) {rgbSpace,nil,{a,b,c,0}}
#define xCMYK(a,b,c,d) {cmykSpace,nil,{a,b,c,d}}
#define xHSV(a,b,c) {hsvSpace,nil,{a,b,c,0}}
#define xCIE(a,b,c) {cieSpace,nil,{a,b,c,0}}
#define xYIQ(a,b,c) {yiqSpace,nil,{a,b,c,0}}
#define xXYZ(a,b,c) {xyzSpace,nil,{a,b,c,0}}
#define xYUV(a,b,c) {yuvSpace,nil,{a,b,c,0}}
#define xLUV(a,b,c) {luvSpace,nil,{a,b,c,0}}
#define xLAB(a,b,c) {labSpace,nil,{a,b,c,0}}
#define xHLS(a,b,c) {hlsSpace,nil,{a,b,c,0}}
#define xACC(a,b,c) {accSpace,nil,{a,b,c,0}}
#define xNTSC(a,b,c) {ntscSpace,nil,{a,b,c,0}}
#define xPAL(a,b,c) {palSpace,nil,{a,b,c,0}}
#define xSECAM(a,b,c) {secamSpace,nil,{a,b,c,0}}
#define xDIGITALVIDEO(a,b,c) {digitalVideoSpace,nil,{a,b,c,0}}
#define xGRAY(a) {graySpace,nil,{a,0,0,0}}
#define xRGB16(a,b,c) {rgb16Space,nil,{makeRGB16(a,b,c),0,0,0}}
#define xCMYK16(a,b,c,d) {cmyk16Space,nil,{makeCMYK16(a,b,c,d),0,0,0}}
#define xRGB32(a,b,c) {rgb32Space,nil,{(a >> 8),((c >> 8) + (b >> 8) << 8),0,0}}
#define xCMYK32(a,b,c,d) {cmyk32Space,nil,{((b >> 8) + (a >> 8) << 8),((d >> 8) + (c >> 8) << 8),0,0}}
#define sRGB(r,g,b) {r,g,b,0}
#define sCMYK(c,m,y,k) {c,m,y,k}
#define sRGB256(a,b,c) {(a << 8)+a,(b << 8)+b,(c << 8)+c, 0 }
#ifndef _Quickdraw_
#ifndef __QUICKDRAW__
/*
* The following items are duplicated in LSC QuickDraw.h, so we might
* skip them here.
*/
typedef enum {
bold = 1,
italic = 2,
underline = 4,
outline = 8,
shadow = 0x10,
condense = 0x20,
extend = 0x40
} commonFaces;
#endif
#endif // /* ifndef _Quickdraw_ */
enum {
plain,
lighten = 0x80
};
typedef char commonFace;
typedef enum { /* These modes simulate QuickDraw's transfer modes */
commonAddOverMode = 2000,
commonSubtractOverMode,
commonSubtractPinMode,
commonTransparentMode,
commonInMode,
commonOutMode
} commonTransferModes;
typedef struct {
point a;
point b;
point c;
point d;
} cubic;
typedef struct {
point a;
point b;
point c;
fixed lambda;
} conic;
/* shape library */
__sysapi shape __cdecl NewPath(const path *);
__sysapi shape __cdecl NewPolygon(const polygon *);
__sysapi polygon * __cdecl GetPolygon(shape, long contour, polygon *);
__sysapi path * __cdecl GetPath(shape, long contour, path *);
__sysapi void __cdecl SetPath(shape, long contour, const path *);
__sysapi void __cdecl SetPolygon(shape, long contour, const polygon *);
__sysapi void __cdecl DrawPolygon(const polygon *, shapeFill);
__sysapi void __cdecl DrawPath(const path *, shapeFill);
__sysapi void __cdecl SetShapeIndexPoint(shape, long index, const point *);
__sysapi void __cdecl SetShapeIndexControl(shape, long index, long control);
__sysapi point * __cdecl GetShapeIndexPoint(shape, long index, point *);
__sysapi long __cdecl GetShapeIndexControl(shape, long index, long *control);
__sysapi void __cdecl InsertShape(shape, long index, shape toAdd);
__sysapi shape __cdecl ExtractShape(shape source, long firstPoint, long numPoints);
__sysapi void __cdecl AddToShape(shape dest, shape add);
__sysapi void __cdecl ExtendShape(shape dest, shape add);
#ifdef debugging
__sysapi shape __cdecl NewShape2(shapeType, fixed, fixed);
__sysapi shape __cdecl NewShape4(shapeType, fixed, fixed, fixed, fixed);
__sysapi shape __cdecl NewShape6(shapeType, fixed, fixed, fixed, fixed, fixed, fixed);
__sysapi void __cdecl SetShape2(shape, fixed, fixed);
__sysapi void __cdecl SetShape4(shape, fixed, fixed, fixed, fixed);
__sysapi void __cdecl SetShape6(shape, fixed, fixed, fixed, fixed, fixed, fixed);
#else
#define NewShape2(type,p1,p2) NewShapeMany(type, (fixed)p1, (fixed)p2)
#define NewShape4(type,p1,p2, p3, p4) NewShapeMany(type, (fixed)p1, (fixed)p2, (fixed)p3, (fixed)p4)
#define NewShape6(type,p1,p2, p3, p4, p5, p6) NewShapeMany(type, (fixed)p1, (fixed)p2, (fixed)p3, (fixed)p4, (fixed)p5, (fixed)p6)
#define SetShape2(source,p1,p2) SetShapeMany(source, (fixed)p1, (fixed)p2)
#define SetShape4(source,p1,p2, p3, p4) SetShapeMany(source, (fixed)p1, (fixed)p2, (fixed)p3, (fixed)p4)
#define SetShape6(source,p1,p2, p3, p4, p5, p6) SetShapeMany(source, (fixed)p1, (fixed)p2, (fixed)p3, (fixed)p4, (fixed)p5, (fixed)p6)
#endif
__sysapi shape __cdecl NewShapeMany(shapeType type, fixed firstArg, ...);
__sysapi void __cdecl SetShapeMany(shape target, fixed firstArg, ...);
/* arc library, oval library, roundrect library, cubic library, and conic library */
__sysapi shape __cdecl NewArc(const rectangle *, fixed startAng, fixed sweep, boolean wedge);
__sysapi shape __cdecl NewOval(const rectangle *);
__sysapi shape __cdecl NewRoundRect(const rectangle *, const point *ovalSize);
__sysapi shape __cdecl NewCubic(const cubic *);
__sysapi shape __cdecl NewConic(const conic *);
__sysapi void __cdecl DrawArc(const rectangle *, fixed startAng, fixed sweep, boolean wedge);
__sysapi void __cdecl DrawOval(const rectangle *, shapeFill);
__sysapi void __cdecl DrawRoundRect(const rectangle *, const point *ovalSize, shapeFill);
__sysapi void __cdecl DrawCubic(const cubic *, shapeFill);
__sysapi void __cdecl DrawConic(const conic *, shapeFill);
__sysapi void __cdecl SetArc(shape, const rectangle *, fixed startAng, fixed sweep, boolean wedge);
__sysapi void __cdecl SetOval(shape, const rectangle *);
__sysapi void __cdecl SetRoundRect(shape, const rectangle *, const point *ovalSize);
__sysapi void __cdecl SetCubic(shape, const cubic *);
__sysapi void __cdecl SetConic(shape, const conic *);
/* graphics debug library */
__sysapi void __cdecl SetGraphicsLibraryErrors(void); /* set the error and warning routines */
__sysapi void __cdecl SetGraphicsLibraryNotices(void); /* set the notice routine */
__sysapi char * __cdecl GraphicsErrorMessage(graphicsError);
__sysapi char * __cdecl GraphicsWarningMessage(graphicsWarning);
__sysapi char * __cdecl GraphicsNoticeMessage(graphicsNotice);
__sysapi void __cdecl DisplayGraphicsErrorMessage(graphicsError, long);
__sysapi void __cdecl DisplayGraphicsWarningMessage(graphicsWarning, long);
__sysapi void __cdecl DisplayGraphicsNoticeMessage(graphicsNotice, long);
/* shape library */
__sysapi void __cdecl CenterShape(shape, rectangle *);
__sysapi void __cdecl MoveShapeCenterTo(shape, fixed x, fixed y);
__sysapi void __cdecl RotateShapeAboutCenter(shape, fixed degrees);
__sysapi void __cdecl SkewShapeAboutCenter(shape, fixed xSkew, fixed ySkew);
__sysapi void __cdecl ScaleShapeAboutCenter(shape, fixed hScale, fixed vScale);
/* graphics library */
__sysapi void __cdecl MapShapeToSpace(shape, viewPort, viewDevice);
__sysapi void __cdecl MapShapeFromSpace(shape, viewPort, viewDevice);
__sysapi void __cdecl MapPointToSpace(point *, viewPort, viewDevice);
__sysapi void __cdecl MapPointFromSpace(point *, viewPort, viewDevice);
/* transform library */
__sysapi viewPort __cdecl GetTransformViewPort(transform);
__sysapi void __cdecl SetTransformViewPort(transform, viewPort);
__sysapi void __cdecl AddToTransformViewPort(transform target, viewPort);
__sysapi void __cdecl SetShapeViewPort(shape, viewPort);
__sysapi viewPort __cdecl GetShapeViewPort(shape);
__sysapi void __cdecl SetDeepShapeViewPort(shape, viewPort);
__sysapi void __cdecl SetDeepShapeViewPorts(shape, long count, const viewPort portList[]);
__sysapi void __cdecl SetDeepShapeTransform(shape, transform);
__sysapi void __cdecl SetDefaultViewPort(viewPort);
__sysapi viewGroup __cdecl CopyViewGroup(viewGroup group);
__sysapi transform __cdecl ChangeTransformViewGroup(transform xform, viewGroup oldGroup, viewGroup newGroup);
__sysapi shape __cdecl ChangeShapeViewGroup(shape source, viewGroup oldGroup, viewGroup newGroup);
__sysapi transform __cdecl SeparateShapeTransform(shape source);
__sysapi void __cdecl ReuniteShapeTransform(shape target, transform separate);
/* graphics state library */
__sysapi style __cdecl SeparateShapeStyle(shape source);
__sysapi void __cdecl ReuniteShapeStyle(shape target, style separate);
__sysapi ink __cdecl SeparateShapeInk(shape source);
__sysapi void __cdecl ReuniteShapeInk(shape target, ink separate);
/* shape library */
__sysapi void __cdecl GetPathsIndexPointControl(const paths *, long index, point **pt, long **controlPtr, long *controlMask);
__sysapi void __cdecl SetShapeOpenPath(shape);
__sysapi void __cdecl PreMapTransform(transform source, mapping map);
/* graphics library */
#define CopyShape(s) CopyToShape(nil,s)
#define CopyStyle(s) CopyToStyle(nil,s)
#define CopyInk(s) CopyToInk(nil,s)
#define CopyTransform(s) CopyToTransform(nil,s)
__sysapi void __cdecl DisposeTransformAt(transform *);
__sysapi void __cdecl DisposeShapeAt(shape *);
__sysapi void __cdecl DisposeStyleAt(style *);
__sysapi void __cdecl DisposeInkAt(ink *);
__sysapi void __cdecl DisposeTagAt(tag *);
/* color matching library */
__sysapi colorProfile __cdecl CreateQMSColorProfile(void);
__sysapi colorProfile __cdecl CreateCanonColorProfile(void);
/* color library */
__sysapi void __cdecl InitCommonColors(void);
__sysapi void __cdecl DisposeCommonColors(void);
__sysapi void __cdecl SetShapeRGB(shape, colorValue red, colorValue green, colorValue blue);
__sysapi void __cdecl SetInkRGB(ink, colorValue red, colorValue green, colorValue blue);
__sysapi void __cdecl SetShapeHSV(shape, colorValue hue, colorValue saturation, colorValue value);
__sysapi void __cdecl SetInkHSV(ink, colorValue hue, colorValue saturation, colorValue value);
__sysapi void __cdecl SetShapeGray(shape, colorValue gray);
__sysapi void __cdecl SetInkGray(ink, colorValue gray);
/* transferMode library, color library, text library */
__sysapi void __cdecl SetShapeCommonTransfer(shape, componentMode);
__sysapi void __cdecl SetShapeCommonColor(shape, commonColor);
__sysapi void __cdecl SetShapeCommonFace(shape, commonFace);
__sysapi void __cdecl SetInkCommonTransfer(ink, componentMode);
__sysapi void __cdecl SetInkCommonColor(ink, commonColor);
__sysapi void __cdecl SetStyleCommonFace(style, commonFace);
__sysapi componentMode __cdecl GetInkCommonTransfer(ink);
__sysapi commonColor __cdecl GetInkCommonColor(ink);
__sysapi commonFace __cdecl GetStyleCommonFace(style);
__sysapi componentMode __cdecl GetShapeCommonTransfer(shape);
__sysapi commonColor __cdecl GetShapeCommonColor(shape);
__sysapi commonFace __cdecl GetShapeCommonFace(shape);
__sysapi color * __cdecl SetCommonColor(color *, commonColor);
__sysapi commonColor __cdecl GetCommonColor(const color *);
/* color library */
__sysapi colorSpace __cdecl GetShapeColorSpace(shape target);
__sysapi colorProfile __cdecl GetShapeColorProfile(shape source);
__sysapi colorSet __cdecl GetShapeColorSet(shape source);
__sysapi colorSpace __cdecl GetInkColorSpace(ink target);
__sysapi colorProfile __cdecl GetInkColorProfile(ink source);
__sysapi colorSet __cdecl GetInkColorSet(ink source);
__sysapi void __cdecl SetShapeColorSpace(shape target, colorSpace space);
__sysapi void __cdecl SetShapeColorProfile(shape target, colorProfile profile);
__sysapi void __cdecl SetShapeColorSet(shape target, colorSet set);
__sysapi void __cdecl SetInkColorSpace(ink target, colorSpace space);
__sysapi void __cdecl SetInkColorProfile(ink target, colorProfile profile);
__sysapi void __cdecl SetInkColorSet(ink target, colorSet set);
__sysapi colorSet __cdecl GetViewDeviceColorSet(viewDevice source);
__sysapi void __cdecl SetViewDeviceColorSet(viewDevice target, colorSet set);
__sysapi colorProfile __cdecl GetViewDeviceColorProfile(viewDevice source);
__sysapi void __cdecl SetViewDeviceColorProfile(viewDevice target, colorProfile profile);
__sysapi long __cdecl GetColorSpaceComponents(colorSpace space);
/* transferMode library */
__sysapi void __cdecl InitTransferMode(transferMode *);
__sysapi transferMode * __cdecl SetCommonTransfer(transferMode *, componentMode, unsigned short opValue, const color *opColor);
__sysapi color * __cdecl TransmogrifyColor(color *dstColor, const color *srcColor, const transferMode *);
__sysapi void __cdecl SetInkFastXorTransfer(ink inky, viewDevice destDevice, color *background, color *result);
__sysapi void __cdecl SetShapeFastXorTransfer(shape source, color *background, color *result);
__sysapi shape __cdecl NewCString(const char *cString, const point *position);
__sysapi shape __cdecl NewPString(const char *pascalString, const point *position);
__sysapi shape __cdecl NewChar(const char theChar, const point *position);
__sysapi void __cdecl SetCString(shape target, const char *cString, const point *position);
__sysapi void __cdecl SetPString(shape target, const char *pascalString, const point *position);
__sysapi void __cdecl SetChar(shape target, char theChar, const point *position);
__sysapi void __cdecl DrawCString(const char *cString, const point *position);
__sysapi void __cdecl DrawPString(const char *pascalString, const point *position);
#ifndef qdTextIncludes
__sysapi void __cdecl DrawChar(const char theChar, const point *position);
#endif
__sysapi fixed __cdecl FixTextWidth(const unsigned char *, short length);
__sysapi fixed __cdecl FixCStringWidth(const char *);
__sysapi fixed __cdecl FixPStringWidth(const char *);
__sysapi fixed __cdecl FixCharWidth(char);
__sysapi point * __cdecl GetShapeAdvance(shape target, point *advance);
__sysapi void __cdecl SetGlyphText(shape, const unsigned char *text, long length);
__sysapi void __cdecl SetGlyphAdvance(shape, const long advanceBits[]);
__sysapi void __cdecl SetGlyphStyles(shape, const short styleRuns[], const style glyphStyles[]);
__sysapi long __cdecl GetGlyphText(shape, unsigned char *text);
__sysapi long __cdecl GetGlyphAdvance(shape, long advanceBits[]);
__sysapi long __cdecl GetGlyphStyles(shape, short styleRuns[], style glyphStyles[]);
/* mapping library */
__sysapi void __cdecl PolyToPolyMap(const polygon *source, const polygon *dest, mapping);
/* shape library */
__sysapi void __cdecl PaintRectangle(const rectangle *, commonColor);
__sysapi void __cdecl PaintRectangle2(const point *, const point *, commonColor);
__sysapi void __cdecl PaintRectangle4(long left, long top, long right, long bottom, commonColor);
/* picture library */
__sysapi void __cdecl AddToPicture(shape picture, shape newShape, style newStyle, ink newInk, transform newTransform);
__sysapi void __cdecl InsertPictureItem(shape picture, long index, shape newShape, style newStyle, ink newInk, transform newTransform);
__sysapi shape __cdecl GetPictureItem(shape picture, long index, shape *destShape, style *destStyle, ink *destInk, transform *destTransform);
__sysapi void __cdecl SetPictureItem(shape picture, long index, shape newShape, style newStyle, ink newInk, transform newTransform);
/* user library */
__sysapi void __cdecl AddShapeUser(shape source, const void *data, long length, long type);
__sysapi long __cdecl GetShapeUser(shape source, void *data, long *length, long requestedType, long *foundType, long index);
__sysapi void __cdecl RemoveShapeUser(shape source, long type, long index);
/* ramp library */
__sysapi shape __cdecl NewRamp(const color *firstColor, const color *lastColor, long steps, const rectangle *bounds);
__sysapi void __cdecl DrawRamp(const color *firstColor, const color *lastColor, long steps, const rectangle *bounds);
__sysapi shape __cdecl NewCommonRamp(commonColor firstColor, commonColor lastColor, long steps, const rectangle *bounds);
__sysapi void __cdecl DrawCommonRamp(commonColor firstColor, commonColor lastColor, long steps, const rectangle *bounds);
#ifdef MacintoshIncludes
#ifndef qdTextIncludes
#undef DrawChar
#endif
#endif
#ifdef __cplusplus
}
#endif
#endif