the message wxEVENT\_TYPE\_TEXT\_ENTER\_COMMAND (otherwise pressing <Enter> is
either processed internally by the control or used for navigation between
dialog controls).}
-\twocolitem{\windowstyle{wxTE\_PROCESS\_TAB}}{The control will receieve
+\twocolitem{\windowstyle{wxTE\_PROCESS\_TAB}}{The control will receive
EVT\_CHAR messages for TAB pressed - normally, TAB is used for passing to the
next control in a dialog instead. For the control created with this style,
you can still use Ctrl-Enter to pass to the next control from the keyboard.}
\twocolitem{\windowstyle{wxTE\_RICH}}{Use rich text control under Win32, this
allows to have more than 64Kb of text in the control even under Win9x. This
style is ignored under other platforms.}
+\twocolitem{\windowstyle{wxTE\_RICH2}}{Use rich text control version 2.0 or 3.0
+under Win32, this style is ignored under other platforms}
\twocolitem{\windowstyle{wxTE\_AUTO\_URL}}{Highlight the URLs and generate the
wxTextUrlEvents when mouse events occur over them. This style is supported
under Win32 only and requires wxTE\_RICH.}
doesn't show the selection when it doesn't have focus - use this style to force
it to always show it. It doesn't do anything under other platforms.}
\twocolitem{\windowstyle{wxHSCROLL}}{A horizontal scrollbar will be created. No effect under GTK+.}
+\twocolitem{\windowstyle{wxTE\_DONTWRAP}}{Same as {\tt wxHSCROLL} style.}
+\twocolitem{\windowstyle{wxTE\_LINEWRAP}}{Wrap the lines too long to be shown entirely at any position (wxUniv only currently)}
+\twocolitem{\windowstyle{wxTE\_WORDWRAP}}{Wrap the lines too long to be shown entirely at word boundaries only (wxUniv only currently)}
\end{twocollist}
See also \helpref{window styles overview}{windowstyles} and
Default constructor.
\func{}{wxTextCtrl}{\param{wxWindow* }{parent}, \param{wxWindowID}{ id},\rtfsp
-\param{const wxString\& }{value = ``"}, \param{const wxPoint\& }{pos}, \param{const wxSize\& }{size = wxDefaultSize},\rtfsp
-\param{long}{ style = 0}, \param{const wxValidator\& }{validator}, \param{const wxString\& }{name = ``text"}}
+\param{const wxString\& }{value = ``"}, \param{const wxPoint\& }{pos = wxDefaultPosition}, \param{const wxSize\& }{size = wxDefaultSize},\rtfsp
+\param{long}{ style = 0}, \param{const wxValidator\& }{validator = wxDefaultValidator}, \param{const wxString\& }{name = wxTextCtrlNameStr}}
Constructor, creating and showing a text control.
\wxheading{Remarks}
-The horizontal scrollbar ({\bf wxTE\_HSCROLL} style flag) will only be created for multi-line text controls.
+The horizontal scrollbar ({\bf wxHSCROLL} style flag) will only be created
+for multi-line text controls.
Without a horizontal scrollbar, text lines that don't fit in the control's
size will be wrapped (but no newline character is inserted). Single line
controls don't have a horizontal scrollbar, the text is automatically scrolled
\membersection{wxTextCtrl::Create}\label{wxtextctrlcreate}
\func{bool}{Create}{\param{wxWindow* }{parent}, \param{wxWindowID}{ id},\rtfsp
-\param{const wxString\& }{value = ``"}, \param{const wxPoint\& }{pos}, \param{const wxSize\& }{size = wxDefaultSize},\rtfsp
-\param{long}{ style = 0}, \param{const wxValidator\& }{validator}, \param{const wxString\& }{name = ``text"}}
+\param{const wxString\& }{value = ``"}, \param{const wxPoint\& }{pos = wxDefaultPosition}, \param{const wxSize\& }{size = wxDefaultSize},\rtfsp
+\param{long}{ style = 0}, \param{const wxValidator\& }{validator = wxDefaultValidator}, \param{const wxString\& }{name = wxTextCtrlNameStr}}
Creates the text control for two-step construction. Derived classes
should call or replace this function. See \helpref{wxTextCtrl::wxTextCtrl}{wxtextctrlconstr}\rtfsp
Resets the internal `modified' flag as if the current edits had been saved.
+\membersection{wxTextCtrl::EmulateKeyPress}
+
+\func{bool}{EmulateKeyPress}{\param{const wxKeyEvent\& }{event}}
+
+This functions inserts into the control the character which would have been
+inserted if the given key event had occured in the text control. The
+{\it event} object should be the same as the one passed to {\tt EVT\_KEY\_DOWN}
+handler previously by wxWindows.
+
+\wxheading{Return value}
+
+{\tt TRUE} if the event resulted in a change to the control, {\tt FALSE}
+otherwise.
+
\membersection{wxTextCtrl::GetDefaultStyle}\label{wxtextctrlgetdefaultstyle}
\constfunc{const wxTextAttr\& }{GetDefaultStyle}{\void}
may wish to avoid using functions that work with line numbers if you are
working with controls that contain large amounts of text.
+\membersection{wxTextCtrl::GetRange}\label{wxtextctrlgetrange}
+
+\constfunc{virtual wxString}{GetRange}{\param{long}{ from}, \param{long}{ to}}
+
+Returns the string containing the text staring in the positions {\it from} and
+up to {\it to} in the control. The positions must have been returned by another
+wxTextCtrl method.
+
+Please note that the positions in a multiline wxTextCtrl do {\bf not}
+correspond to the indices in the string returned by
+\helpref{GetValue}{wxtextctrlgetvalue} because of the different new line
+representations ({\tt CR} or {\tt CR LF}) and so this method should be used to
+obtain the correct results instead of extracting parts of the entire value. It
+may also be more efficient, especially if the control contains a lot of data.
+
\membersection{wxTextCtrl::GetSelection}\label{wxtextctrlgetselection}
-\func{virtual void}{GetSelection}{\param{long*}{ from}, \param{long*}{ to}}
+\constfunc{virtual void}{GetSelection}{\param{long*}{ from}, \param{long*}{ to}}
Gets the current selection span. If the returned values are equal, there was
no selection.
the lines will be separated by (Unix-style) $\backslash$n characters, even under
Windows where they are separated by a $\backslash$r$\backslash$n sequence in the native control.
+\membersection{wxTextCtrl::IsEditable}\label{wxtextctrliseditable}
+
+\constfunc{bool}{IsEditable}{\void}
+
+Returns {\tt TRUE} if the controls contents may be edited by user (note that it
+always can be changed by the program), i.e. if the control hasn't been put in
+read-only mode by a previous call to
+\helpref{SetEditable}{wxtextctrlseteditable}.
+
\membersection{wxTextCtrl::IsModified}\label{wxtextctrlismodified}
\constfunc{bool}{IsModified}{\void}
Returns {\tt TRUE} if the text has been modified by user. Note that calling
\helpref{SetValue}{wxtextctrlsetvalue} doesn't make the control modified.
+\membersection{wxTextCtrl::IsMultiLine}\label{wxtextctrlismultiline}
+
+\constfunc{bool}{IsMultiLine}{\void}
+
+Returns {\tt TRUE} if this is a multi line edit control and {\tt FALSE}
+otherwise.
+
+\wxheading{See also}
+
+\helpref{IsSingleLine}{wxtextctrlissingleline}
+
+\membersection{wxTextCtrl::IsSingleLine}\label{wxtextctrlissingleline}
+
+\constfunc{bool}{IsSingleLine}{\void}
+
+Returns {\tt TRUE} if this is a single line edit control and {\tt FALSE}
+otherwise.
+
+\wxheading{See also}
+
+\helpref{IsMultiLine}{wxtextctrlissingleline}
+
\membersection{wxTextCtrl::LoadFile}\label{wxtextctrlloadfile}
\func{bool}{LoadFile}{\param{const wxString\& }{ filename}}
{\tt TRUE} if successful, {\tt FALSE} otherwise.
-\membersection{wxTextCtrl::OnChar}\label{wxtextctrlonchar}
-
-\func{void}{OnChar}{\param{wxKeyEvent\& }{event}}
-
-Default handler for character input.
-
-\wxheading{Remarks}
-
-It is possible to intercept character
-input by overriding this member. Call this function
-to let the default behaviour take place; not calling
-it results in the character being ignored. You can
-replace the {\it keyCode} member of {\it event} to
-translate keystrokes.
-
-Note that Windows and Motif have different ways
-of implementing the default behaviour. In Windows,
-calling wxTextCtrl::OnChar immediately
-processes the character. In Motif,
-calling this function simply sets a flag
-to let default processing happen. This might affect
-the way in which you write your OnChar function
-on different platforms.
-
-\wxheading{See also}
-
-\helpref{wxKeyEvent}{wxkeyevent}
+% VZ: commenting this out as: (a) the docs are wrong (you can't replace
+% anything), (b) wxTextCtrl doesn't have any OnChar() anyhow
+%% \membersection{wxTextCtrl::OnChar}\label{wxtextctrlonchar}
+%%
+%% \func{void}{OnChar}{\param{wxKeyEvent\& }{event}}
+%%
+%% Default handler for character input.
+%%
+%% \wxheading{Remarks}
+%%
+%% It is possible to intercept character
+%% input by overriding this member. Call this function
+%% to let the default behaviour take place; not calling
+%% it results in the character being ignored. You can
+%% replace the {\it keyCode} member of {\it event} to
+%% translate keystrokes.
+%%
+%% Note that Windows and Motif have different ways
+%% of implementing the default behaviour. In Windows,
+%% calling wxTextCtrl::OnChar immediately
+%% processes the character. In Motif,
+%% calling this function simply sets a flag
+%% to let default processing happen. This might affect
+%% the way in which you write your OnChar function
+%% on different platforms.
+%%
+%% \wxheading{See also}
+%%
+%% \helpref{wxKeyEvent}{wxkeyevent}
\membersection{wxTextCtrl::OnDropFiles}\label{wxtextctrlondropfiles}
\docparam{editable}{If {\tt TRUE}, the control is editable. If {\tt FALSE}, the control is read-only.}
+\wxheading{See also}
+
+\helpref{IsEditable}{wxtextctrliseditable}
+
\membersection{wxTextCtrl::SetInsertionPoint}\label{wxtextctrlsetinsertionpoint}
\func{virtual void}{SetInsertionPoint}{\param{long}{ pos}}
control. In other words, it allows to limit the text value length to {\it len}
not counting the terminating {\tt NUL} character.
-If {\it len} is $0$, the previously set max length limi, if any, is discarded
+If {\it len} is $0$, the previously set max length limit, if any, is discarded
and the user may enter as much text as the underlying native text control
widget supports (typically at least 32Kb).