5 RECTL_vSetRect(RECTL
*prcl
, LONG left
, LONG top
, LONG right
, LONG bottom
)
10 prcl
->bottom
= bottom
;
15 RECTL_vSetEmptyRect(RECTL
*prcl
)
25 RECTL_vOffsetRect(RECTL
*prcl
, INT cx
, INT cy
)
35 RECTL_bIsEmptyRect(const RECTL
*prcl
)
37 return (prcl
->left
>= prcl
->right
|| prcl
->top
>= prcl
->bottom
);
42 RECTL_bPointInRect(const RECTL
*prcl
, INT x
, INT y
)
44 return (x
>= prcl
->left
&& x
< prcl
->right
&&
45 y
>= prcl
->top
&& y
< prcl
->bottom
);
50 RECTL_bIsWellOrdered(const RECTL
*prcl
)
52 return ((prcl
->left
<= prcl
->right
) &&
53 (prcl
->top
<= prcl
->bottom
));
58 RECTL_bUnionRect(RECTL
*prclDst
, const RECTL
*prcl1
, const RECTL
*prcl2
);
62 RECTL_bIntersectRect(RECTL
*prclDst
, const RECTL
*prcl1
, const RECTL
*prcl2
);
66 RECTL_vMakeWellOrdered(RECTL
*prcl
);
70 RECTL_vInflateRect(RECTL
*rect
, INT dx
, INT dy
);