mirror of
https://github.com/ctm/executor.git
synced 2024-06-10 10:29:31 +00:00
225 lines
4.4 KiB
C
225 lines
4.4 KiB
C
/* Copyright 1986, 1989, 1990 by Abacus Research and
|
|
* Development, Inc. All rights reserved.
|
|
*/
|
|
|
|
#if !defined (OMIT_RCSID_STRINGS)
|
|
char ROMlib_rcsid_qRegular[] =
|
|
"$Id: qRegular.c 63 2004-12-24 18:19:43Z ctm $";
|
|
#endif
|
|
|
|
/* Forward declarations in QuickDraw.h (DO NOT DELETE THIS LINE) */
|
|
|
|
#include "rsys/common.h"
|
|
#include "QuickDraw.h"
|
|
#include "CQuickDraw.h"
|
|
#include "DialogMgr.h"
|
|
#include "rsys/quick.h"
|
|
#include "rsys/cquick.h"
|
|
#include "rsys/ctl.h"
|
|
#include "rsys/wind.h"
|
|
|
|
P1(PUBLIC pascal trap, void, FrameRect, Rect *, r)
|
|
{
|
|
CALLRECT(frame, r);
|
|
}
|
|
|
|
P1(PUBLIC pascal trap, void, PaintRect, Rect *, r)
|
|
{
|
|
CALLRECT(paint, r);
|
|
}
|
|
|
|
P1(PUBLIC pascal trap, void, EraseRect, Rect *, r)
|
|
{
|
|
CALLRECT(erase, r);
|
|
}
|
|
|
|
P1(PUBLIC pascal trap, void, InvertRect, Rect *, r)
|
|
{
|
|
CALLRECT(invert, r);
|
|
}
|
|
|
|
P2(PUBLIC pascal trap, void, FillRect, Rect *, r, Pattern, pat)
|
|
{
|
|
if (!EmptyRgn (PORT_VIS_REGION (thePort)))
|
|
{
|
|
ROMlib_fill_pat (pat);
|
|
CALLRECT(fill, r);
|
|
}
|
|
}
|
|
|
|
P1(PUBLIC pascal trap, void, FrameOval, Rect *, r)
|
|
{
|
|
CALLOVAL(frame, r);
|
|
}
|
|
|
|
P1(PUBLIC pascal trap, void, PaintOval, Rect *, r)
|
|
{
|
|
CALLOVAL(paint, r);
|
|
}
|
|
|
|
P1(PUBLIC pascal trap, void, EraseOval, Rect *, r)
|
|
{
|
|
CALLOVAL(erase, r);
|
|
}
|
|
|
|
P1(PUBLIC pascal trap, void, InvertOval, Rect *, r)
|
|
{
|
|
CALLOVAL(invert, r);
|
|
}
|
|
|
|
P2(PUBLIC pascal trap, void, FillOval, Rect *, r, Pattern, pat)
|
|
{
|
|
ROMlib_fill_pat (pat);
|
|
CALLOVAL(fill, r);
|
|
}
|
|
|
|
PRIVATE boolean_t
|
|
rect_matches_control_item (WindowPtr w, Rect *rp)
|
|
{
|
|
boolean_t retval;
|
|
ControlHandle c;
|
|
|
|
retval = FALSE;
|
|
for (c = WINDOW_CONTROL_LIST (w); !retval && c ; c = CTL_NEXT_CONTROL (c))
|
|
{
|
|
Rect r;
|
|
|
|
r = CTL_RECT (c);
|
|
retval = ((CW (r.top) - CW (rp->top) == CW (rp->bottom) - CW (r.bottom)) &&
|
|
(CW (r.left) - CW (rp->left) == CW (rp->right) - CW (r.right)));
|
|
}
|
|
|
|
return retval;
|
|
}
|
|
|
|
P3(PUBLIC pascal trap, void, FrameRoundRect, Rect *, r, INTEGER, ow,
|
|
INTEGER, oh)
|
|
{
|
|
boolean_t do_rect;
|
|
|
|
do_rect = FALSE;
|
|
|
|
if (ROMlib_cdef0_is_rectangular)
|
|
{
|
|
AuxWinHandle aux;
|
|
|
|
aux = MR (*lookup_aux_win (thePort));
|
|
if (aux && rect_matches_control_item (HxP(aux, awOwner), r))
|
|
do_rect = TRUE;
|
|
}
|
|
|
|
if (do_rect)
|
|
FrameRect (r);
|
|
else
|
|
CALLRRECT(frame, r, ow, oh);
|
|
}
|
|
|
|
P3(PUBLIC pascal trap, void, PaintRoundRect, Rect *, r, INTEGER, ow,
|
|
INTEGER, oh)
|
|
{
|
|
CALLRRECT(paint, r, ow, oh);
|
|
}
|
|
|
|
P3(PUBLIC pascal trap, void, EraseRoundRect, Rect *, r, INTEGER, ow,
|
|
INTEGER, oh)
|
|
{
|
|
CALLRRECT(erase, r, ow, oh);
|
|
}
|
|
|
|
P3(PUBLIC pascal trap, void, InvertRoundRect, Rect *, r, INTEGER, ow,
|
|
INTEGER, oh)
|
|
{
|
|
CALLRRECT(invert, r, ow, oh);
|
|
}
|
|
|
|
P4(PUBLIC pascal trap, void, FillRoundRect, Rect *, r, INTEGER, ow,
|
|
INTEGER, oh, Pattern, pat)
|
|
{
|
|
ROMlib_fill_pat (pat);
|
|
CALLRRECT(fill, r, ow, oh);
|
|
}
|
|
|
|
P3(PUBLIC pascal trap, void, FrameArc, Rect *, r, INTEGER, start,
|
|
INTEGER, angle)
|
|
{
|
|
CALLARC(frame, r, start, angle);
|
|
}
|
|
|
|
P3(PUBLIC pascal trap, void, PaintArc, Rect *, r, INTEGER, start,
|
|
INTEGER, angle)
|
|
{
|
|
CALLARC(paint, r, start, angle);
|
|
}
|
|
|
|
P3(PUBLIC pascal trap, void, EraseArc, Rect *, r, INTEGER, start,
|
|
INTEGER, angle)
|
|
{
|
|
CALLARC(erase, r, start, angle);
|
|
}
|
|
|
|
P3(PUBLIC pascal trap, void, InvertArc, Rect *, r, INTEGER, start,
|
|
INTEGER, angle)
|
|
{
|
|
CALLARC(invert, r, start, angle);
|
|
}
|
|
|
|
P4(PUBLIC pascal trap, void, FillArc, Rect *, r, INTEGER, start,
|
|
INTEGER, angle, Pattern, pat)
|
|
{
|
|
ROMlib_fill_pat (pat);
|
|
CALLARC (fill, r, start, angle);
|
|
}
|
|
|
|
P1(PUBLIC pascal trap, void, FrameRgn, RgnHandle, rh)
|
|
{
|
|
CALLRGN(frame, rh);
|
|
}
|
|
|
|
P1(PUBLIC pascal trap, void, PaintRgn, RgnHandle, rh)
|
|
{
|
|
CALLRGN(paint, rh);
|
|
}
|
|
|
|
P1(PUBLIC pascal trap, void, EraseRgn, RgnHandle, rh)
|
|
{
|
|
CALLRGN(erase, rh);
|
|
}
|
|
|
|
P1(PUBLIC pascal trap, void, InvertRgn, RgnHandle, rh)
|
|
{
|
|
CALLRGN(invert, rh);
|
|
}
|
|
|
|
P2(PUBLIC pascal trap, void, FillRgn, RgnHandle, rh, Pattern, pat)
|
|
{
|
|
ROMlib_fill_pat (pat);
|
|
CALLRGN(fill, rh);
|
|
}
|
|
|
|
|
|
P1(PUBLIC pascal trap, void, FramePoly, PolyHandle, poly)
|
|
{
|
|
CALLPOLY(frame, poly);
|
|
}
|
|
|
|
P1(PUBLIC pascal trap, void, PaintPoly, PolyHandle, poly)
|
|
{
|
|
CALLPOLY(paint, poly);
|
|
}
|
|
|
|
P1(PUBLIC pascal trap, void, ErasePoly, PolyHandle, poly)
|
|
{
|
|
CALLPOLY(erase, poly);
|
|
}
|
|
|
|
P1(PUBLIC pascal trap, void, InvertPoly, PolyHandle, poly)
|
|
{
|
|
CALLPOLY(invert, poly);
|
|
}
|
|
|
|
P2(PUBLIC pascal trap, void, FillPoly, PolyHandle, poly, Pattern, pat)
|
|
{
|
|
ROMlib_fill_pat (pat);
|
|
CALLPOLY (fill, poly);
|
|
}
|