1 #ifndef __GDK_REGION_H__
2 #define __GDK_REGION_H__
4 #include <gdk/gdktypes.h>
8 #endif /* __cplusplus */
10 /* GC fill rule for polygons
20 /* Types of overlapping between a rectangle and a region
21 * GDK_OVERLAP_RECTANGLE_IN: rectangle is in region
22 * GDK_OVERLAP_RECTANGLE_OUT: rectangle in not in region
23 * GDK_OVERLAP_RECTANGLE_PART: rectangle in partially in region
27 GDK_OVERLAP_RECTANGLE_IN,
28 GDK_OVERLAP_RECTANGLE_OUT,
29 GDK_OVERLAP_RECTANGLE_PART
32 typedef void (*GdkSpanFunc) (GdkSpan *span,
35 GdkRegion *gdk_region_new (void);
36 GdkRegion *gdk_region_polygon (GdkPoint *points,
38 GdkFillRule fill_rule);
39 GdkRegion *gdk_region_copy (GdkRegion *region);
40 GdkRegion *gdk_region_rectangle (GdkRectangle *rectangle);
41 void gdk_region_destroy (GdkRegion *region);
43 void gdk_region_get_clipbox (GdkRegion *region,
44 GdkRectangle *rectangle);
45 void gdk_region_get_rectangles (GdkRegion *region,
46 GdkRectangle **rectangles,
49 gboolean gdk_region_empty (GdkRegion *region);
50 gboolean gdk_region_equal (GdkRegion *region1,
52 gboolean gdk_region_point_in (GdkRegion *region,
55 GdkOverlapType gdk_region_rect_in (GdkRegion *region,
58 void gdk_region_offset (GdkRegion *region,
61 void gdk_region_shrink (GdkRegion *region,
64 void gdk_region_union_with_rect (GdkRegion *region,
66 void gdk_region_intersect (GdkRegion *source1,
68 void gdk_region_union (GdkRegion *source1,
70 void gdk_region_subtract (GdkRegion *source1,
72 void gdk_region_xor (GdkRegion *source1,
75 void gdk_region_spans_intersect_foreach (GdkRegion *region,
84 #endif /* __cplusplus */
86 #endif /* __GDK_REGION_H__ */