2 * vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2
9 #include "ecore_x_private.h"
22 * [x] XIntersectRegion
24 * [x] XUnionRectWithRegion
35 EAPI Ecore_X_XRegion *
38 LOGFN(__FILE__, __LINE__, __FUNCTION__);
39 return (Ecore_X_XRegion *)XCreateRegion();
43 ecore_x_xregion_free(Ecore_X_XRegion *region)
45 LOGFN(__FILE__, __LINE__, __FUNCTION__);
49 XDestroyRegion((Region)region);
53 ecore_x_xregion_set(Ecore_X_XRegion *region, Ecore_X_GC gc)
55 LOGFN(__FILE__, __LINE__, __FUNCTION__);
56 return XSetRegion(_ecore_x_disp, gc, (Region)region);
60 ecore_x_xregion_translate(Ecore_X_XRegion *region, int x, int y)
62 LOGFN(__FILE__, __LINE__, __FUNCTION__);
66 /* return value not used */
67 XOffsetRegion((Region)region, x, y);
71 ecore_x_xregion_intersect(Ecore_X_XRegion *dst, Ecore_X_XRegion *r1, Ecore_X_XRegion *r2)
73 LOGFN(__FILE__, __LINE__, __FUNCTION__);
74 return XIntersectRegion((Region)r1, (Region)r2, (Region)dst);
78 ecore_x_xregion_union(Ecore_X_XRegion *dst, Ecore_X_XRegion *r1, Ecore_X_XRegion *r2)
80 LOGFN(__FILE__, __LINE__, __FUNCTION__);
81 return XUnionRegion((Region)r1, (Region)r2, (Region)dst);
85 ecore_x_xregion_union_rect(Ecore_X_XRegion *dst, Ecore_X_XRegion *src, Ecore_X_Rectangle *rect)
89 LOGFN(__FILE__, __LINE__, __FUNCTION__);
92 xr.width = rect->width;
93 xr.height = rect->height;
95 return XUnionRectWithRegion(&xr, (Region)src, (Region)dst);
99 ecore_x_xregion_subtract(Ecore_X_XRegion *dst, Ecore_X_XRegion *rm, Ecore_X_XRegion *rs)
101 LOGFN(__FILE__, __LINE__, __FUNCTION__);
102 return XSubtractRegion((Region)rm, (Region)rs, (Region)dst);
106 ecore_x_xregion_is_empty(Ecore_X_XRegion *region)
111 LOGFN(__FILE__, __LINE__, __FUNCTION__);
112 return !XEmptyRegion((Region)region);
116 ecore_x_xregion_is_equal(Ecore_X_XRegion *r1, Ecore_X_XRegion *r2)
121 LOGFN(__FILE__, __LINE__, __FUNCTION__);
122 return XEqualRegion((Region)r1, (Region)r1);
126 ecore_x_xregion_point_contain(Ecore_X_XRegion *region, int x, int y)
131 LOGFN(__FILE__, __LINE__, __FUNCTION__);
132 return XPointInRegion((Region)region, x, y);
136 ecore_x_xregion_rect_contain(Ecore_X_XRegion *region, Ecore_X_Rectangle *rect)
138 if (!region || !rect)
141 LOGFN(__FILE__, __LINE__, __FUNCTION__);
142 return XRectInRegion((Region)region, rect->x, rect->y, rect->width, rect->height);