a7af285d1a
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@47777 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
390 lines
9.7 KiB
TeX
390 lines
9.7 KiB
TeX
\section{\class{wxRect}}\label{wxrect}
|
|
|
|
A class for manipulating rectangles.
|
|
|
|
\wxheading{Derived from}
|
|
|
|
None
|
|
|
|
\wxheading{Include files}
|
|
|
|
<wx/gdicmn.h>
|
|
|
|
\wxheading{Library}
|
|
|
|
\helpref{wxCore}{librarieslist}
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxPoint}{wxpoint}, \helpref{wxSize}{wxsize}
|
|
|
|
\latexignore{\rtfignore{\wxheading{Members}}}
|
|
|
|
|
|
\membersection{wxRect::wxRect}\label{wxrectctor}
|
|
|
|
\func{}{wxRect}{\void}
|
|
|
|
Default constructor.
|
|
|
|
\func{}{wxRect}{\param{int}{ x}, \param{int}{ y}, \param{int}{ width}, \param{int}{ height}}
|
|
|
|
Creates a wxRect object from x, y, width and height values.
|
|
|
|
\func{}{wxRect}{\param{const wxPoint\&}{ topLeft}, \param{const wxPoint\&}{ bottomRight}}
|
|
|
|
Creates a wxRect object from top-left and bottom-right points.
|
|
|
|
\func{}{wxRect}{\param{const wxPoint\&}{ pos}, \param{const wxSize\&}{ size}}
|
|
|
|
Creates a wxRect object from position and size values.
|
|
|
|
\func{}{wxRect}{\param{const wxSize\&}{ size}}
|
|
|
|
Creates a wxRect object from size values at the origin.
|
|
|
|
|
|
\membersection{wxRect::x}\label{wxrectx}
|
|
|
|
\member{int}{x}
|
|
|
|
x coordinate of the top-level corner of the rectangle.
|
|
|
|
|
|
\membersection{wxRect::y}\label{wxrecty}
|
|
|
|
\member{int}{y}
|
|
|
|
y coordinate of the top-level corner of the rectangle.
|
|
|
|
|
|
\membersection{wxRect::width}\label{wxrectwidth}
|
|
|
|
\member{int}{width}
|
|
|
|
Width member.
|
|
|
|
|
|
\membersection{wxRect::height}\label{wxrectheight}
|
|
|
|
\member{int}{height}
|
|
|
|
Height member.
|
|
|
|
|
|
\membersection{wxRect::CentreIn}\label{wxrectcentrein}
|
|
|
|
\constfunc{wxRect}{CentreIn}{\param{const wxRect\& }{r}, \param{int }{dir = wxBOTH}}
|
|
|
|
\constfunc{wxRect}{CenterIn}{\param{const wxRect\& }{r}, \param{int }{dir = wxBOTH}}
|
|
|
|
Returns the rectangle having the same size as this one but centered relatively
|
|
to the given rectangle \arg{r}. By default, rectangle is centred in both
|
|
directions but if \arg{dir} includes only \texttt{wxVERTICAL} or only
|
|
\texttt{wxHORIZONTAL} flag, then it is only centered in this direction while
|
|
the other component of its position remains unchanged.
|
|
|
|
|
|
\membersection{wxRect::Contains}\label{wxrectcontains}
|
|
|
|
\constfunc{bool}{Contains}{\param{int }{x}, \param{int }{y}}
|
|
|
|
\constfunc{bool}{Contains}{\param{const wxPoint\& }{pt}}
|
|
|
|
Returns {\tt true} if the given point is inside the rectangle (or on its
|
|
boundary) and {\tt false} otherwise.
|
|
|
|
\constfunc{bool}{Contains}{\param{const wxRect\& }{rect}}
|
|
|
|
Returns \true if the given rectangle is completely inside this rectangle
|
|
(or touches its boundary) and \false otherwise.
|
|
|
|
|
|
\membersection{wxRect::Deflate}\label{wxrectdeflate}
|
|
|
|
\func{void}{Deflate}{\param{wxCoord }{dx}, \param{wxCoord }{dy}}
|
|
|
|
\func{void}{Deflate}{\param{const wxSize\& }{diff}}
|
|
|
|
\func{void}{Deflate}{\param{wxCoord }{diff}}
|
|
|
|
\constfunc{wxRect}{Deflate}{\param{wxCoord }{dx}, \param{wxCoord }{dy}}
|
|
|
|
Decrease the rectangle size.
|
|
|
|
This method is the opposite from \helpref{Inflate}{wxrectinflate}:
|
|
Deflate(a, b) is equivalent to Inflate(-a, -b).
|
|
Please refer to \helpref{Inflate}{wxrectinflate} for full description.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{Inflate}{wxrectinflate}
|
|
|
|
|
|
\membersection{wxRect::GetBottom}\label{wxrectgetbottom}
|
|
|
|
\constfunc{int}{GetBottom}{\void}
|
|
|
|
Gets the bottom point of the rectangle.
|
|
|
|
|
|
\membersection{wxRect::GetHeight}\label{wxrectgetheight}
|
|
|
|
\constfunc{int}{GetHeight}{\void}
|
|
|
|
Gets the height member.
|
|
|
|
|
|
\membersection{wxRect::GetLeft}\label{wxrectgetleft}
|
|
|
|
\constfunc{int}{GetLeft}{\void}
|
|
|
|
Gets the left point of the rectangle (the same as \helpref{wxRect::GetX}{wxrectgetx}).
|
|
|
|
|
|
\membersection{wxRect::GetPosition}\label{wxrectgetposition}
|
|
|
|
\constfunc{wxPoint}{GetPosition}{\void}
|
|
|
|
Gets the position.
|
|
|
|
|
|
\membersection{wxRect::GetTopLeft}\label{wxrectgettopleft}
|
|
|
|
\constfunc{wxPoint}{GetTopLeft}{\void}
|
|
|
|
Gets the position of the top left corner of the rectangle, same as
|
|
\helpref{GetPosition}{wxrectgetposition}.
|
|
|
|
|
|
\membersection{wxRect::GetTopRight}\label{wxrectgettopright}
|
|
|
|
\constfunc{wxPoint}{GetTopRight}{\void}
|
|
|
|
Gets the position of the top right corner.
|
|
|
|
|
|
\membersection{wxRect::GetBottomLeft}\label{wxrectgetbottomleft}
|
|
|
|
\constfunc{wxPoint}{GetBottomLeft}{\void}
|
|
|
|
Gets the position of the bottom left corner.
|
|
|
|
|
|
\membersection{wxRect::GetBottomRight}\label{wxrectgetbottomright}
|
|
|
|
\constfunc{wxPoint}{GetBottomRight}{\void}
|
|
|
|
Gets the position of the bottom right corner.
|
|
|
|
|
|
\membersection{wxRect::GetRight}\label{wxrectgetright}
|
|
|
|
\constfunc{int}{GetRight}{\void}
|
|
|
|
Gets the right point of the rectangle.
|
|
|
|
|
|
\membersection{wxRect::GetSize}\label{wxrectgetsize}
|
|
|
|
\constfunc{wxSize}{GetSize}{\void}
|
|
|
|
Gets the size.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxRect::SetSize}{wxrectsetsize}
|
|
|
|
|
|
\membersection{wxRect::GetTop}\label{wxrectgettop}
|
|
|
|
\constfunc{int}{GetTop}{\void}
|
|
|
|
Gets the top point of the rectangle (the same as \helpref{wxRect::GetY}{wxrectgety}).
|
|
|
|
|
|
\membersection{wxRect::GetWidth}\label{wxrectgetwidth}
|
|
|
|
\constfunc{int}{GetWidth}{\void}
|
|
|
|
Gets the width member.
|
|
|
|
|
|
\membersection{wxRect::GetX}\label{wxrectgetx}
|
|
|
|
\constfunc{int}{GetX}{\void}
|
|
|
|
Gets the x member.
|
|
|
|
|
|
\membersection{wxRect::GetY}\label{wxrectgety}
|
|
|
|
\constfunc{int}{GetY}{\void}
|
|
|
|
Gets the y member.
|
|
|
|
|
|
\membersection{wxRect::Inflate}\label{wxrectinflate}
|
|
|
|
\func{void}{Inflate}{\param{wxCoord }{dx}, \param{wxCoord }{dy}}
|
|
|
|
\func{void}{Inflate}{\param{const wxSize\& }{diff}}
|
|
|
|
\func{void}{Inflate}{\param{wxCoord }{diff}}
|
|
|
|
\constfunc{wxRect}{Inflate}{\param{wxCoord }{dx}, \param{wxCoord }{dy}}
|
|
|
|
Increases the size of the rectangle.
|
|
|
|
The second form uses the same {\it diff} for both {\it dx} and {\it dy}.
|
|
|
|
The first two versions modify the rectangle in place, the last one returns a
|
|
new rectangle leaving this one unchanged.
|
|
|
|
The left border is moved farther left and the right border is moved farther
|
|
right by {\it dx}. The upper border is moved farther up and the bottom border
|
|
is moved farther down by {\it dy}. (Note the the width and height of the
|
|
rectangle thus change by 2*{\it dx} and 2*{\it dy}, respectively.) If one or
|
|
both of {\it dx} and {\it dy} are negative, the opposite happens: the rectangle
|
|
size decreases in the respective direction.
|
|
|
|
Inflating and deflating behaves ``naturally''. Defined more precisely, that
|
|
means:
|
|
\begin{enumerate}
|
|
\item ``Real'' inflates (that is, {\it dx} and/or {\it dy} >= 0) are not
|
|
constrained. Thus inflating a rectangle can cause its upper left corner
|
|
to move into the negative numbers. (the versions prior to 2.5.4 forced
|
|
the top left coordinate to not fall below (0, 0), which implied a
|
|
forced move of the rectangle.)
|
|
|
|
\item Deflates are clamped to not reduce the width or height of the
|
|
rectangle below zero. In such cases, the top-left corner is nonetheless
|
|
handled properly. For example, a rectangle at (10, 10) with size (20,
|
|
40) that is inflated by (-15, -15) will become located at (20, 25) at
|
|
size (0, 10). Finally, observe that the width and height are treated
|
|
independently. In the above example, the width is reduced by 20,
|
|
whereas the height is reduced by the full 30 (rather than also stopping
|
|
at 20, when the width reached zero).
|
|
\end{enumerate}
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{Deflate}{wxrectdeflate}
|
|
|
|
|
|
\membersection{wxRect::Intersects}\label{wxrectintersects}
|
|
|
|
\constfunc{bool}{Intersects}{\param{const wxRect\& }{rect}}
|
|
|
|
Returns {\tt true} if this rectangle has a non-empty intersection with the
|
|
rectangle {\it rect} and {\tt false} otherwise.
|
|
|
|
|
|
\membersection{wxRect::IsEmpty}\label{wxrectisempty}
|
|
|
|
\constfunc{bool}{IsEmpty}{}
|
|
|
|
Returns {\tt true} if this rectangle has a width or height less than or equal to
|
|
0 and {\tt false} otherwise.
|
|
|
|
|
|
\membersection{wxRect::Offset}\label{wxrectoffset}
|
|
|
|
\func{void}{Offset}{\param{wxCoord }{dx}, \param{wxCoord }{dy}}
|
|
|
|
\func{void}{Offset}{\param{const wxPoint\& }{pt}}
|
|
|
|
Moves the rectangle by the specified offset. If {\it dx} is positive, the
|
|
rectangle is moved to the right, if {\it dy} is positive, it is moved to the
|
|
bottom, otherwise it is moved to the left or top respectively.
|
|
|
|
|
|
\membersection{wxRect::SetHeight}\label{wxrectsetheight}
|
|
|
|
\func{void}{SetHeight}{\param{int}{ height}}
|
|
|
|
Sets the height.
|
|
|
|
|
|
\membersection{wxRect::SetSize}\label{wxrectsetsize}
|
|
|
|
\func{void}{SetSize}{\param{const wxSize\&}{ s}}
|
|
|
|
Sets the size.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxRect::GetSize}{wxrectgetsize}
|
|
|
|
|
|
\membersection{wxRect::SetWidth}\label{wxrectsetwidth}
|
|
|
|
\func{void}{SetWidth}{\param{int}{ width}}
|
|
|
|
Sets the width.
|
|
|
|
|
|
\membersection{wxRect::SetX}\label{wxrectsetx}
|
|
|
|
\func{void}{SetX}{\param{int}{ x}}
|
|
|
|
Sets the x position.
|
|
|
|
|
|
\membersection{wxRect::SetY}\label{wxrectsety}
|
|
|
|
\func{void}{SetY}{\param{int}{ y}}
|
|
|
|
Sets the y position.
|
|
|
|
|
|
\membersection{wxRect::Union}\label{wxrectunion}
|
|
|
|
\constfunc{wxRect}{Union}{\param{const wxRect\&}{ rect}}
|
|
|
|
\func{wxRect\&}{Union}{\param{const wxRect\&}{ rect}}
|
|
|
|
Modifies the rectangle to contain the bounding box of this rectangle and the
|
|
one passed in as parameter. The const version returns the new rectangle, the
|
|
other one modifies this rectangle in place.
|
|
|
|
|
|
\membersection{wxRect::operator $=$}\label{wxrectassign}
|
|
|
|
\func{void}{operator $=$}{\param{const wxRect\& }{rect}}
|
|
|
|
Assignment operator.
|
|
|
|
|
|
\membersection{wxRect::operator $==$}\label{wxrectequal}
|
|
|
|
\func{bool}{operator $==$}{\param{const wxRect\& }{r1}, \param{const wxRect\& }{r2}}
|
|
|
|
Equality operator.
|
|
|
|
|
|
\membersection{wxRect::operator $!=$}\label{wxrectnotequal}
|
|
|
|
\func{bool}{operator $!=$}{\param{const wxRect\& }{r1}, \param{const wxRect\& }{r2}}
|
|
|
|
Inequality operator.
|
|
|
|
|
|
\func{wxRect}{operator $+$}{\param{const wxRect\& }{r1}, \param{const wxRect\& }{r2}}
|
|
|
|
\func{wxRect\&}{operator $+=$}{\param{const wxRect\& }{r}}
|
|
|
|
Like \helpref{Union}{wxrectunion} but don't treat empty rectangles specially.
|
|
|
|
\wxheading{See also}
|
|
|
|
\helpref{wxRect::Union}{wxrectunion}
|
|
|
|
|
|
\func{wxRect}{operator $*$}{\param{const wxRect\& }{r1}, \param{const wxRect\& }{r2}}
|
|
|
|
\func{wxRect\&}{operator $*=$}{\param{const wxRect\& }{r}}
|
|
|
|
Returns the intersection of two rectangles (which may be empty).
|
|
|