ORCA-Pascal/Tool.Interface/QuickDrawII.pas

776 lines
24 KiB
ObjectPascal

{$keep 'QuickDrawII'}
unit QuickDrawII;
interface
{********************************************************
*
* Quick Draw II Interface File
*
* Other USES Files Needed: Common
*
* Other Tool Sets Needed: Tool Locator, Memory Manager,
* Miscellaneous Tool Set
*
* Note: The calls for the QuickDraw Auxiliary Tool Set
* are at the end of this interface file.
*
* Copyright 1987-1992, 1993
* By the Byte Works, Inc.
* All Rights Reserved
*
*********************************************************}
uses
Common;
const
{Font Flags}
widMaxSize = $0001; {nonproportional spacing}
zeroSize = $0002; {numeric spacing}
{Color data}
table320 = $32; {320 color table}
table640 = $32; {640 color table}
{GrafPort sizes}
maskSize = $08; {mask size}
locSize = $10; {loc size}
patSize = $20; {pattern size}
pnStateSize = $32; {pen state size}
portSize = $AA; {size of grafPort}
{Color masks}
blueMask = $000F; {mask for blue nibble}
greenMask = $00F0; {mask for green nibble}
redMask = $0F00; {mask for red nibble}
{Master colors - mode indicated next to name}
black = $0000; {works in 320 & 640 modes}
blue = $000F; {works in 320 & 640 modes}
darkGreen320 = $0080;
green320 = $00E0;
green640 = $00F0;
lightBlue320 = $04DF;
purple320 = $072C;
darkGray320 = $0777;
periwinkleBlue320 = $078F;
brown320 = $0841;
lightGray320 = $0CCC;
red320 = $0D00;
lilac320 = $0DAF;
red640 = $0F00;
orange320 = $0F70;
flesh320 = $0FA9;
yellow = $0FF0; {works in 320 & 640 modes}
white = $0FFF; {works in 320 & 640 modes}
{Pen modes}
modeCopy = $0000; {copy source to destination}
modeOR = $0001; {overlay source & destination}
modeXOR = $0002; {XOR pen with destination}
modeBIC = $0003; {bit clear pen with destination}
notCopy = $8000; {copy (not source) to destination}
notOR = $8001; {overlay (not source) & destination}
notXOR = $8002; {XOR (not pen) with destination}
notBIC = $8003; {bit clear (not pen) with destination}
{Pen and text modes}
modeForeCopy = $0004; {copy foreground pixels to destination}
modeForeOR = $0005; {OR foreground pixels into destination}
modeForeXOR = $0006; {XOR foreground pixels into destination}
modeForeBIC = $0007; {BIC foreground pixels into destination}
notForeCopy = $8004; {turn background to foreground, then copy}
{foreground pixels into destination}
notForeOR = $8005; {turn background to foreground, then OR}
{foreground pixels into destination}
notForeXOR = $8006; {turn background to foreground, then XOR}
{foreground pixels into destination}
notForeBIC = $8007; {turn background to foreground, then BIC}
{foreground pixels into destination}
{QD Start-up modes}
mode320 = $00; {320 graphics mode}
mode640 = $80; {640 graphics mode}
{SCB Byte Masks}
colorTableNo = $0F; {color table number}
scbReserved = $10; {reserved for future use}
scbFill = $20; {fill mode on}
scbInterrupt = $40; {interrupt generated when line refreshed}
scbColorMode = $80; {640 mode on}
{Text styles}
boldMask = $0001; {mask for bold bit}
italicMask = $0002; {mask for italics bit}
underlineMask = $0004; {mask for underline bit}
outlineMask = $0008; {mask for outline bit}
shadowMask = $0010; {mask for shadow bit}
{DrawStringWidth flag values}
dswNoCondense = $8000;
dswCondense = $0000;
dswNoTruncate = $0000;
dswTruncLeft = $2000;
dswTruncCenter = $4000;
dswTruncRight = $6000;
dswPString = $0000;
dswCString = $0004;
dswWString = $0008;
dswStrIsPtr = $0000;
dswStrIsHandle = $0001;
dswStrIsResource = $0002;
{ColorTable flag values}
ctUse640Colors = $8000;
ctNoCtlNewRes = $4000;
ctIncludeMenuBar = $2000;
type
{QDProcsPointer}
QDProcsPtr = ptr;
{Buffer sizing record}
bufDimRec = record
maxWidth: integer;
textBufHeight: integer;
textBufferWords: integer;
fontWidth: integer;
end;
{Font globals record}
fontGlobalsRecord = record
fgFontID: integer;
fgStyle: integer;
fgSize: integer;
fgVersion: integer;
fgWidMax: integer;
fgFBRExtent: integer;
end;
{FontInfo record}
fontInfoRecord = record
ascent: integer;
descent: integer;
widMax: integer;
leading: integer;
end;
{Paint parameter block}
paintParamBlock = record
ptrToSourceLocInfo: locInfoPtr;
ptrToDestLocInfo: locInfoPtr;
ptrToSourceRect: rectPtr;
ptrToDestPoint: pointPtr;
mode: integer;
maskHandle: handle;
end;
paintParamPtr = ^paintParamBlock;
{Pen state record}
penState = record
psPnLoc : point;
psPnSize: point;
psPnMode: integer;
psPnPat: pattern;
psPnMask: mask;
end;
penStatePtr = ^penState;
{ROM font record}
ROMFontRec = record
rfFamNum: integer;
rfFamStyle: integer;
rfSize: integer;
rfFontHandle: fontHndl;
rfNamePtr: pStringPtr;
rfFBRExtent: integer;
end;
ROMFontPtr = ^ROMFontRec;
{Polygon, defined by user}
polygon = record
polySize: integer;
polyBBox: rect;
polyPoints: array [0..30] of point; {may be modified by user}
end;
polyPtr = ^polygon;
polyHandle = ^polyPtr;
{Cursor record. Array dimensions can be modified for your cursor.}
{WARNING: hotSpotX, hotSpotY may not be in the location expected, since}
{cursorImage and cursorMask can change size. Use pointer math to}
{compute their positions for any cursor you did not define using this}
{record.}
cursor = record
cursorHeight: integer;
cursorWidth: integer;
cursorImage: array [1..44] of integer;
cursorMask: array [1..44] of integer;
hotSpotY: integer;
hotSpotX: integer;
end;
cursorPtr = ^cursor;
{QD Auxilliary icon record}
iconRec = record
iconType: integer;
iconSize: integer;
iconHeight: integer;
iconWidth: integer;
iconImage: array [1..44] of byte; {Array dimensions can be}
iconMask: array [1..44] of byte; {modified for your icon}
end;
iconRecPtr = ^iconRec;
procedure QDBootInit; tool ($04, $01); {WARNING: an application should
NEVER make this call}
procedure QDStartup (dPageAddr, masterSCB, maxWidth, userID: integer);
tool ($04, $02);
procedure QDShutDown; tool ($04, $03);
function QDVersion: integer; tool ($04, $04);
procedure QDReset; tool ($04, $05); {WARNING: an application should
NEVER make this call}
function QDStatus: boolean; tool ($04, $06);
procedure AddPt (var srcPtPtr, destPtPtr: point); tool ($04, $80);
procedure CharBounds (theChar: char; var result: rect); tool ($04, $AC);
function CharWidth (theChar: char): integer; tool ($04, $A8);
procedure ClearScreen (colorWord: integer); tool ($04, $15);
procedure ClipRect (var theRect: rect); tool ($04, $26);
procedure ClosePicture; tool ($04, $B9);
procedure ClosePoly; tool ($04, $C2);
procedure ClosePort (thePort: grafportPtr); tool ($04, $1A);
procedure CloseRgn (theRgnHandle: rgnHandle); tool ($04, $6E);
procedure CopyRgn (srcRgnHandle, destRgnHandle: rgnHandle); tool ($04, $69);
procedure CStringBounds (theCString: univ CStringPtr; var result: rect);
tool ($04, $AE);
function CStringWidth (theCString: univ CStringPtr): integer; tool ($04, $AA);
procedure DiffRgn (rgn1Handle, rgn2Handle, diffRgnHandle: rgnHandle);
tool ($04, $73);
procedure DisposeRgn (theRgnHandle: rgnHandle); tool ($04, $68);
procedure DrawChar (theChar: char); tool ($04, $A4);
procedure DrawCString (theString: univ CStringPtr); tool ($04, $A6);
procedure DrawString (theString: univ pStringPtr); tool ($04, $A5);
procedure DrawText (theText: univ textPtr; textLen: integer); tool ($04, $A7);
function EmptyRgn (theRgnHandle: rgnHandle): boolean; tool ($04, $78);
function EqualPt (var point1, point2: point): boolean; tool ($04, $83);
function EqualRect (var rect1, rect2: rect): boolean; tool ($04, $51);
function EqualRgn (rgnHandle1, rgnHandle2: rgnHandle): boolean; tool ($04, $77);
procedure EraseArc (var theRect: rect; startAngle, arcAngle: integer);
tool ($04, $64);
procedure EraseOval (var theRect: rect); tool ($04, $5A);
procedure ErasePoly (thePolyHandle: polyHandle); tool ($04, $BE);
procedure EraseRect (var theRect: rect); tool ($04, $55);
procedure EraseRgn (theRgnHandle: rgnHandle); tool ($04, $7B);
procedure EraseRRect (var theRect: rect; ovalWidth, ovalHeight: integer);
tool ($04, $5F);
procedure FillArc (var theRect: rect; startAngle, arcAngle: integer;
var thePattern: pattern); tool ($04, $66);
procedure FillOval (var theRect: rectPtr; var thePattern: pattern);
tool ($04, $5C);
procedure FillPoly (thePolyHandle: polyHandle; var thePattern: pattern);
tool ($04, $C0);
procedure FillRect (var theRect: rect; var thePattern: pattern);
tool ($04, $57);
procedure FillRgn (theRgnHandle: rgnHandle; var thePattern: pattern);
tool ($04, $7D);
procedure FillRRect (var theRect: rect; ovalWidth, ovalHeight: integer;
var thePattern: pattern); tool ($04, $61);
procedure ForceBufDims (maxWidth, maxFontHeight, maxFBRExtent: integer);
tool ($04, $CC);
procedure FrameArc (var theRect: rect; startAngle, arcAngle: integer);
tool ($04, $62);
procedure FrameOval (var theRect: rect); tool ($04, $58);
procedure FramePoly (thePolyHandle: polyHandle); tool ($04, $BC);
procedure FrameRect (var theRect: rect); tool ($04, $53);
procedure FrameRgn (theRgnHandle: rgnHandle); tool ($04, $79);
procedure FrameRRect (var theRect: rect; ovalWidth, ovalHeight: integer);
tool ($04, $5D);
function Get640Colors: patternPtr; tool ($04, $DA);
function GetAddress (tableID: integer): ptr; tool ($04, $09);
function GetArcRot: integer; tool ($04, $B1);
function GetBackColor: integer; tool ($04, $A3);
procedure GetBackPat (var thePattern: pattern); tool ($04, $35);
function GetCharExtra: fixed; tool ($04, $D5);
procedure GetClip (theRgnHandle: rgnHandle); tool ($04, $25);
function GetClipHandle: rgnHandle; tool ($04, $C7);
function GetColorEntry (tableNumber, entryNumber: integer): integer;
tool ($04, $11);
procedure GetColorTable (tableNumber: integer; var saveTable: colorTable);
tool ($04, $0F);
function GetCursorAdr: cursorPtr; tool ($04, $8F);
function GetFGSize: integer; tool ($04, $CF);
function GetFont: fontHndl; tool ($04, $95);
function GetFontFlags: integer; tool ($04, $99);
procedure GetFontGlobals (var theFGRec: fontGlobalsRecord); tool ($04, $97);
function GetFontID: longint; tool ($04, $D1);
procedure GetFontInfo (var theFIRec: fontInfoRecord); tool ($04, $96);
function GetFontLore (recordPtr: ptr; recordSize: integer): integer;
tool ($04, $D9);
function GetForeColor: integer; tool ($04, $A1);
function GetGrafProcs: QDProcsPtr; tool ($04, $45);
function GetMasterSCB: integer; tool ($04, $17);
procedure GetPen (var thePoint: point); tool ($04, $29);
procedure GetPenMask (var theMask: mask); tool ($04, $33);
function GetPenMode: integer; tool ($04, $2F);
procedure GetPenPat (var thePattern: pattern); tool ($04, $31);
procedure GetPenSize (var thePoint: point); tool ($04, $2D);
procedure GetPenState (var oldPenState: penState); tool ($04, $2B);
function GetPicSave: handle; tool ($04, $3F);
function GetPixel (h, v: integer): integer; tool ($04, $88);
function GetPolySave: handle; tool ($04, $43);
function GetPort: grafPortPtr; tool ($04, $1C);
procedure GetPortLoc (var theLocInfo: locInfo); tool ($04, $1E);
procedure GetPortRect (var theRect: rect); tool ($04, $20);
function GetRgnSave: handle; tool ($04, $41);
procedure GetROMFont (var recordPtr: ROMFontRec); tool ($04, $D8);
function GetSCB (scanLine: integer): integer; tool ($04, $13);
function GetSpaceExtra: fixed; tool ($04, $9F);
function GetStandardSCB: integer; tool ($04, $0C);
function GetSysField: longint; tool ($04, $49);
function GetSysFont: fontHndl; tool ($04, $B3);
function GetTextFace: integer; tool ($04, $9B);
function GetTextMode: integer; tool ($04, $9D);
function GetTextSize: integer; tool ($04, $D3);
function GetUserField: longint; tool ($04, $47);
function GetVisHandle: rgnHandle; tool ($04, $C9);
procedure GetVisRgn (theRgnHandle: rgnHandle); tool ($04, $B5);
procedure GlobalToLocal (var thePoint: point); tool ($04, $85);
procedure GrafOff; tool ($04, $0B);
procedure GrafOn; tool ($04, $0A);
procedure HideCursor; tool ($04, $90);
procedure HidePen; tool ($04, $27);
procedure InflateTextBuffer (newWidth, newHeight: integer); tool ($04, $D7);
procedure InitColorTable (var theTable: colorTable); tool ($04, $0D);
procedure InitCursor; tool ($04, $CA);
procedure InitPort (thePort: grafportPtr); tool ($04, $19);
procedure InsetRect (var theRect: rect; dH, dV: integer); tool ($04, $4C);
procedure InsetRgn (theRgnHandle: rgnHandle; dH, dV: integer); tool ($04, $70);
procedure InvertArc (var theRect: rect; startAngle, arcAngle: integer);
tool ($04, $65);
procedure InvertOval (var theRect: rect); tool ($04, $5B);
procedure InvertPoly (thePolyHandle: polyHandle); tool ($04, $BF);
procedure InvertRect (var theRect: rect); tool ($04, $56);
procedure InvertRgn (theRgnHandle: rgnHandle); tool ($04, $7C);
procedure InvertRRect (var theRect: rect; ovalWidth, ovalHeight: integer);
tool ($04, $60);
procedure KillPoly (thePolyHandle: polyHandle); tool ($04, $C3);
procedure Line (dH, dV: integer); tool ($04, $3D);
procedure LineTo (h, v: integer); tool ($04, $3C);
procedure LocalToGlobal (var thePoint: point); tool ($04, $84);
procedure MapPoly (thePoly: polyHandle; var srcRect, destRect: rect);
tool ($04, $C5);
procedure MapPt (var thePoint: point; var srcRect, destRect: rect);
tool ($04, $8A);
procedure MapRect (var theRect, srcRect, destRect: rect); tool ($04, $8B);
procedure MapRgn (mapRgnHandle: rgnHandle; var srcRect, destRect: rect);
tool ($04, $8C);
procedure Move (dH, dV: integer); tool ($04, $3B);
procedure MovePortTo (h, v: integer); tool ($04, $22);
procedure MoveTo (h, v: integer); tool ($04, $3A);
function NewRgn: rgnHandle; tool ($04, $67);
function NotEmptyRect (var theRect: rect): boolean; tool ($04, $52);
procedure ObscureCursor; tool ($04, $92);
procedure OffsetPoly (thePolyHandle: polyHandle; dH, dV: integer); tool ($04, $C4);
procedure OffsetRect (var theRect: rect; dH, dV: integer); tool ($04, $4B);
procedure OffsetRgn (theRgnHandle: rgnHandle; dH, dV: integer); tool ($04, $6F);
function OpenPoly: polyHandle; tool ($04, $C1);
procedure OpenPort (newPort: grafportPtr); tool ($04, $18);
procedure OpenRgn; tool ($04, $6D);
procedure PaintArc (var theRect: rect; startAngle, arcAngle: integer);
tool ($04, $63);
procedure PaintOval (var theRect: rect); tool ($04, $59);
procedure PaintPixels (var thePaintParam: paintParamBlock); tool ($04, $7F);
procedure PaintPoly (thePolyHandle: polyHandle); tool ($04, $BD);
procedure PaintRect (var theRect: rect); tool ($04, $54);
procedure PaintRgn (theRgnHandle: rgnHandle); tool ($04, $7A);
procedure PaintRRect (var theRect: rect; ovalWidth, ovalHeight: integer);
tool ($04, $5E);
procedure PenNormal; tool ($04, $36);
procedure PPToPort (srcLoc: locInfoPtr; var srcRect: rect; destX,
destY, transferMode: integer); tool ($04, $D6);
procedure Pt2Rect (var point1, point2: point; var destRect: rect);
tool ($04, $50);
function PtInRect (var thePoint: point; var theRect: rect): boolean;
tool ($04, $4F);
function PtInRgn (var thePoint: point; theRgnHandle: rgnHandle): boolean;
tool ($04, $75);
function QDRandom: integer; tool ($04, $86);
function RectInRgn (var theRect: rect; theRgnHandle: rgnHandle): boolean;
tool ($04, $76);
procedure RectRgn (theRgnHandle: rgnHandle; var theRect: rect); tool ($04, $6C);
procedure RestoreBufDims (var saveSizeInfo: bufDimRec); tool ($04, $CE);
procedure SaveBufDims (var saveSizeInfo: bufDimRec); tool ($04, $CD);
procedure ScalePt (var thePoint: point; var srcRect, destRect: rect);
tool ($04, $89);
procedure ScrollRect (var theRect: rect; dH, dV: integer; updateRgnHandle:
rgnHandle); tool ($04, $7E);
function SectRect (var rect1, rect2, destRect: rect): boolean;
tool ($04, $4D);
procedure SectRgn (rgn1Handle, rgn2Handle, destRgnHandle: rgnHandle);
tool ($04, $71);
procedure Set640Colors (colorNum: integer); tool ($04, $DB);
{Set640Color is correct; Set640Colors is retained for backwards compatibility}
procedure Set640Color (colorNum: integer); tool ($04, $DB);
procedure SetAllSCBs (newSCB: integer); tool ($04, $14);
procedure SetArcRot (arcRotValue: integer); tool ($04, $B0);
procedure SetBackColor (backColor: integer); tool ($04, $A2);
procedure SetBackPat (var thePattern: pattern); tool ($04, $34);
procedure SetBufDims (maxWidth, maxFontHeight, maxFBRExtent: integer);
tool ($04, $CB);
procedure SetCharExtra (charExtra: fixed); tool ($04, $D4);
procedure SetClip (rgnHandle: handle); tool ($04, $24);
procedure SetClipHandle (clipRgnHandle: rgnHandle); tool ($04, $C6);
procedure SetColorEntry (tableNumber, entryNumber, newColor: integer);
tool ($04, $10);
procedure SetColorTable (tableNumber: integer; var newTable: colorTable);
tool ($04, $0E);
procedure SetCursor (var theCursor: cursor); tool ($04, $8E);
procedure SetEmptyRgn (theRgnHandle: rgnHandle); tool ($04, $6A);
procedure SetFont (newFontHandle: fontHndl); tool ($04, $94);
procedure SetFontFlags (fontFlags: integer); tool ($04, $98);
procedure SetFontID (newFontID: fontID); tool ($04, $D0);
procedure SetForeColor (foreColor: integer); tool ($04, $A0);
procedure SetGrafProcs (grafProcsPtr: ptr); tool ($04, $44);
procedure SetIntUse (useInt: boolean); tool ($04, $B6);
procedure SetMasterSCB (masterSCB: integer); tool ($04, $16);
procedure SetOrigin (h, v: integer); tool ($04, $23);
procedure SetPenMask (var theMask: mask); tool ($04, $32);
procedure SetPenMode (penMode: integer); tool ($04, $2E);
procedure SetPenPat (var thePattern: pattern); tool ($04, $30);
procedure SetPenSize (width, height: integer); tool ($04, $2C);
procedure SetPenState (var newPenState: penState); tool ($04, $2A);
procedure SetPicSave (picSaveValue: handle); tool ($04, $3E);
{WARNING: an application should
NEVER make this call}
procedure SetPolySave (polySaveValue: handle); tool ($04, $42);
{WARNING: an application should
NEVER make this call}
procedure SetPort (thePort: grafportPtr); tool ($04, $1B);
procedure SetPortLoc (var theLocInfo: locInfo); tool ($04, $1D);
procedure SetPortRect (var theRect: rect); tool ($04, $1F);
procedure SetPortSize (portWidth, portHeight: integer); tool ($04, $21);
procedure SetPt (var srcPoint: point; h, v: integer); tool ($04, $82);
procedure SetRandSeed (randomSeed: longint); tool ($04, $87);
procedure SetRect (var theRect: rect; left, top, right, bottom: integer);
tool ($04, $4A);
procedure SetRectRgn (theRgnHandle: rgnHandle; left, top, right, bottom:
integer); tool ($04, $6B);
procedure SetRgnSave (rgnSaveValue: handle); tool ($04, $40);
{WARNING: an application should
NEVER make this call}
procedure SetSCB (scanLine, newSCB: integer); tool ($04, $12);
procedure SetSolidBackPat (colorNum: integer); tool ($04, $38);
procedure SetSolidPenPat (colorNum: integer); tool ($04, $37);
procedure SetSpaceExtra (spaceExtra: fixed); tool ($04, $9E);
procedure SetStdProcs (stdProcRecPtr: QDProcsPtr); tool ($04, $8D);
procedure SetSysField (sysFieldValue: longint); tool ($04, $48);
{WARNING: an application should
NEVER make this call}
procedure SetSysFont (theFontHandle: fontHndl); tool ($04, $B2);
procedure SetTextFace (textFace: integer); tool ($04, $9A);
procedure SetTextMode (textMode: integer); tool ($04, $9C);
procedure SetTextSize (textSize: integer); tool ($04, $D2);
procedure SetUserField (userFieldValue: longint); tool ($04, $46);
procedure SetVisHandle (theRgnHandle: rgnHandle); tool ($04, $C8);
procedure SetVisRgn (theRgnHandle: rgnHandle); tool ($04, $B4);
procedure ShowCursor; tool ($04, $91);
procedure ShowPen; tool ($04, $28);
procedure SolidPattern (colorNum: integer; var thePattern: pattern);
tool ($04, $39);
procedure StringBounds (theString: univ pStringPtr; var theRect: rect);
tool ($04, $AD);
function StringWidth (theString: univ pStringPtr): integer; tool ($04, $A9);
procedure SubPt (var srcPoint, destPoint: point); tool ($04, $81);
procedure TextBounds (theText: univ textPtr; textLen: integer;
var theRect: rect); tool ($04, $AF);
function TextWidth (theText: univ textPtr; textLen: integer): integer;
tool ($04, $AB);
procedure UnionRect (var rect1, rect2, destRect: rect); tool ($04, $4E);
procedure UnionRgn (rgn1Handle, rgn2Handle, destRgnHandle: rgnHandle);
tool ($04, $72);
procedure XorRgn (rgn1Handle, rgn2Handle, destRgnHandle: rgnHandle);
tool ($04, $74);
{------------------------ QuickDraw Auxiliary Tool Set --------------------}
procedure QDAuxBootInit; tool ($12, $01); {WARNING: an application should
NEVER make this call}
procedure QDAuxStartup; tool ($12, $02);
procedure QDAuxShutDown; tool ($12, $03);
function QDAuxVersion: integer; tool ($12, $04);
procedure QDAuxReset; tool ($12, $05); {WARNING: an application should
NEVER make this call}
function QDAuxStatus: boolean; tool ($12, $06);
procedure CalcMask (var srcLocInfo: locInfo; var srcRect: rect;
var destLocInfo: locInfo; var destRect: rect;
resMode: integer; thePattern: patternPtr;
leakTblPtr: univ ptr); tool ($12, $0E);
procedure CopyPixels (var srcLocPtr, destLocPtr: locInfo;
var srcRect, destRect: rect;
xFerMode: integer; maskRgn: rgnHandle); tool ($12, $09);
procedure DrawIcon (var iconPtr: iconRec; displayMode, xPos, yPos: integer);
tool ($12, $0B);
procedure DrawPicture (picHandle: handle; var destRect: rect); tool ($04, $BA);
function GetSysIcon (flags, value: integer; auxValue: longint): ptr;
tool ($12, $0F);
procedure IBeamCursor; tool ($12, $13);
procedure KillPicture (picHandle: handle); tool ($04, $BB);
function OpenPicture (var picFrame: rect): handle; tool ($04, $B7);
procedure PicComment (commentKind, dataSize: integer; dataHandle: handle);
tool ($04, $B8);
function PixelMap2Rgn (srcLocInfo: locInfo; flags, colorsToInclude: integer):
rgnHandle; tool ($12, $10);
procedure SeedFill (var srcLocInfoPtr: locInfo; var srcRect: rect;
var destLocInfoPtr: locInfo; var destRec: rect;
seedH, seedV, resMode: integer; thePattern: patternPtr;
leakTblPtr: univ ptr); tool ($12, $0D);
procedure SpecialRect (var theRect: rect; frameColor, fillColor: integer);
tool ($12, $0C);
procedure WaitCursor; tool ($12, $0A);
procedure WhooshRect (flags: longint; smallRect, bigRect: rect);
tool ($12, $14);
{new in 6.0.1}
procedure DrawStringWidth (flags: integer; stringRef: univ longint;
width: integer); tool ($12, $15);
function UseColorTable (tableNum: integer; table: colorTablePtr;
flags:integer): handle; tool ($12, $16);
procedure RestoreColorTable (colorInfoHandle: handle; flags: integer);
tool ($12, $17);
implementation
end.