[scriptable, uuid(82d8f400-5bde-11d3-b033-b27a62766bbc)]
interface nsIScriptableRegion : nsISupports

Attributes


          
[noscript] readonly attribute nsIRegion region

Methods

 does the region intersect the rectangle?

 @param      rect to check for containment
 @return     true if the region intersects the rect

boolean containsRect(in long aX, in long aY, in long aWidth, in long aHeight)
 returns the bounding box of the region i.e. the smallest
 rectangle that completely contains the region.        

 @param      aX out parameter for xoffset of bounding rect for region
 @param      aY out parameter for yoffset of bounding rect for region
 @param      aWidth out parameter for width of bounding rect for region
 @param      aHeight out parameter for height of bounding rect for region
 @return     void

void getBoundingBox(out long aX, out long aY, out long aWidth, out long aHeight)

          
void init()
 destructively intersect a rect with this region

 @param      aX xoffset of rect to intersect with region
 @param      aY yoffset of rect to intersect with region
 @param      aWidth width of rect to intersect with region
 @param      aHeight height of rect to intersect with region
 @return     void

void intersectRect(in long aX, in long aY, in long aWidth, in long aHeight)
 destructively intersect another region with this one

 @param      region to intersect
 @return     void

void intersectRegion(in nsIScriptableRegion aRegion)
 is this region empty? i.e. does it contain any pixels

 @param      none
 @return     returns whether the region is empty

boolean isEmpty()
 == operator equivalent i.e. do the regions contain exactly
 the same pixels

 @param      region to compare
 @return     whether the regions are identical

boolean isEqualRegion(in nsIScriptableRegion aRegion)
 offsets the region in x and y

 @param  xoffset  pixel offset in x
 @param  yoffset  pixel offset in y
 @return          void

void offset(in long aXOffset, in long aYOffset)
 copy operator equivalent that takes a rect

 @param      aX xoffset of rect to set region to
 @param      aY yoffset of rect to set region to
 @param      aWidth width of rect to set region to
 @param      aHeight height of rect to set region to
 @return     void

void setToRect(in long aX, in long aY, in long aWidth, in long aHeight)
 copy operator equivalent that takes another region

 @param      region to copy
 @return     void

void setToRegion(in nsIScriptableRegion aRegion)
 destructively subtract a rect from this region

 @param      aX xoffset of rect to subtract with region
 @param      aY yoffset of rect to subtract with region
 @param      aWidth width of rect to subtract with region
 @param      aHeight height of rect to subtract with region
 @return     void

void subtractRect(in long aX, in long aY, in long aWidth, in long aHeight)
 destructively subtract another region with this one

 @param      region to subtract
 @return     void

void subtractRegion(in nsIScriptableRegion aRegion)
 destructively union a rect with this region

 @param      aX xoffset of rect to union with region
 @param      aY yoffset of rect to union with region
 @param      aWidth width of rect to union with region
 @param      aHeight height of rect to union with region
 @return     void

void unionRect(in long aX, in long aY, in long aWidth, in long aHeight)
 destructively union another region with this one

 @param      region to union
 @return     void

void unionRegion(in nsIScriptableRegion aRegion)