TPRect
Rect structure
#include <Quickdraw.h>
typedef struct Rect { Size Offset Description
short top; 2 0 Top edge of rectangle
short left; 2 2 Left edge
short bottom; 2 4 Bottom edge
short right; 2 6 Rightmost edge
} Rect ; 8
#define topLeft( r) (((Point *) &(r))[0]) handy macros
#define botRight( r) (((Point *) &(r))[1])
typedef Rect *RectPtr;

Notes: The Rect structure defines a rectangular area of a window. Use SetRect to
initialize a rectangle; or simply set its fields directly (to avoid the system
overhead).
A valid rectangle should enclose some pixels; thus if top >= bottom or
left >= right, then the system will generally treat is as an " empty
rectangle" - one whose coordinates are (0,0)-(0,0) (see EmptyRect).
Mathematical Operations
EmptyRect OffsetRect RectInRgn UnionRect
Drawing Operations
EraseRect FillRect FrameRect InvertRect
Other Fns Using a Rect parameter
ClipRect FrameOval NewControl ShieldCursor
CopyBits FrameRoundRect NewDialog StdArc
CopyMask GrowWindow NewWindow StdBits
DragWindow InvalRect OpenPicture StdOval
DrawPicture InvertArc PaintOval StdRRect
EraseArc InvertOval PaintRect TENew
EraseOval InvertRoundRect PaintRoundRect TEUpdate
EraseRoundRect LNew PlotIcon TextBox
FillArc LRect PrOpenPage ValidRect
Note: Always pass the address of a Rect to functions. All examples in
this Guide use: FooFn( &r,... ) to make this clear, and function
prototypes correctly refer to the parameter as a Rect *. Of course,
Apple documentation (with its Pascal bias) assumes you will mentally
convert "Rect" to "&Rect".