gdkregion.h

Go to the documentation of this file.
00001 #ifndef __GDK_REGION_H__
00002 #define __GDK_REGION_H__
00003 
00004 #include <gdk/gdktypes.h>
00005 
00006 #ifdef __cplusplus
00007 extern "C" {
00008 #endif                          /* __cplusplus */
00009 
00010 /* GC fill rule for polygons
00011  *  EvenOddRule
00012  *  WindingRule
00013  */
00014    typedef enum {
00015       GDK_EVEN_ODD_RULE,
00016       GDK_WINDING_RULE
00017    } GdkFillRule;
00018 
00019 /* Types of overlapping between a rectangle and a region
00020  * GDK_OVERLAP_RECTANGLE_IN: rectangle is in region
00021  * GDK_OVERLAP_RECTANGLE_OUT: rectangle in not in region
00022  * GDK_OVERLAP_RECTANGLE_PART: rectangle in partially in region
00023  */
00024    typedef enum {
00025       GDK_OVERLAP_RECTANGLE_IN,
00026       GDK_OVERLAP_RECTANGLE_OUT,
00027       GDK_OVERLAP_RECTANGLE_PART
00028    } GdkOverlapType;
00029 
00030    struct _GdkRegion {
00031       gpointer user_data;
00032    };
00033 
00034    GdkRegion *gdk_region_new(void);
00035    void gdk_region_destroy(GdkRegion * region);
00036 
00037    void gdk_region_get_clipbox(GdkRegion * region,
00038                                GdkRectangle * rectangle);
00039 
00040    gboolean gdk_region_empty(GdkRegion * region);
00041    gboolean gdk_region_equal(GdkRegion * region1, GdkRegion * region2);
00042    gboolean gdk_region_point_in(GdkRegion * region, int x, int y);
00043    GdkOverlapType gdk_region_rect_in(GdkRegion * region,
00044                                      GdkRectangle * rect);
00045 
00046    GdkRegion *gdk_region_polygon(GdkPoint * points,
00047                                  gint npoints, GdkFillRule fill_rule);
00048 
00049    void gdk_region_offset(GdkRegion * region, gint dx, gint dy);
00050    void gdk_region_shrink(GdkRegion * region, gint dx, gint dy);
00051 
00052    GdkRegion *gdk_region_union_with_rect(GdkRegion * region,
00053                                          GdkRectangle * rect);
00054    GdkRegion *gdk_regions_intersect(GdkRegion * source1,
00055                                     GdkRegion * source2);
00056    GdkRegion *gdk_regions_union(GdkRegion * source1, GdkRegion * source2);
00057    GdkRegion *gdk_regions_subtract(GdkRegion * source1,
00058                                    GdkRegion * source2);
00059    GdkRegion *gdk_regions_xor(GdkRegion * source1, GdkRegion * source2);
00060 
00061 
00062 #ifdef __cplusplus
00063 }
00064 #endif                          /* __cplusplus */
00065 #endif                          /* __GDK_REGION_H__ */

Generated on Tue Jul 5 14:14:38 2011 for ROOT_528-00b_version by  doxygen 1.5.1