added Get(MultiLine)TextEvent() overloads returning wxSize which are used by wxPackageManager (patch 1595123)

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@43745 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 2006-12-02 14:11:15 +00:00
parent 1f640c45d4
commit cc4f194e48
2 changed files with 62 additions and 5 deletions

View File

@ -662,6 +662,33 @@ Gets the current logical function (see \helpref{wxDC::SetLogicalFunction}{wxdcse
Gets the {\it mapping mode} for the device context (see \helpref{wxDC::SetMapMode}{wxdcsetmapmode}).
\membersection{wxDC::GetMultiLineTextExtent}\label{wxdcgetmultilinetextextent}
\constfunc{void}{GetMultiLineTextExtent}{\param{const wxString\& }{string}, \param{wxCoord *}{w},\\
\param{wxCoord *}{h}, \param{wxCoord *}{heightLine = NULL}, \param{wxFont *}{font = NULL}}
\constfunc{wxSize}{GetMultiLineTextExtent}{\param{const wxString\& }{string}}
Gets the dimensions of the string using the currently selected font.
\rtfsp{\it string} is the text string to measure, {\it heightLine}, if non NULL,
is where to store the height of a single line.
The text extent is returned in {\it w} and {\it h} pointers (first form) or as
a \helpref{wxSize}{wxsize} object (second form).
If the optional parameter {\it font} is specified and valid, then it is used
for the text extent calculation. Otherwise the currently selected font is.
Note that this function works both with single-line and multi-line strings.
\wxheading{See also}
\helpref{wxFont}{wxfont},\rtfsp
\helpref{wxDC::SetFont}{wxdcsetfont},\rtfsp
\helpref{wxDC::GetPartialTextExtents}{wxdcgetpartialtextextents},\rtfsp
\helpref{wxDC::GetTextExtent}{wxdcgettextextent}
\membersection{wxDC::GetPartialTextExtents}\label{wxdcgetpartialtextextents}
\constfunc{bool}{GetPartialTextExtents}{\param{const wxString\& }{text},
@ -675,6 +702,11 @@ various platforms have a native API function that is faster or more
accurate than the generic implementation then it should be used
instead.
\wxheading{See also}
\helpref{wxDC::GetMultiLineTextExtent}{wxdcgetmultilinetextextent},\rtfsp
\helpref{wxDC::GetTextExtent}{wxdcgettextextent}
\pythonnote{This method only takes the {\it text} parameter and
returns a Python list of integers.}
@ -760,20 +792,31 @@ Gets the current text background colour (see \helpref{wxDC::SetTextBackground}{w
\membersection{wxDC::GetTextExtent}\label{wxdcgettextextent}
\func{void}{GetTextExtent}{\param{const wxString\& }{string}, \param{wxCoord *}{w}, \param{wxCoord *}{h},\\
\constfunc{void}{GetTextExtent}{\param{const wxString\& }{string}, \param{wxCoord *}{w}, \param{wxCoord *}{h},\\
\param{wxCoord *}{descent = NULL}, \param{wxCoord *}{externalLeading = NULL}, \param{wxFont *}{font = NULL}}
\constfunc{wxSize}{GetTextExtent}{\param{const wxString\& }{string}}
Gets the dimensions of the string using the currently selected font.
\rtfsp{\it string} is the text string to measure, {\it w} and {\it h} are
the total width and height respectively, {\it descent} is the
\rtfsp{\it string} is the text string to measure, {\it descent} is the
dimension from the baseline of the font to the bottom of the
descender, and {\it externalLeading} is any extra vertical space added
to the font by the font designer (usually is zero).
The text extent is returned in {\it w} and {\it h} pointers (first form) or as
a \helpref{wxSize}{wxsize} object (second form).
If the optional parameter {\it font} is specified and valid, then it is used
for the text extent calculation. Otherwise the currently selected font is.
See also \helpref{wxFont}{wxfont}, \helpref{wxDC::SetFont}{wxdcsetfont}.
Note that this function only works with single-line strings.
\wxheading{See also}
\helpref{wxFont}{wxfont},\rtfsp
\helpref{wxDC::SetFont}{wxdcsetfont},\rtfsp
\helpref{wxDC::GetPartialTextExtents}{wxdcgetpartialtextextents},\rtfsp
\helpref{wxDC::GetMultiLineTextExtent}{wxdcgetmultilinetextextent}
\pythonnote{The following methods are implemented in wxPython:\par
\indented{2cm}{\begin{twocollist}

View File

@ -441,13 +441,27 @@ public:
wxFont *theFont = NULL) const
{ DoGetTextExtent(string, x, y, descent, externalLeading, theFont); }
wxSize GetTextExtent(const wxString& string) const
{
wxCoord w, h;
DoGetTextExtent(string, &w, &h);
return wxSize(w, h);
}
// works for single as well as multi-line strings
virtual void GetMultiLineTextExtent(const wxString& text,
virtual void GetMultiLineTextExtent(const wxString& string,
wxCoord *width,
wxCoord *height,
wxCoord *heightLine = NULL,
wxFont *font = NULL) const;
wxSize GetMultiLineTextExtent(const wxString& string) const
{
wxCoord w, h;
GetMultiLineTextExtent(string, &w, &h);
return wxSize(w, h);
}
// Measure cumulative width of text after each character
bool GetPartialTextExtents(const wxString& text, wxArrayInt& widths) const
{ return DoGetPartialTextExtents(text, widths); }