12#define ConioInitLongRect(Rect, Top, Left, Bottom, Right) \
14 ((Rect)->top) = Top; \
15 ((Rect)->left) = Left; \
16 ((Rect)->bottom) = Bottom; \
17 ((Rect)->right) = Right; \
20#define ConioInitRect(Rect, top, left, bottom, right) \
22 ((Rect)->Top) = top; \
23 ((Rect)->Left) = left; \
24 ((Rect)->Bottom) = bottom; \
25 ((Rect)->Right) = right; \
28#define ConioIsRectEmpty(Rect) \
29 (((Rect)->Left > (Rect)->Right) || ((Rect)->Top > (Rect)->Bottom))
31#define ConioRectHeight(Rect) \
32 (((Rect)->Top > (Rect)->Bottom) ? 0 : ((Rect)->Bottom - (Rect)->Top + 1))
33#define ConioRectWidth(Rect) \
34 (((Rect)->Left > (Rect)->Right) ? 0 : ((Rect)->Right - (Rect)->Left + 1))
44 (Rect1->Top > Rect2->Bottom) ||
45 (Rect1->Left > Rect2->Right) ||
46 (Rect1->Bottom < Rect2->Top) ||
47 (Rect1->Right < Rect2->Left) )
55 max(Rect1->Top , Rect2->Top ),
56 max(Rect1->Left , Rect2->Left ),
57 min(Rect1->Bottom, Rect2->Bottom),
58 min(Rect1->Right , Rect2->Right ));
87 min(Rect1->Top , Rect2->Top ),
88 min(Rect1->Left , Rect2->Left ),
89 max(Rect1->Bottom, Rect2->Bottom),
90 max(Rect1->Right , Rect2->Right ));
static __inline BOOLEAN ConioGetIntersection(OUT PSMALL_RECT Intersection, IN PSMALL_RECT Rect1, IN PSMALL_RECT Rect2)
#define ConioInitRect(Rect, top, left, bottom, right)
#define ConioIsRectEmpty(Rect)
static __inline BOOLEAN ConioGetUnion(OUT PSMALL_RECT Union, IN PSMALL_RECT Rect1, IN PSMALL_RECT Rect2)