Class Region
- java.lang.Object
-
- org.eclipse.swt.graphics.Resource
-
- org.eclipse.swt.graphics.Region
-
public final class Region extends Resource
Instances of this class represent areas of an x-y coordinate system that are aggregates of the areas covered by a number of polygons.Application code must explicitly invoke the
Region.dispose()method to release the operating system resources managed by each instance when those instances are no longer required.
-
-
Field Summary
Fields Modifier and Type Field Description longhandlethe OS resource for the region (Warning: This field is platform dependent)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(int[] pointArray)Adds the given polygon to the collection of polygons the receiver maintains to describe its area.voidadd(int x, int y, int width, int height)Adds the given rectangle to the collection of polygons the receiver maintains to describe its area.voidadd(Rectangle rect)Adds the given rectangle to the collection of polygons the receiver maintains to describe its area.voidadd(Region region)Adds all of the polygons which make up the area covered by the argument to the collection of polygons the receiver maintains to describe its area.booleancontains(int x, int y)Returnstrueif the point specified by the arguments is inside the area specified by the receiver, andfalseotherwise.booleancontains(Point pt)Returnstrueif the given point is inside the area specified by the receiver, andfalseotherwise.booleanequals(Object object)Compares the argument to the receiver, and returns true if they represent the same object using a class specific comparison.RectanglegetBounds()Returns a rectangle which represents the rectangular union of the collection of polygons the receiver maintains to describe its area.inthashCode()Returns an integer hash code for the receiver.voidintersect(int x, int y, int width, int height)Intersects the given rectangle to the collection of polygons the receiver maintains to describe its area.voidintersect(Rectangle rect)Intersects the given rectangle to the collection of polygons the receiver maintains to describe its area.voidintersect(Region region)Intersects all of the polygons which make up the area covered by the argument to the collection of polygons the receiver maintains to describe its area.booleanintersects(int x, int y, int width, int height)Returnstrueif the rectangle described by the arguments intersects with any of the polygons the receiver maintains to describe its area, andfalseotherwise.booleanintersects(Rectangle rect)Returnstrueif the given rectangle intersects with any of the polygons the receiver maintains to describe its area andfalseotherwise.booleanisDisposed()Returnstrueif the region has been disposed, andfalseotherwise.booleanisEmpty()Returnstrueif the receiver does not cover any area in the (x, y) coordinate plane, andfalseif the receiver does cover some area in the plane.voidsubtract(int[] pointArray)Subtracts the given polygon from the collection of polygons the receiver maintains to describe its area.voidsubtract(int x, int y, int width, int height)Subtracts the given rectangle from the collection of polygons the receiver maintains to describe its area.voidsubtract(Rectangle rect)Subtracts the given rectangle from the collection of polygons the receiver maintains to describe its area.voidsubtract(Region region)Subtracts all of the polygons which make up the area covered by the argument from the collection of polygons the receiver maintains to describe its area.StringtoString()Returns a string containing a concise, human-readable description of the receiver.voidtranslate(int x, int y)Translate all of the polygons the receiver maintains to describe its area by the specified point.voidtranslate(Point pt)Translate all of the polygons the receiver maintains to describe its area by the specified point.static Regionwin32_new(Device device, int handle)Invokes platform specific functionality to allocate a new region.-
Methods inherited from class org.eclipse.swt.graphics.Resource
dispose, getDevice, setNonDisposeHandler
-
-
-
-
Field Detail
-
handle
public long handle
the OS resource for the region (Warning: This field is platform dependent)IMPORTANT: This field is not part of the SWT public API. It is marked public only so that it can be shared within the packages provided by SWT. It is not available on all platforms and should never be accessed from application code.
- Restriction:
- This field is not intended to be referenced by clients.
-
-
Constructor Detail
-
Region
public Region()
Constructs a new empty region.You must dispose the region when it is no longer required.
- Throws:
SWTError-- ERROR_NO_HANDLES if a handle could not be obtained for region creation
- See Also:
Resource.dispose()
-
Region
public Region(Device device)
Constructs a new empty region.You must dispose the region when it is no longer required.
- Parameters:
device- the device on which to allocate the region- Throws:
IllegalArgumentException-- ERROR_NULL_ARGUMENT - if device is null and there is no current device
SWTError-- ERROR_NO_HANDLES if a handle could not be obtained for region creation
- Since:
- 3.0
- See Also:
Resource.dispose()
-
-
Method Detail
-
add
public void add(int[] pointArray)
Adds the given polygon to the collection of polygons the receiver maintains to describe its area.- Parameters:
pointArray- points that describe the polygon to merge with the receiver- Throws:
IllegalArgumentException-- ERROR_NULL_ARGUMENT - if the argument is null
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- Since:
- 3.0
-
add
public void add(Rectangle rect)
Adds the given rectangle to the collection of polygons the receiver maintains to describe its area.- Parameters:
rect- the rectangle to merge with the receiver- Throws:
IllegalArgumentException-- ERROR_NULL_ARGUMENT - if the argument is null
- ERROR_INVALID_ARGUMENT - if the rectangle's width or height is negative
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
-
add
public void add(int x, int y, int width, int height)Adds the given rectangle to the collection of polygons the receiver maintains to describe its area.- Parameters:
x- the x coordinate of the rectangley- the y coordinate of the rectanglewidth- the width coordinate of the rectangleheight- the height coordinate of the rectangle- Throws:
IllegalArgumentException-- ERROR_INVALID_ARGUMENT - if the rectangle's width or height is negative
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- Since:
- 3.1
-
add
public void add(Region region)
Adds all of the polygons which make up the area covered by the argument to the collection of polygons the receiver maintains to describe its area.- Parameters:
region- the region to merge- Throws:
IllegalArgumentException-- ERROR_NULL_ARGUMENT - if the argument is null
- ERROR_INVALID_ARGUMENT - if the argument has been disposed
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
-
contains
public boolean contains(int x, int y)Returnstrueif the point specified by the arguments is inside the area specified by the receiver, andfalseotherwise.- Parameters:
x- the x coordinate of the point to test for containmenty- the y coordinate of the point to test for containment- Returns:
trueif the region contains the point andfalseotherwise- Throws:
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
-
contains
public boolean contains(Point pt)
Returnstrueif the given point is inside the area specified by the receiver, andfalseotherwise.- Parameters:
pt- the point to test for containment- Returns:
trueif the region contains the point andfalseotherwise- Throws:
IllegalArgumentException-- ERROR_NULL_ARGUMENT - if the argument is null
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
-
equals
public boolean equals(Object object)
Compares the argument to the receiver, and returns true if they represent the same object using a class specific comparison.- Overrides:
equalsin classObject- Parameters:
object- the object to compare with this object- Returns:
trueif the object is the same as this object andfalseotherwise- See Also:
hashCode()
-
getBounds
public Rectangle getBounds()
Returns a rectangle which represents the rectangular union of the collection of polygons the receiver maintains to describe its area.- Returns:
- a bounding rectangle for the region
- Throws:
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- See Also:
Rectangle.union(org.eclipse.swt.graphics.Rectangle)
-
hashCode
public int hashCode()
Returns an integer hash code for the receiver. Any two objects that returntruewhen passed toequalsmust return the same value for this method.- Overrides:
hashCodein classObject- Returns:
- the receiver's hash
- See Also:
equals(java.lang.Object)
-
intersect
public void intersect(Rectangle rect)
Intersects the given rectangle to the collection of polygons the receiver maintains to describe its area.- Parameters:
rect- the rectangle to intersect with the receiver- Throws:
IllegalArgumentException-- ERROR_NULL_ARGUMENT - if the argument is null
- ERROR_INVALID_ARGUMENT - if the rectangle's width or height is negative
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- Since:
- 3.0
-
intersect
public void intersect(int x, int y, int width, int height)Intersects the given rectangle to the collection of polygons the receiver maintains to describe its area.- Parameters:
x- the x coordinate of the rectangley- the y coordinate of the rectanglewidth- the width coordinate of the rectangleheight- the height coordinate of the rectangle- Throws:
IllegalArgumentException-- ERROR_INVALID_ARGUMENT - if the rectangle's width or height is negative
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- Since:
- 3.1
-
intersect
public void intersect(Region region)
Intersects all of the polygons which make up the area covered by the argument to the collection of polygons the receiver maintains to describe its area.- Parameters:
region- the region to intersect- Throws:
IllegalArgumentException-- ERROR_NULL_ARGUMENT - if the argument is null
- ERROR_INVALID_ARGUMENT - if the argument has been disposed
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- Since:
- 3.0
-
intersects
public boolean intersects(int x, int y, int width, int height)Returnstrueif the rectangle described by the arguments intersects with any of the polygons the receiver maintains to describe its area, andfalseotherwise.- Parameters:
x- the x coordinate of the origin of the rectangley- the y coordinate of the origin of the rectanglewidth- the width of the rectangleheight- the height of the rectangle- Returns:
trueif the rectangle intersects with the receiver, andfalseotherwise- Throws:
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- See Also:
Rectangle.intersects(Rectangle)
-
intersects
public boolean intersects(Rectangle rect)
Returnstrueif the given rectangle intersects with any of the polygons the receiver maintains to describe its area andfalseotherwise.- Parameters:
rect- the rectangle to test for intersection- Returns:
trueif the rectangle intersects with the receiver, andfalseotherwise- Throws:
IllegalArgumentException-- ERROR_NULL_ARGUMENT - if the argument is null
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- See Also:
Rectangle.intersects(Rectangle)
-
isDisposed
public boolean isDisposed()
Returnstrueif the region has been disposed, andfalseotherwise.This method gets the dispose state for the region. When a region has been disposed, it is an error to invoke any other method (except
Resource.dispose()) using the region.- Specified by:
isDisposedin classResource- Returns:
truewhen the region is disposed, andfalseotherwise
-
isEmpty
public boolean isEmpty()
Returnstrueif the receiver does not cover any area in the (x, y) coordinate plane, andfalseif the receiver does cover some area in the plane.- Returns:
trueif the receiver is empty, andfalseotherwise- Throws:
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
-
subtract
public void subtract(int[] pointArray)
Subtracts the given polygon from the collection of polygons the receiver maintains to describe its area.- Parameters:
pointArray- points that describe the polygon to merge with the receiver- Throws:
IllegalArgumentException-- ERROR_NULL_ARGUMENT - if the argument is null
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- Since:
- 3.0
-
subtract
public void subtract(Rectangle rect)
Subtracts the given rectangle from the collection of polygons the receiver maintains to describe its area.- Parameters:
rect- the rectangle to subtract from the receiver- Throws:
IllegalArgumentException-- ERROR_NULL_ARGUMENT - if the argument is null
- ERROR_INVALID_ARGUMENT - if the rectangle's width or height is negative
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- Since:
- 3.0
-
subtract
public void subtract(int x, int y, int width, int height)Subtracts the given rectangle from the collection of polygons the receiver maintains to describe its area.- Parameters:
x- the x coordinate of the rectangley- the y coordinate of the rectanglewidth- the width coordinate of the rectangleheight- the height coordinate of the rectangle- Throws:
IllegalArgumentException-- ERROR_INVALID_ARGUMENT - if the rectangle's width or height is negative
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- Since:
- 3.1
-
subtract
public void subtract(Region region)
Subtracts all of the polygons which make up the area covered by the argument from the collection of polygons the receiver maintains to describe its area.- Parameters:
region- the region to subtract- Throws:
IllegalArgumentException-- ERROR_NULL_ARGUMENT - if the argument is null
- ERROR_INVALID_ARGUMENT - if the argument has been disposed
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- Since:
- 3.0
-
translate
public void translate(int x, int y)Translate all of the polygons the receiver maintains to describe its area by the specified point.- Parameters:
x- the x coordinate of the point to translatey- the y coordinate of the point to translate- Throws:
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- Since:
- 3.1
-
translate
public void translate(Point pt)
Translate all of the polygons the receiver maintains to describe its area by the specified point.- Parameters:
pt- the point to translate- Throws:
IllegalArgumentException-- ERROR_NULL_ARGUMENT - if the argument is null
SWTException-- ERROR_GRAPHIC_DISPOSED - if the receiver has been disposed
- Since:
- 3.1
-
toString
public String toString()
Returns a string containing a concise, human-readable description of the receiver.
-
win32_new
public static Region win32_new(Device device, int handle)
Invokes platform specific functionality to allocate a new region.IMPORTANT: This method is not part of the public API for
Region. It is marked public only so that it can be shared within the packages provided by SWT. It is not available on all platforms, and should never be called from application code.- Parameters:
device- the device on which to allocate the regionhandle- the handle for the region- Returns:
- a new region object containing the specified device and handle
- Restriction:
- This method is not intended to be referenced by clients.
-
-