X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/f4fcc2919776cffa5e3b2f0d44dd24c41e652ff4..245b9db51823e59bd61f0d7c0c69b419495cf0b7:/docs/latex/wx/region.tex diff --git a/docs/latex/wx/region.tex b/docs/latex/wx/region.tex index 0ca8231cdf..060b19f31a 100644 --- a/docs/latex/wx/region.tex +++ b/docs/latex/wx/region.tex @@ -1,7 +1,23 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Name: region.tex +%% Purpose: wxRegion documentation +%% Author: wxTeam +%% Created: +%% RCS-ID: $Id$ +%% Copyright: (c) wxTeam +%% License: wxWindows license +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \section{\class{wxRegion}}\label{wxregion} -A wxRegion represents a simple or complex region on a device context or window. It uses -reference counting, so copying and assignment operations are fast. +A wxRegion represents a simple or complex region on a device context or window. + +This class uses \helpref{reference counting and copy-on-write}{trefcount} +internally so that assignments between two instances of this class are very +cheap. You can therefore use actual objects instead of pointers without +efficiency problems. If an instance of this class is changed it will create +its own data internally so that other instances, which previously shared the +data using the reference counting, are not affected. \wxheading{Derived from} @@ -12,13 +28,18 @@ reference counting, so copying and assignment operations are fast. +\wxheading{Library} + +\helpref{wxCore}{librarieslist} + \wxheading{See also} \helpref{wxRegionIterator}{wxregioniterator} \latexignore{\rtfignore{\wxheading{Members}}} -\membersection{wxRegion::wxRegion}\label{wxregionconstr} + +\membersection{wxRegion::wxRegion}\label{wxregionctor} \func{}{wxRegion}{\void} @@ -38,21 +59,32 @@ Constructs a rectangular region a wxRect object. \func{}{wxRegion}{\param{const wxRegion\&}{ region}} -Constructs a region by copying another region. +Copy constructor, uses \helpref{reference counting}{trefcount}. \func{}{wxRegion}{\param{size\_t}{ n}, \param{const wxPoint }{*points}, \param{int }{fillStyle = wxWINDING\_RULE}} Constructs a region corresponding to the polygon made of {\it n} points in the -provided array. {\it fillStyle} parameter may have values +provided array. {\it fillStyle} parameter may have values {\tt wxWINDING\_RULE} or {\tt wxODDEVEN\_RULE}. -{\bf NB:} This constructor is only implemented for Win32 and GTK+ wxWindows ports. +\func{}{wxRegion}{\param{const wxBitmap\&}{ bmp}} + +\func{}{wxRegion}{\param{const wxBitmap\&}{ bmp}, + \param{const wxColour\&}{ transColour}, + \param{int}{ tolerance = 0}} + +Constructs a region using the non-transparent pixels of a bitmap. See +\helpref{Union}{wxregionunion} for more details. + -\membersection{wxRegion::\destruct{wxRegion}} + +\membersection{wxRegion::\destruct{wxRegion}}\label{wxregiondtor} \func{}{\destruct{wxRegion}}{\void} Destructor. +See \helpref{reference-counted object destruction}{refcountdestruct} for more info. + \membersection{wxRegion::Clear}\label{wxregionclear} @@ -60,6 +92,7 @@ Destructor. Clears the current region. + \membersection{wxRegion::Contains}\label{wxregioncontains} \constfunc{wxRegionContain}{Contains}{\param{long\& }{x}, \param{long\& }{y}} @@ -85,9 +118,18 @@ The return value is one of wxOutRegion, wxPartRegion and wxInRegion. On Windows, only wxOutRegion and wxInRegion are returned; a value wxInRegion then indicates that all or some part of the region is contained in this region. + +\membersection{wxRegion::ConvertToBitmap}\label{wxregionconverttobitmap} + +\constfunc{wxBitmap}{ConvertToBitmap}{} + +Convert the region to a black and white bitmap with the white pixels +being inside the region. + + \membersection{wxRegion::GetBox}\label{wxregiongetbox} -\constfunc{void}{GetBox}{\param{long\& }{x}, \param{long\& }{y}, \param{long\& }{width}, \param{long\& }{height}} +\constfunc{void}{GetBox}{\param{wxCoord\& }{x}, \param{wxCoord\& }{y}, \param{wxCoord\& }{width}, \param{wxCoord\& }{height}} Returns the outer bounds of the region. @@ -95,6 +137,7 @@ Returns the outer bounds of the region. Returns the outer bounds of the region. + \membersection{wxRegion::Intersect}\label{wxregionintersect} \func{bool}{Intersect}{\param{wxCoord}{ x}, \param{wxCoord}{ y}, \param{wxCoord}{ width}, \param{wxCoord}{ height}} @@ -111,20 +154,31 @@ Finds the intersection of this region and another region. \wxheading{Return value} -{\tt TRUE} if successful, {\tt FALSE} otherwise. +{\tt true} if successful, {\tt false} otherwise. \wxheading{Remarks} Creates the intersection of the two regions, that is, the parts which are in both regions. The result is stored in this region. + \membersection{wxRegion::IsEmpty}\label{wxregionisempty} \constfunc{bool}{IsEmpty}{\void} -Returns {\tt TRUE} if the region is empty, {\tt FALSE} otherwise. +Returns {\tt true} if the region is empty, {\tt false} otherwise. + + +\membersection{wxRegion::IsEqual}\label{wxregionisequal} + +\constfunc{bool}{IsEqual}{\param{const wxRegion\& }{region}} + +Returns {\tt true} if the region is equal to, i.e. covers the same area as, +another one. Note that if both this region and \arg{region} are invalid, they +are considered to be equal. -\membersection{wxRegion::Subtract}\label{wxregionsubstract} + +\membersection{wxRegion::Subtract}\label{wxregionsubtract} \func{bool}{Subtract}{\param{const wxRect\&}{ rect}} @@ -136,23 +190,27 @@ Subtracts a region from this region. \wxheading{Return value} -{\tt TRUE} if successful, {\tt FALSE} otherwise. +{\tt true} if successful, {\tt false} otherwise. \wxheading{Remarks} This operation combines the parts of 'this' region that are not part of the second region. The result is stored in this region. + \membersection{wxRegion::Offset}\label{wxregionoffset} \func{bool}{Offset}{\param{wxCoord}{ x}, \param{wxCoord}{ y}} +\func{bool}{Offset}{\param{const wxPoint\& }{ pt}} + Moves the region by the specified offsets in horizontal and vertical directions. \wxheading{Return value} -{\tt TRUE} if successful, {\tt FALSE} otherwise (the region is unchanged then). +{\tt true} if successful, {\tt false} otherwise (the region is unchanged then). + \membersection{wxRegion::Union}\label{wxregionunion} @@ -168,15 +226,31 @@ Finds the union of this region and another, rectangular region. Finds the union of this region and another region. +\func{bool}{Union}{\param{const wxBitmap\&}{ bmp}} + +Finds the union of this region and the non-transparent pixels of a +bitmap. Bitmap's mask is used to determine transparency. If the bitmap doesn't +have a mask, solid rectangle of bitmap's dimensions is used. + +\func{bool}{Union}{\param{const wxBitmap\&}{ bmp}, + \param{const wxColour\&}{ transColour}, + \param{int}{ tolerance = 0}} + +Finds the union of this region and the non-transparent pixels of a +bitmap. Colour to be treated as transparent is specified in the +\arg{transColour} argument, along with an +optional colour tolerance value. + \wxheading{Return value} -{\tt TRUE} if successful, {\tt FALSE} otherwise. +{\tt true} if successful, {\tt false} otherwise. \wxheading{Remarks} This operation creates a region that combines all of this region and the second region. The result is stored in this region. + \membersection{wxRegion::Xor}\label{wxregionxor} \func{bool}{Xor}{\param{wxCoord}{ x}, \param{wxCoord}{ y}, \param{wxCoord}{ width}, \param{wxCoord}{ height}} @@ -193,18 +267,21 @@ Finds the Xor of this region and another region. \wxheading{Return value} -{\tt TRUE} if successful, {\tt FALSE} otherwise. +{\tt true} if successful, {\tt false} otherwise. \wxheading{Remarks} This operation creates a region that combines all of this region and the second region, except for any overlapping areas. The result is stored in this region. + \membersection{wxRegion::operator $=$}\label{wxregionassign} \func{void}{operator $=$}{\param{const wxRegion\&}{ region}} -Copies {\it region} by reference counting. +Assignment operator, using \helpref{reference counting}{trefcount}. + + \section{\class{wxRegionIterator}}\label{wxregioniterator} @@ -224,13 +301,18 @@ See \helpref{wxPaintEvent}{wxpaintevent} for an example of use. +\wxheading{Library} + +\helpref{wxCore}{librarieslist} + \wxheading{See also} \helpref{wxPaintEvent}{wxpaintevent} \latexignore{\rtfignore{\wxheading{Members}}} -\membersection{wxRegionIterator::wxRegionIterator} + +\membersection{wxRegionIterator::wxRegionIterator}\label{wxregioniteratorctor} \func{}{wxRegionIterator}{\void} @@ -240,55 +322,64 @@ Default constructor. Creates an iterator object given a region. -\membersection{wxRegionIterator::GetX} + +\membersection{wxRegionIterator::GetX}\label{wxregioniteratorgetx} \constfunc{wxCoord}{GetX}{\void} Returns the x value for the current region. -\membersection{wxRegionIterator::GetY} + +\membersection{wxRegionIterator::GetY}\label{wxregioniteratorgety} \constfunc{wxCoord}{GetY}{\void} Returns the y value for the current region. -\membersection{wxRegionIterator::GetW} + +\membersection{wxRegionIterator::GetW}\label{wxregioniteratorgetw} \constfunc{wxCoord}{GetW}{\void} An alias for GetWidth. -\membersection{wxRegionIterator::GetWidth} -\constfunc{wxCoord}{GetWidth}{\void} +\membersection{wxRegionIterator::GetHeight}\label{wxregioniteratorgetheight} -Returns the width value for the current region. +\constfunc{wxCoord}{GetHeight}{\void} -\membersection{wxRegionIterator::GetH} +Returns the height value for the current region. -\constfunc{wxCoord}{GetH}{\void} -An alias for GetHeight. +\membersection{wxRegionIterator::GetH}\label{wxregioniteratorgeth} -\membersection{wxRegionIterator::GetHeight} +\constfunc{wxCoord}{GetH}{\void} -\constfunc{wxCoord}{GetWidth}{\void} +An alias for GetHeight. -Returns the width value for the current region. -\membersection{wxRegionIterator::GetRect} +\membersection{wxRegionIterator::GetRect}\label{wxregioniteratorgetrect} \constfunc{wxRect}{GetRect}{\void} Returns the current rectangle. -\membersection{wxRegionIterator::HaveRects} + +\membersection{wxRegionIterator::GetWidth}\label{wxregioniteratorgetwidth} + +\constfunc{wxCoord}{GetWidth}{\void} + +Returns the width value for the current region. + + +\membersection{wxRegionIterator::HaveRects}\label{wxregioniteratorhaverects} \constfunc{bool}{HaveRects}{\void} -Returns {\tt TRUE} if there are still some rectangles; otherwise returns {\tt FALSE}. +Returns {\tt true} if there are still some rectangles; otherwise returns {\tt false}. -\membersection{wxRegionIterator::Reset} + +\membersection{wxRegionIterator::Reset}\label{wxregioniteratorreset} \func{void}{Reset}{\void} @@ -298,7 +389,8 @@ Resets the iterator to the beginning of the rectangles. Resets the iterator to the given region. -\membersection{wxRegionIterator::operator $++$} + +\membersection{wxRegionIterator::operator $++$}\label{wxregioniteratorinc} \func{void}{operator $++$}{\void} @@ -306,11 +398,12 @@ Increment operator. Increments the iterator to the next region. \pythonnote{A wxPython alias for this operator is called {\tt Next}.} -\membersection{wxRegionIterator::operator bool} + +\membersection{wxRegionIterator::operator bool}\label{wxregioniteratorbool} \constfunc{}{operator bool}{\void} -Returns {\tt TRUE} if there are still some rectangles; otherwise returns {\tt FALSE}. +Returns {\tt true} if there are still some rectangles; otherwise returns {\tt false}. You can use this to test the iterator object as if it were of type bool.