HIERARCHY
Glib::Boxed +----Gtk2::Gdk::Region
METHODS
region = Gtk2::Gdk::Region->new
rectangle = $region->get_clipbox
boolean = $region->empty
boolean = $region1->equal ($region2)
- $region2 (Gtk2::Gdk::Region)
$source1->intersect ($source2)
- $source2 (Gtk2::Gdk::Region)
$region->offset ($dx, $dy)
- $dx (integer)
- $dy (integer)
boolean = $region->point_in ($x, $y)
- $x (integer)
- $y (integer)
region = Gtk2::Gdk::Region->polygon ($points_ref, $fill_rule)
- $points_ref (scalar)
- $fill_rule (Gtk2::Gdk::FillRule)
boolean = $region->rect_equal ($rectangle)
- $rectangle (Gtk2::Gdk::Rectangle)
Since: gtk+ 2.18
overlaptype = $region->rect_in ($rect)
- $rect (Gtk2::Gdk::Rectangle)
region = Gtk2::Gdk::Region->rectangle ($rectangle)
- $rectangle (Gtk2::Gdk::Rectangle)
list = $region->get_rectangles
Returns a list of rectangles (Gtk2::Gdk::Rectangle's), the area covered by the region.$region->shrink ($dx, $dy)
- $dx (integer)
- $dy (integer)
$region->spans_intersect_foreach ($spans_ref, $sorted, $func, $data=undef)
- $spans_ref (scalar) arrayref of triples [$x1,$y1,$width1, $x2,$y2,$width2, ...]
- $sorted (boolean)
- $func (scalar)
- $data (scalar)
Call $function for horizontal lines which intersect $region.
$spans_ref is an arrayref of x,y,width horizontal lines. If $sorted is true then they're assumed to be sorted by increasing y coordinate (allowing a single pass across the region rectangles). $function is called
&$function ($x, $y, $width, $data)
for each portion of a span which intersects $region. $function must not change $region.
$region->spans_intersect_foreach ([ 0,0,50, 20,20,100, 0,10,50 ], 0, # spans not sorted by y \&my_callback, 'hello'); # userdata sub my_callback { my ($x, $y, $width, $userdata) = @_; print "$userdata: $x, $y, $width\n"; }
$source1->subtract ($source2)
- $source2 (Gtk2::Gdk::Region)
$source1->union ($source2)
- $source2 (Gtk2::Gdk::Region)
$region->union_with_rect ($rect)
- $rect (Gtk2::Gdk::Rectangle)
$source1->xor ($source2)
- $source2 (Gtk2::Gdk::Region)
ENUMS AND FLAGS
enum Gtk2::Gdk::FillRule
- 'even-odd-rule' / 'GDK_EVEN_ODD_RULE'
- 'winding-rule' / 'GDK_WINDING_RULE'
enum Gtk2::Gdk::OverlapType
- 'in' / 'GDK_OVERLAP_RECTANGLE_IN'
- 'out' / 'GDK_OVERLAP_RECTANGLE_OUT'
- 'part' / 'GDK_OVERLAP_RECTANGLE_PART'
COPYRIGHT
Copyright (C) 2003-2011 by the gtk2-perl team.This software is licensed under the LGPL. See Gtk2 for a full notice.