wxWidgets: wxTextCtrl Class Reference

| Version: 3.1.5

Loading...
Searching...
No Matches
Public Member Functions | List of all members
wxTextCtrl Class Reference
Class List by Category » Controls

`#include </cygdrive/c/Users/Hamis/Cygwin-packaging/wxWidgets3.1/wxWidgets3.1-3.1.5-4.x86_64/src/wxWidgets-3.1.5/interface/wx/textctrl.h>`

Inheritance diagram for wxTextCtrl:
[legend]

## Detailed Description

A text control allows text to be displayed and edited.

It may be single line or multi-line. Notice that a lot of methods of the text controls are found in the base wxTextEntry class which is a common base class for wxTextCtrl and other controls using a single line text entry field (e.g. wxComboBox).

## Styles

This class supports the following styles:

- wxTE_PROCESS_ENTER:
  The control will generate the event `wxEVT_TEXT_ENTER` that can be handled by the program. Otherwise, i.e. either if this style not specified at all, or it is used, but there is no event handler for this event or the event handler called wxEvent::Skip() to avoid overriding the default handling, pressing Enter key is either processed internally by the control or used to activate the default button of the dialog, if any.
- wxTE_PROCESS_TAB:
  Normally, TAB key is used for keyboard navigation and pressing it in a control switches focus to the next one. With this style, this won't happen and if the TAB is not otherwise processed (e.g. by `wxEVT_CHAR` event handler), a literal TAB character is inserted into the control. Notice that this style has no effect for single-line text controls when using wxGTK.
- wxTE_MULTILINE:
  The text control allows multiple lines. If this style is not specified, line break characters should not be used in the controls value.
- wxTE_PASSWORD:
  The text will be echoed as asterisks.
- wxTE_READONLY:
  The text will not be user-editable.
- wxTE_RICH:
  Use rich text control under MSW, this allows having more than 64KB of text in the control. This style is ignored under other platforms.
- wxTE_RICH2:
  Use rich text control version 2.0 or higher under MSW, this style is ignored under other platforms
- wxTE_AUTO_URL:
  Highlight the URLs and generate the wxTextUrlEvents when mouse events occur over them.
- wxTE_NOHIDESEL:
  By default, the Windows text control 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.
- wxHSCROLL:
  A horizontal scrollbar will be created and used, so that text won't be wrapped. No effect under wxGTK1.
- wxTE_NO_VSCROLL:
  For multiline controls only: vertical scrollbar will never be created. This limits the amount of text which can be entered into the control to what can be displayed in it under wxMSW but not under wxGTK or wxOSX. Currently not implemented for the other platforms.
- wxTE_LEFT:
  The text in the control will be left-justified (default).
- wxTE_CENTRE:
  The text in the control will be centered (wxMSW, wxGTK, wxOSX).
- wxTE_RIGHT:
  The text in the control will be right-justified (wxMSW, wxGTK, wxOSX).
- wxTE_DONTWRAP:
  Same as wxHSCROLL style: don't wrap at all, show horizontal scrollbar instead.
- wxTE_CHARWRAP:
  For multiline controls only: wrap the lines too long to be shown entirely at any position (wxUniv, wxGTK, wxOSX).
- wxTE_WORDWRAP:
  For multiline controls only: wrap the lines too long to be shown entirely at word boundaries (wxUniv, wxMSW, wxGTK, wxOSX).
- wxTE_BESTWRAP:
  For multiline controls only: wrap the lines at word boundaries or at any other character if there are words longer than the window width (this is the default).
- wxTE_CAPITALIZE:
  On PocketPC and Smartphone, causes the first letter to be capitalized.
  Note that alignment styles (wxTE_LEFT, wxTE_CENTRE and wxTE_RIGHT) can be changed dynamically after control creation on wxMSW, wxGTK and wxOSX. wxTE_READONLY, wxTE_PASSWORD and wrapping styles can be dynamically changed under wxGTK but not wxMSW. The other styles can be only set during control creation.

# wxTextCtrl Text Format

The multiline text controls always store the text as a sequence of lines separated by `'\n'` characters, i.e. in the Unix text format even on non-Unix platforms. This allows the user code to ignore the differences between the platforms but at a price: the indices in the control such as those returned by GetInsertionPoint() or GetSelection() can not be used as indices into the string returned by GetValue() as they're going to be slightly off for platforms using `"\\r\\n"` as separator (as Windows does).

Instead, if you need to obtain a substring between the 2 indices obtained from the control with the help of the functions mentioned above, you should use GetRange(). And the indices themselves can only be passed to other methods, for example SetInsertionPoint() or SetSelection().

To summarize: never use the indices returned by (multiline) wxTextCtrl as indices into the string it contains, but only as arguments to be passed back to the other wxTextCtrl methods. This problem doesn't arise for single-line platforms however where the indices in the control do correspond to the positions in the value string.

# wxTextCtrl Positions and Coordinates

It is possible to use either linear positions, i.e. roughly (but not always exactly, as explained in the previous section) the index of the character in the text contained in the control or X-Y coordinates, i.e. column and line of the character when working with this class and it provides the functions PositionToXY() and XYToPosition() to convert between the two.

Additionally, a position in the control can be converted to its coordinates in pixels using PositionToCoords() which can be useful to e.g. show a popup menu near the given character. And, in the other direction, HitTest() can be used to find the character under, or near, the given pixel coordinates.

To be more precise, positions actually refer to the gaps between characters and not the characters themselves. Thus, position 0 is the one before the very first character in the control and so is a valid position even when the control is empty. And if the control contains a single character, it has two valid positions: 0 before this character and 1 – after it. This, when the documentation of various functions mentions "invalid position", it doesn't consider the position just after the last character of the line to be invalid, only the positions beyond that one (e.g. 2 and greater in the single character example) are actually invalid.

# wxTextCtrl Styles.

Multi-line text controls support styling, i.e. provide a possibility to set colours and font for individual characters in it (note that under Windows `wxTE_RICH` style is required for style support). To use the styles you can either call SetDefaultStyle() before inserting the text or call SetStyle() later to change the style of the text already in the control (the first solution is much more efficient).

In either case, if the style doesn't specify some of the attributes (for example you only want to set the text colour but without changing the font nor the text background), the values of the default style will be used for them. If there is no default style, the attributes of the text control itself are used.

So the following code correctly describes what it does: the second call to SetDefaultStyle() doesn't change the text foreground colour (which stays red) while the last one doesn't change the background colour (which stays grey):

text->SetDefaultStyle(wxTextAttr(*wxRED));
text->AppendText("Red text\n");
text->SetDefaultStyle(wxTextAttr(wxNullColour, *wxLIGHT_GREY));
text->AppendText("Red on grey text\n");
text->SetDefaultStyle(wxTextAttr(*wxBLUE);
text->AppendText("Blue on grey text\n");
wxTextAttr
wxTextAttr represents the character and paragraph attributes, or style, for a range of text in a wxTe...
Definition textctrl.h:279
wxBLUE
wxColour * wxBLUE
Converts string to a wxColour best represented by the given string.
Definition colour.h:313
wxRED
wxColour * wxRED
Converts string to a wxColour best represented by the given string.
Definition colour.h:318
wxLIGHT_GREY
wxColour * wxLIGHT_GREY
Converts string to a wxColour best represented by the given string.
Definition colour.h:317
wxNullColour
wxColour wxNullColour
Converts string to a wxColour best represented by the given string.
Definition colour.h:310

# wxTextCtrl and C++ Streams

This class multiply-inherits from `std::streambuf` (except for some really old compilers using non-standard iostream library), allowing code such as the following:

wxTextCtrl *control = new wxTextCtrl(...);
ostream stream(control)
stream << 123.456 << " some text\n";
stream.flush();
wxTextCtrl::wxTextCtrl
wxTextCtrl()
Default ctor.

Note that even if your build of wxWidgets doesn't support this (the symbol `wxHAS_TEXT_WINDOW_STREAM` has value of 0 then) you can still use wxTextCtrl itself in a stream-like manner:

wxTextCtrl *control = new wxTextCtrl(...);
*control << 123.456 << " some text\n";

However the possibility to create a `std::ostream` associated with wxTextCtrl may be useful if you need to redirect the output of a function taking a `std::ostream` as parameter to a text control.

Another commonly requested need is to redirect `std::cout` to the text control. This may be done in the following way:

#include <iostream>
wxTextCtrl *control = new wxTextCtrl(...);
std::streambuf *sbOld = std::cout.rdbuf();
std::cout.rdbuf(control);
// use cout as usual, the output appears in the text control
...
std::cout.rdbuf(sbOld);

But wxWidgets provides a convenient class to make it even simpler so instead you may just do

#include <iostream>
wxTextCtrl *control = new wxTextCtrl(...);
wxStreamToTextRedirector redirect(control);
// all output to cout goes into the text control until the exit from
// current scope
wxStreamToTextRedirector
This class can be used to (temporarily) redirect all output sent to a C++ ostream object to a wxTextC...
Definition textctrl.h:1725

See wxStreamToTextRedirector for more details.

# Event Handling.

The following commands are processed by default event handlers in wxTextCtrl: `wxID_CUT`, `wxID_COPY`, `wxID_PASTE`, `wxID_UNDO`, `wxID_REDO`. The associated UI update events are also processed automatically, when the control has the focus.

## Events emitted by this class

The following event handler macros redirect the events to member function handlers 'func' with prototypes like:

void handlerFuncName(wxCommandEvent& event)

Event macros for events emitted by this class:

- EVT_TEXT(id, func):
  Respond to a `wxEVT_TEXT` event, generated when the text changes. Notice that this event will be sent when the text controls contents changes – whether this is due to user input or comes from the program itself (for example, if wxTextCtrl::SetValue() is called); see wxTextCtrl::ChangeValue() for a function which does not send this event. This event is however not sent during the control creation.
- EVT_TEXT_ENTER(id, func):
  Respond to a `wxEVT_TEXT_ENTER` event, generated when enter is pressed in a text control which must have wxTE_PROCESS_ENTER style for this event to be generated.
- EVT_TEXT_URL(id, func):
  A mouse event occurred over an URL in the text control.
- EVT_TEXT_MAXLEN(id, func):
  This event is generated when the user tries to enter more text into the control than the limit set by wxTextCtrl::SetMaxLength(), see its description.

  ##

Library: wxCore

<>< =''>:</>&;&;< =''>\ </></>

Appearance:

wxMSW Appearance | wxGTK Appearance | wxOSX Appearance

See also
  wxTextCtrl::Create, wxValidator

## Public Member Functions
| wxTextCtrl ()
| Default ctor.
| wxTextCtrl (wxWindow *parent, wxWindowID id, const wxString &value=wxEmptyString, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=0, const wxValidator &validator=wxDefaultValidator, const wxString &name=wxTextCtrlNameStr)
| Constructor, creating and showing a text control.
virtual | ~wxTextCtrl ()
| Destructor, destroying the text control.
bool | Create (wxWindow *parent, wxWindowID id, const wxString &value=wxEmptyString, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=0, const wxValidator &validator=wxDefaultValidator, const wxString &name=wxTextCtrlNameStr)
| Creates the text control for two-step construction.
virtual void | DiscardEdits ()
| Resets the internal modified flag as if the current changes had been saved.
virtual bool | EmulateKeyPress (const wxKeyEvent &event)
| This function inserts into the control the character which would have been inserted if the given key event had occurred in the text control.
virtual const wxTextAttr & | GetDefaultStyle () const
| Returns the style currently used for the new text.
virtual int | GetLineLength (long lineNo) const
| Gets the length of the specified line, not including any trailing newline character(s).
virtual wxString | GetLineText (long lineNo) const
| Returns the contents of a given line in the text control, not including any trailing newline character(s).
virtual int | GetNumberOfLines () const
| Returns the number of lines in the text control buffer.
virtual bool | GetStyle (long position, wxTextAttr &style)
| Returns the style at this position in the text control.
wxTextCtrlHitTestResult | HitTest (const wxPoint &pt, long *pos) const
| Finds the position of the character at the specified point.
wxTextCtrlHitTestResult | HitTest (const wxPoint &pt, wxTextCoord *col, wxTextCoord *row) const
| Finds the row and column of the character at the specified point.
virtual bool | IsModified () const
| Returns true if the text has been modified by user.
bool | IsMultiLine () const
| Returns true if this is a multi line edit control and false otherwise.
bool | IsSingleLine () const
| Returns true if this is a single line edit control and false otherwise.
bool | LoadFile (const wxString &filename, int fileType=wxTEXT_TYPE_ANY)
| Loads and displays the named file, if it exists.
virtual void | MarkDirty ()
| Mark text as modified (dirty).
void | OnDropFiles (wxDropFilesEvent &event)
| This event handler function implements default drag and drop behaviour, which is to load the first dropped file into the control.
virtual bool | PositionToXY (long pos, long *x, long *y) const
| Converts given position to a zero-based column, line number pair.
wxPoint | PositionToCoords (long pos) const
| Converts given text position to client coordinates in pixels.
bool | SaveFile (const wxString &filename=wxEmptyString, int fileType=wxTEXT_TYPE_ANY)
| Saves the contents of the control in a text file.
virtual bool | SetDefaultStyle (const wxTextAttr &style)
| Changes the default style to use for the new text which is going to be added to the control.
void | SetModified (bool modified)
| Marks the control as being modified by the user or not.
virtual bool | SetStyle (long start, long end, const wxTextAttr &style)
| Changes the style of the given range.
virtual void | ShowPosition (long pos)
| Makes the line containing the given position visible.
virtual long | XYToPosition (long x, long y) const
| Converts the given zero based column and line number to a position.
wxTextCtrl & | operator<< (const wxString &s)
| Operator definitions for appending to a text control.
wxTextCtrl & | operator<< (int i)
wxTextCtrl & | operator<< (long i)
wxTextCtrl & | operator<< (float f)
wxTextCtrl & | operator<< (double d)
wxTextCtrl & | operator<< (char c)
wxTextCtrl & | operator<< (wchar_t c)
Public Member Functions inherited from wxControl
| wxControl (wxWindow *parent, wxWindowID id, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=0, const wxValidator &validator=wxDefaultValidator, const wxString &name=wxControlNameStr)
| Constructs a control.
| wxControl ()
| Default constructor to allow 2-phase creation.
bool | Create (wxWindow *parent, wxWindowID id, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=0, const wxValidator &validator=wxDefaultValidator, const wxString &name=wxControlNameStr)
virtual void | Command (wxCommandEvent &event)
| Simulates the effect of the user issuing a command to the item.
wxString | GetLabel () const
| Returns the control's label, as it was passed to SetLabel().
wxString | GetLabelText () const
| Returns the control's label without mnemonics.
wxSize | GetSizeFromTextSize (int xlen, int ylen=-1) const
| Determine the size needed by the control to leave the given area for its text.
wxSize | GetSizeFromTextSize (const wxSize &tsize) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
wxSize | GetSizeFromText (const wxString &text) const
| Determine the minimum size needed by the control to display the given text.
void | SetLabel (const wxString &label)
| Sets the control's label.
void | SetLabelText (const wxString &text)
| Sets the control's label to exactly the given string.
bool | SetLabelMarkup (const wxString &markup)
| Sets the controls label to a string using markup.
Public Member Functions inherited from wxWindow
| wxWindow ()
| Default constructor.
| wxWindow (wxWindow *parent, wxWindowID id, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=0, const wxString &name=wxPanelNameStr)
| Constructs a window, which can be a child of a frame, dialog or any other non-control window.
virtual | ~wxWindow ()
| Destructor.
bool | Create (wxWindow *parent, wxWindowID id, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=0, const wxString &name=wxPanelNameStr)
| Construct the actual window object after creating the C++ object.
virtual bool | AcceptsFocus () const
| This method may be overridden in the derived classes to return false to indicate that this control doesn't accept input at all (i.e. behaves like e.g. wxStaticText) and so doesn't need focus.
virtual bool | AcceptsFocusFromKeyboard () const
| This method may be overridden in the derived classes to return false to indicate that while this control can, in principle, have focus if the user clicks it with the mouse, it shouldn't be included in the TAB traversal chain when using the keyboard.
virtual bool | AcceptsFocusRecursively () const
| Overridden to indicate whether this window or one of its children accepts focus.
void | DisableFocusFromKeyboard ()
| Disable giving focus to this window using the keyboard navigation keys.
bool | IsFocusable () const
| Can this window itself have focus?
bool | CanAcceptFocus () const
| Can this window have focus right now?
bool | CanAcceptFocusFromKeyboard () const
| Can this window be assigned focus from keyboard right now?
virtual bool | HasFocus () const
| Returns true if the window (or in case of composite controls, its main child window) has focus.
virtual void | SetCanFocus (bool canFocus)
| This method is only implemented by ports which have support for native TAB traversal (such as GTK+ 2.0).
virtual void | EnableVisibleFocus (bool enable)
| Enables or disables visible indication of keyboard focus.
virtual void | SetFocus ()
| This sets the window to receive keyboard input.
virtual void | SetFocusFromKbd ()
| This function is called by wxWidgets keyboard navigation code when the user gives the focus to this window from keyboard (e.g. using `TAB` key).
virtual void | AddChild (wxWindow *child)
| Adds a child window.
bool | DestroyChildren ()
| Destroys all children of a window.
wxWindow * | FindWindow (long id) const
| Find a child of this window, by id.
wxWindow * | FindWindow (const wxString &name) const
| Find a child of this window, by name.
wxWindowList & | GetChildren ()
| Returns a reference to the list of the window's children.
const wxWindowList & | GetChildren () const
| Returns a const reference to the list of the window's children.
virtual void | RemoveChild (wxWindow *child)
| Removes a child window.
wxWindow * | GetGrandParent () const
| Returns the grandparent of a window, or NULL if there isn't one.
wxWindow * | GetNextSibling () const
| Returns the next window after this one among the parent's children or NULL if this window is the last child.
wxWindow * | GetParent () const
| Returns the parent of the window, or NULL if there is no parent.
wxWindow * | GetPrevSibling () const
| Returns the previous window before this one among the parent's children or `NULL` if this window is the first child.
bool | IsDescendant (wxWindow *win) const
| Check if the specified window is a descendant of this one.
virtual bool | Reparent (wxWindow *newParent)
| Reparents the window, i.e. the window will be removed from its current parent window (e.g.
virtual void | AlwaysShowScrollbars (bool hflag=true, bool vflag=true)
| Call this function to force one or both scrollbars to be always shown, even if the window is big enough to show its entire contents without scrolling.
virtual int | GetScrollPos (int orientation) const
| Returns the built-in scrollbar position.
virtual int | GetScrollRange (int orientation) const
| Returns the built-in scrollbar range.
virtual int | GetScrollThumb (int orientation) const
| Returns the built-in scrollbar thumb size.
bool | CanScroll (int orient) const
| Returns true if this window can have a scroll bar in this orientation.
bool | HasScrollbar (int orient) const
| Returns true if this window currently has a scroll bar for this orientation.
virtual bool | IsScrollbarAlwaysShown (int orient) const
| Return whether a scrollbar is always shown.
virtual bool | ScrollLines (int lines)
| Scrolls the window by the given number of lines down (if lines is positive) or up.
virtual bool | ScrollPages (int pages)
| Scrolls the window by the given number of pages down (if pages is positive) or up.
virtual void | ScrollWindow (int dx, int dy, const wxRect *rect=NULL)
| Physically scrolls the pixels in the window and move child windows accordingly.
bool | LineUp ()
| Same as ScrollLines (-1).
bool | LineDown ()
| Same as ScrollLines (1).
bool | PageUp ()
| Same as ScrollPages (-1).
bool | PageDown ()
| Same as ScrollPages (1).
virtual void | SetScrollPos (int orientation, int pos, bool refresh=true)
| Sets the position of one of the built-in scrollbars.
virtual void | SetScrollbar (int orientation, int position, int thumbSize, int range, bool refresh=true)
| Sets the scrollbar properties of a built-in scrollbar.
void | Center (int dir=wxBOTH)
| A synonym for Centre().
void | CenterOnParent (int dir=wxBOTH)
| A synonym for CentreOnParent().
void | Centre (int direction=wxBOTH)
| Centres the window.
void | CentreOnParent (int direction=wxBOTH)
| Centres the window on its parent.
void | GetPosition (int *x, int *y) const
| This gets the position of the window in pixels, relative to the parent window for the child windows or relative to the display origin for the top level windows.
wxPoint | GetPosition () const
| This gets the position of the window in pixels, relative to the parent window for the child windows or relative to the display origin for the top level windows.
wxRect | GetRect () const
| Returns the position and size of the window as a wxRect object.
void | GetScreenPosition (int *x, int *y) const
| Returns the window position in screen coordinates, whether the window is a child window or a top level one.
wxPoint | GetScreenPosition () const
| Returns the window position in screen coordinates, whether the window is a child window or a top level one.
wxRect | GetScreenRect () const
| Returns the position and size of the window on the screen as a wxRect object.
virtual wxPoint | GetClientAreaOrigin () const
| Get the origin of the client area of the window relative to the window top left corner (the client area may be shifted because of the borders, scrollbars, other decorations...).
wxRect | GetClientRect () const
| Get the client rectangle in window (i.e. client) coordinates.
void | Move (int x, int y, int flags=wxSIZE_USE_EXISTING)
| Moves the window to the given position.
void | Move (const wxPoint &pt, int flags=wxSIZE_USE_EXISTING)
| Moves the window to the given position.
void | SetPosition (const wxPoint &pt)
| Moves the window to the specified position.
void | ClientToScreen (int *x, int *y) const
| Converts to screen coordinates from coordinates relative to this window.
wxPoint | ClientToScreen (const wxPoint &pt) const
| Converts to screen coordinates from coordinates relative to this window.
wxPoint | ConvertDialogToPixels (const wxPoint &pt) const
| Converts a point or size from dialog units to pixels.
wxSize | ConvertDialogToPixels (const wxSize &sz) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
wxPoint | ConvertPixelsToDialog (const wxPoint &pt) const
| Converts a point or size from pixels to dialog units.
wxSize | ConvertPixelsToDialog (const wxSize &sz) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void | ScreenToClient (int *x, int *y) const
| Converts from screen to client window coordinates.
wxPoint | ScreenToClient (const wxPoint &pt) const
| Converts from screen to client window coordinates.
virtual void | ClearBackground ()
| Clears the window by filling it with the current background colour.
void | Freeze ()
| Freezes the window or, in other words, prevents any updates from taking place on screen, the window is not redrawn at all.
void | Thaw ()
| Re-enables window updating after a previous call to Freeze().
bool | IsFrozen () const
| Returns true if the window is currently frozen by a call to Freeze().
wxColour | GetBackgroundColour () const
| Returns the background colour of the window.
virtual wxBackgroundStyle | GetBackgroundStyle () const
| Returns the background style of the window.
virtual int | GetCharHeight () const
| Returns the character height for this window.
virtual int | GetCharWidth () const
| Returns the average character width for this window.
virtual wxVisualAttributes | GetDefaultAttributes () const
| Currently this is the same as calling wxWindow::GetClassDefaultAttributes(wxWindow::GetWindowVariant()).
virtual wxSize | GetDPI () const
| Return the DPI of the display used by this window.
wxFont | GetFont () const
| Returns the font for this window.
wxColour | GetForegroundColour () const
| Returns the foreground colour of the window.
void | GetTextExtent (const wxString &string, int *w, int *h, int *descent=NULL, int *externalLeading=NULL, const wxFont *font=NULL) const
| Gets the dimensions of the string as it would be drawn on the window with the currently selected font.
wxSize | GetTextExtent (const wxString &string) const
| Gets the dimensions of the string as it would be drawn on the window with the currently selected font.
const wxRegion & | GetUpdateRegion () const
| Returns the region specifying which parts of the window have been damaged.
wxRect | GetUpdateClientRect () const
| Get the update rectangle bounding box in client coords.
virtual bool | HasTransparentBackground ()
| Returns true if this window background is transparent (as, for example, for wxStaticText) and should show the parent window background.
virtual void | Refresh (bool eraseBackground=true, const wxRect *rect=NULL)
| Causes this window, and all of its children recursively (except under wxGTK1 where this is not implemented), to be repainted.
void | RefreshRect (const wxRect &rect, bool eraseBackground=true)
| Redraws the contents of the given rectangle: only the area inside it will be repainted.
virtual void | Update ()
| Calling this method immediately repaints the invalidated area of the window and all of its children recursively (this normally only happens when the flow of control returns to the event loop).
virtual bool | SetBackgroundColour (const wxColour &colour)
| Sets the background colour of the window.
virtual bool | SetBackgroundStyle (wxBackgroundStyle style)
| Sets the background style of the window.
virtual bool | IsTransparentBackgroundSupported (wxString *reason=NULL) const
| Checks whether using transparent background might work.
virtual bool | SetFont (const wxFont &font)
| Sets the font for this window.
virtual bool | SetForegroundColour (const wxColour &colour)
| Sets the foreground colour of the window.
void | SetOwnBackgroundColour (const wxColour &colour)
| Sets the background colour of the window but prevents it from being inherited by the children of this window.
bool | InheritsBackgroundColour () const
| Return true if this window inherits the background colour from its parent.
bool | UseBgCol () const
| Return true if a background colour has been set for this window.
bool | UseBackgroundColour () const
| Return true if a background colour has been set for this window.
void | SetOwnFont (const wxFont &font)
| Sets the font of the window but prevents it from being inherited by the children of this window.
void | SetOwnForegroundColour (const wxColour &colour)
| Sets the foreground colour of the window but prevents it from being inherited by the children of this window.
bool | UseForegroundColour () const
| Return true if a foreground colour has been set for this window.
bool | InheritsForegroundColour () const
| Return true if this window inherits the foreground colour from its parent.
void | SetPalette (const wxPalette &pal)
virtual bool | ShouldInheritColours () const
| Return true from here to allow the colours of this window to be changed by InheritAttributes().
virtual void | SetThemeEnabled (bool enable)
| This function tells a window if it should use the system's "theme" code to draw the windows' background instead of its own background drawing code.
virtual bool | GetThemeEnabled () const
| Returns true if the window uses the system theme for drawing its background.
virtual bool | CanSetTransparent ()
| Returns true if the system supports transparent windows and calling SetTransparent() may succeed.
virtual bool | SetTransparent (wxByte alpha)
| Set the transparency of the window.
wxEvtHandler * | GetEventHandler () const
| Returns the event handler for this window.
bool | HandleAsNavigationKey (const wxKeyEvent &event)
| This function will generate the appropriate call to Navigate() if the key event is one normally used for keyboard navigation and return true in this case.
bool | HandleWindowEvent (wxEvent &event) const
| Shorthand for:
bool | ProcessWindowEvent (wxEvent &event)
| Convenient wrapper for ProcessEvent().
bool | ProcessWindowEventLocally (wxEvent &event)
| Wrapper for wxEvtHandler::ProcessEventLocally().
wxEvtHandler * | PopEventHandler (bool deleteHandler=false)
| Removes and returns the top-most event handler on the event handler stack.
void | PushEventHandler (wxEvtHandler *handler)
| Pushes this event handler onto the event stack for the window.
bool | RemoveEventHandler (wxEvtHandler *handler)
| Find the given handler in the windows event handler stack and removes (but does not delete) it from the stack.
void | SetEventHandler (wxEvtHandler *handler)
| Sets the event handler for this window.
virtual void | SetNextHandler (wxEvtHandler *handler)
| wxWindows cannot be used to form event handler chains; this function thus will assert when called.
virtual void | SetPreviousHandler (wxEvtHandler *handler)
| wxWindows cannot be used to form event handler chains; this function thus will assert when called.
long | GetExtraStyle () const
| Returns the extra style bits for the window.
virtual long | GetWindowStyleFlag () const
| Gets the window style that was passed to the constructor or Create() method.
long | GetWindowStyle () const
| See GetWindowStyleFlag() for more info.
bool | HasExtraStyle (int exFlag) const
| Returns true if the window has the given exFlag bit set in its extra styles.
bool | HasFlag (int flag) const
| Returns true if the window has the given flag bit set.
virtual void | SetExtraStyle (long exStyle)
| Sets the extra style bits for the window.
virtual void | SetWindowStyleFlag (long style)
| Sets the style of the window.
void | SetWindowStyle (long style)
| See SetWindowStyleFlag() for more info.
bool | ToggleWindowStyle (int flag)
| Turns the given flag on if it's currently turned off and vice versa.
void | MoveAfterInTabOrder (wxWindow *win)
| Moves this window in the tab navigation order after the specified win.
void | MoveBeforeInTabOrder (wxWindow *win)
| Same as MoveAfterInTabOrder() except that it inserts this window just before win instead of putting it right after it.
bool | Navigate (int flags=wxNavigationKeyEvent::IsForward)
| Performs a keyboard navigation action starting from this window.
bool | NavigateIn (int flags=wxNavigationKeyEvent::IsForward)
| Performs a keyboard navigation action inside this window.
virtual void | Lower ()
| Lowers the window to the bottom of the window hierarchy (Z-order).
virtual void | Raise ()
| Raises the window to the top of the window hierarchy (Z-order).
bool | Hide ()
| Equivalent to calling wxWindow::Show(false).
virtual bool | HideWithEffect (wxShowEffect effect, unsigned int timeout=0)
| This function hides a window, like Hide(), but using a special visual effect if possible.
bool | IsEnabled () const
| Returns true if the window is enabled, i.e. if it accepts user input, false otherwise.
bool | IsExposed (int x, int y) const
| Returns true if the given point or rectangle area has been exposed since the last repaint.
bool | IsExposed (wxPoint &pt) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
bool | IsExposed (int x, int y, int w, int h) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
bool | IsExposed (wxRect &rect) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
virtual bool | IsShown () const
| Returns true if the window is shown, false if it has been hidden.
virtual bool | IsShownOnScreen () const
| Returns true if the window is physically visible on the screen, i.e. it is shown and all its parents up to the toplevel window are shown as well.
bool | Disable ()
| Disables the window.
virtual bool | Enable (bool enable=true)
| Enable or disable the window for user input.
virtual bool | Show (bool show=true)
| Shows or hides the window.
virtual bool | ShowWithEffect (wxShowEffect effect, unsigned int timeout=0)
| This function shows a window, like Show(), but using a special visual effect if possible.
wxString | GetHelpText () const
| Gets the help text to be used as context-sensitive help for this window.
void | SetHelpText (const wxString &helpText)
| Sets the help text to be used as context-sensitive help for this window.
virtual wxString | GetHelpTextAtPoint (const wxPoint &point, wxHelpEvent::Origin origin) const
| Gets the help text to be used as context-sensitive help for this window.
wxToolTip * | GetToolTip () const
| Get the associated tooltip or NULL if none.
wxString | GetToolTipText () const
| Get the text of the associated tooltip or empty string if none.
void | SetToolTip (const wxString &tipString)
| Attach a tooltip to the window.
void | SetToolTip (wxToolTip *tip)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void | UnsetToolTip ()
| Unset any existing tooltip.
int | GetPopupMenuSelectionFromUser (wxMenu &menu, const wxPoint &pos=wxDefaultPosition)
| This function shows a popup menu at the given position in this window and returns the selected id.
int | GetPopupMenuSelectionFromUser (wxMenu &menu, int x, int y)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
bool | PopupMenu (wxMenu *menu, const wxPoint &pos=wxDefaultPosition)
| Pops up the given menu at the specified coordinates, relative to this window, and returns control when the user has dismissed the menu.
bool | PopupMenu (wxMenu *menu, int x, int y)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
virtual wxValidator * | GetValidator ()
| Validator functions.
virtual void | SetValidator (const wxValidator &validator)
| Deletes the current validator (if any) and sets the window validator, having called wxValidator::Clone to create a new validator of this type.
virtual bool | TransferDataFromWindow ()
| Transfers values from child controls to data areas specified by their validators.
virtual bool | TransferDataToWindow ()
| Transfers values to child controls from data areas specified by their validators.
virtual bool | Validate ()
| Validates the current values of the child controls using their validators.
wxWindowID | GetId () const
| Returns the identifier of the window.
virtual wxLayoutDirection | GetLayoutDirection () const
| Returns the layout direction for this window, Note that `wxLayout_Default` is returned if layout direction is not supported.
virtual wxCoord | AdjustForLayoutDirection (wxCoord x, wxCoord width, wxCoord widthTotal) const
| Mirror coordinates for RTL layout if this window uses it and if the mirroring is not done automatically like Win32.
virtual wxString | GetName () const
| Returns the window's name.
wxWindowVariant | GetWindowVariant () const
| Returns the value previously passed to SetWindowVariant().
void | SetId (wxWindowID winid)
| Sets the identifier of the window.
virtual void | SetLayoutDirection (wxLayoutDirection dir)
| Sets the layout direction for this window.
virtual void | SetName (const wxString &name)
| Sets the window's name.
void | SetWindowVariant (wxWindowVariant variant)
| Chooses a different variant of the window display to use.
wxAcceleratorTable * | GetAcceleratorTable ()
| Gets the accelerator table for this window.
wxAccessible * | GetAccessible ()
| Returns the accessible object for this window, if any.
virtual void | SetAcceleratorTable (const wxAcceleratorTable &accel)
| Sets the accelerator table for this window.
void | SetAccessible (wxAccessible *accessible)
| Sets the accessible for this window.
bool | Close (bool force=false)
| This function simply generates a wxCloseEvent whose handler usually tries to close the window.
virtual bool | Destroy ()
| Destroys the window safely.
bool | IsBeingDeleted () const
| Returns true if this window is in process of being destroyed.
virtual wxDropTarget * | GetDropTarget () const
| Returns the associated drop target, which may be NULL.
virtual void | SetDropTarget (wxDropTarget *target)
| Associates a drop target with this window.
virtual void | DragAcceptFiles (bool accept)
| Enables or disables eligibility for drop file events (OnDropFiles).
wxSizer * | GetContainingSizer () const
| Returns the sizer of which this window is a member, if any, otherwise NULL.
wxSizer * | GetSizer () const
| Returns the sizer associated with the window by a previous call to SetSizer(), or NULL.
void | SetSizer (wxSizer *sizer, bool deleteOld=true)
| Sets the window to have the given layout sizer.
void | SetSizerAndFit (wxSizer *sizer, bool deleteOld=true)
| Associate the sizer with the window and set the window size and minimal size accordingly.
wxLayoutConstraints * | GetConstraints () const
| Returns a pointer to the window's layout constraints, or NULL if there are none.
void | SetConstraints (wxLayoutConstraints *constraints)
| Sets the window to have the given layout constraints.
virtual bool | Layout ()
| Lays out the children of this window using the associated sizer.
void | SetAutoLayout (bool autoLayout)
| Determines whether the Layout() function will be called automatically when the window is resized.
bool | GetAutoLayout () const
| Returns true if Layout() is called automatically when the window is resized.
void | CaptureMouse ()
| Directs all mouse input to this window.
wxCaret * | GetCaret () const
| Returns the caret() associated with the window.
const wxCursor & | GetCursor () const
| Return the cursor associated with this window.
virtual bool | HasCapture () const
| Returns true if this window has the current mouse capture.
void | ReleaseMouse ()
| Releases mouse input captured with CaptureMouse().
void | SetCaret (wxCaret *caret)
| Sets the caret() associated with the window.
virtual bool | SetCursor (const wxCursor &cursor)
| Sets the window's cursor.
virtual void | WarpPointer (int x, int y)
| Moves the pointer to the given position on the window.
virtual bool | EnableTouchEvents (int eventsMask)
| Request generation of touch events for this window.
wxHitTest | HitTest (wxCoord x, wxCoord y) const
| Return where the given point lies, exactly.
wxHitTest | HitTest (const wxPoint &pt) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
wxBorder | GetBorder (long flags) const
| Get the window border style from the given flags: this is different from simply doing flags & wxBORDER_MASK because it uses GetDefaultBorder() to translate wxBORDER_DEFAULT to something reasonable.
wxBorder | GetBorder () const
| Get border for the flags of this window.
virtual void | DoUpdateWindowUI (wxUpdateUIEvent &event)
| Does the window-specific updating after processing the update event.
virtual WXWidget | GetHandle () const
| Returns the platform-specific handle of the physical window.
virtual bool | HasMultiplePages () const
| This method should be overridden to return true if this window has multiple pages.
virtual void | InheritAttributes ()
| This function is (or should be, in case of custom controls) called during window creation to intelligently set up the window visual attributes, that is the font and the foreground and background colours.
virtual void | InitDialog ()
| Sends an `wxEVT_INIT_DIALOG` event, whose handler usually transfers data to the dialog via validators.
virtual bool | IsDoubleBuffered () const
| Returns true if the window contents is double-buffered by the system, i.e. if any drawing done on the window is really done on a temporary backing surface and transferred to the screen all at once later.
void | SetDoubleBuffered (bool on)
| Turn on or off double buffering of the window if the system supports it.
virtual bool | IsRetained () const
| Returns true if the window is retained, false otherwise.
bool | IsThisEnabled () const
| Returns true if this window is intrinsically enabled, false otherwise, i.e. if Enable() Enable(false) had been called.
virtual bool | IsTopLevel () const
| Returns true if the given window is a top-level one.
virtual void | OnInternalIdle ()
| This virtual function is normally only used internally, but sometimes an application may need it to implement functionality that should not be disabled by an application defining an OnIdle handler in a derived class.
virtual bool | SendIdleEvents (wxIdleEvent &event)
| Send idle event to window and all subwindows.
virtual bool | RegisterHotKey (int hotkeyId, int modifiers, int virtualKeyCode)
| Registers a system wide hotkey.
virtual bool | UnregisterHotKey (int hotkeyId)
| Unregisters a system wide hotkey.
virtual void | UpdateWindowUI (long flags=wxUPDATE_UI_NONE)
| This function sends one or more wxUpdateUIEvent to the window.
bool | BeginRepositioningChildren ()
| Prepare for changing positions of multiple child windows.
void | EndRepositioningChildren ()
| Fix child window positions after setting all of them at once.
void | CacheBestSize (const wxSize &size) const
| Sets the cached best size value.
virtual wxSize | ClientToWindowSize (const wxSize &size) const
| Converts client area size size to corresponding window size.
virtual wxSize | WindowToClientSize (const wxSize &size) const
| Converts window size size to corresponding client area size In other words, the returned value is what would GetClientSize() return if this window had given window size.
virtual void | Fit ()
| Sizes the window to fit its best size.
virtual void | FitInside ()
| Similar to Fit(), but sizes the interior (virtual) size of a window.
wxSize | FromDIP (const wxSize &sz) const
| Convert DPI-independent pixel values to the value in pixels appropriate for the current toolkit.
wxPoint | FromDIP (const wxPoint &pt) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int | FromDIP (int d) const
| Convert DPI-independent distance in pixels to the value in pixels appropriate for the current toolkit.
wxSize | ToDIP (const wxSize &sz) const
| Convert pixel values of the current toolkit to DPI-independent pixel values.
wxPoint | ToDIP (const wxPoint &pt) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
int | ToDIP (int d) const
| Convert pixel values of the current toolkit to DPI-independent pixel values.
wxSize | GetBestSize () const
| This functions returns the best acceptable minimal size for the window.
int | GetBestHeight (int width) const
| Returns the best height needed by this window if it had the given width.
int | GetBestWidth (int height) const
| Returns the best width needed by this window if it had the given height.
void | GetClientSize (int *width, int *height) const
| Returns the size of the window 'client area' in pixels.
wxSize | GetClientSize () const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
virtual wxSize | GetEffectiveMinSize () const
| Merges the window's best size into the min size and returns the result.
virtual wxSize | GetMaxClientSize () const
| Returns the maximum size of window's client area.
virtual wxSize | GetMaxSize () const
| Returns the maximum size of the window.
virtual wxSize | GetMinClientSize () const
| Returns the minimum size of window's client area, an indication to the sizer layout mechanism that this is the minimum required size of its client area.
virtual wxSize | GetMinSize () const
| Returns the minimum size of the window, an indication to the sizer layout mechanism that this is the minimum required size.
int | GetMinWidth () const
| Returns the horizontal component of window minimal size.
int | GetMinHeight () const
| Returns the vertical component of window minimal size.
int | GetMaxWidth () const
| Returns the horizontal component of window maximal size.
int | GetMaxHeight () const
| Returns the vertical component of window maximal size.
void | GetSize (int *width, int *height) const
| Returns the size of the entire window in pixels, including title bar, border, scrollbars, etc.
wxSize | GetSize () const
| See the GetSize(int*,int*) overload for more info.
wxSize | GetVirtualSize () const
| This gets the virtual size of the window in pixels.
void | GetVirtualSize (int *width, int *height) const
| Like the other GetVirtualSize() overload but uses pointers instead.
virtual wxSize | GetBestVirtualSize () const
| Return the largest of ClientSize and BestSize (as determined by a sizer, interior children, or other means).
double | GetContentScaleFactor () const
| Returns the factor mapping logical pixels of this window to physical pixels.
double | GetDPIScaleFactor () const
| Returns the ratio of the DPI used by this window to the standard DPI.
virtual wxSize | GetWindowBorderSize () const
| Returns the size of the left/right and top/bottom borders of this window in x and y components of the result respectively.
virtual bool | InformFirstDirection (int direction, int size, int availableOtherDir)
| wxSizer and friends use this to give a chance to a component to recalc its min size once one of the final size components is known.
void | InvalidateBestSize ()
| Resets the cached best size value so it will be recalculated the next time it is needed.
void | PostSizeEvent ()
| Posts a size event to the window.
void | PostSizeEventToParent ()
| Posts a size event to the parent of this window.
virtual void | SendSizeEvent (int flags=0)
| This function sends a dummy size event to the window allowing it to re-layout its children positions.
void | SendSizeEventToParent (int flags=0)
| Safe wrapper for GetParent()->SendSizeEvent().
void | SetClientSize (int width, int height)
| This sets the size of the window client area in pixels.
void | SetClientSize (const wxSize &size)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void | SetClientSize (const wxRect &rect)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void | SetContainingSizer (wxSizer *sizer)
| Used by wxSizer internally to notify the window about being managed by the given sizer.
void | SetInitialSize (const wxSize &size=wxDefaultSize)
| A smart SetSize that will fill in default size components with the window's best size values.
virtual void | SetMaxClientSize (const wxSize &size)
| Sets the maximum client size of the window, to indicate to the sizer layout mechanism that this is the maximum possible size of its client area.
virtual void | SetMaxSize (const wxSize &size)
| Sets the maximum size of the window, to indicate to the sizer layout mechanism that this is the maximum possible size.
virtual void | SetMinClientSize (const wxSize &size)
| Sets the minimum client size of the window, to indicate to the sizer layout mechanism that this is the minimum required size of window's client area.
virtual void | SetMinSize (const wxSize &size)
| Sets the minimum size of the window, to indicate to the sizer layout mechanism that this is the minimum required size.
void | SetSize (int x, int y, int width, int height, int sizeFlags=wxSIZE_AUTO)
| Sets the size of the window in pixels.
void | SetSize (const wxRect &rect)
| Sets the size of the window in pixels.
void | SetSize (const wxSize &size)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void | SetSize (int width, int height)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
virtual void | SetSizeHints (const wxSize &minSize, const wxSize &maxSize=wxDefaultSize, const wxSize &incSize=wxDefaultSize)
| Use of this function for windows which are not toplevel windows (such as wxDialog or wxFrame) is discouraged.
virtual void | SetSizeHints (int minW, int minH, int maxW=-1, int maxH=-1, int incW=-1, int incH=-1)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
void | SetVirtualSize (int width, int height)
| Sets the virtual size of the window in pixels.
void | SetVirtualSize (const wxSize &size)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Public Member Functions inherited from wxEvtHandler
| wxEvtHandler ()
| Constructor.
virtual | ~wxEvtHandler ()
| Destructor.
template<typename T, typename T1, ...>
void | CallAfter (void(T::*method)(T1,...), T1 x1,...)
| Asynchronously call the given method.
template<typename T>
void | CallAfter (const T &functor)
| Asynchronously call the given functor.
bool | ProcessEventLocally (wxEvent &event)
| Try to process the event in this handler and all those chained to it.
bool | SafelyProcessEvent (wxEvent &event)
| Processes an event by calling ProcessEvent() and handles any exceptions that occur in the process.
void | ProcessPendingEvents ()
| Processes the pending events previously queued using QueueEvent() or AddPendingEvent(); you must call this function only if you are sure there are pending events for this handler, otherwise a `wxCHECK` will fail.
void | DeletePendingEvents ()
| Deletes all events queued on this event handler using QueueEvent() or AddPendingEvent().
void | Connect (int id, int lastId, wxEventType eventType, wxObjectEventFunction function, wxObject *userData=NULL, wxEvtHandler *eventSink=NULL)
| Connects the given function dynamically with the event handler, id and event type.
void | Connect (int id, wxEventType eventType, wxObjectEventFunction function, wxObject *userData=NULL, wxEvtHandler *eventSink=NULL)
| See the Connect(int, int, wxEventType, wxObjectEventFunction, wxObject*, wxEvtHandler*) overload for more info.
void | Connect (wxEventType eventType, wxObjectEventFunction function, wxObject *userData=NULL, wxEvtHandler *eventSink=NULL)
| See the Connect(int, int, wxEventType, wxObjectEventFunction, wxObject*, wxEvtHandler*) overload for more info.
bool | Disconnect (wxEventType eventType, wxObjectEventFunction function, wxObject *userData=NULL, wxEvtHandler *eventSink=NULL)
| Disconnects the given function dynamically from the event handler, using the specified parameters as search criteria and returning true if a matching function has been found and removed.
bool | Disconnect (int id=wxID_ANY, wxEventType eventType=wxEVT_NULL, wxObjectEventFunction function=NULL, wxObject *userData=NULL, wxEvtHandler *eventSink=NULL)
| See the Disconnect(wxEventType, wxObjectEventFunction, wxObject*, wxEvtHandler*) overload for more info.
bool | Disconnect (int id, int lastId, wxEventType eventType, wxObjectEventFunction function=NULL, wxObject *userData=NULL, wxEvtHandler *eventSink=NULL)
| See the Disconnect(wxEventType, wxObjectEventFunction, wxObject*, wxEvtHandler*) overload for more info.
template<typename EventTag, typename Functor>
void | Bind (const EventTag &eventType, Functor functor, int id=wxID_ANY, int lastId=wxID_ANY, wxObject *userData=NULL)
| Binds the given function, functor or method dynamically with the event.
template<typename EventTag, typename Class, typename EventArg, typename EventHandler>
void | Bind (const EventTag &eventType, void(Class::*method)(EventArg &), EventHandler *handler, int id=wxID_ANY, int lastId=wxID_ANY, wxObject *userData=NULL)
| See the Bind<>(const EventTag&, Functor, int, int, wxObject*) overload for more info.
template<typename EventTag, typename Functor>
bool | Unbind (const EventTag &eventType, Functor functor, int id=wxID_ANY, int lastId=wxID_ANY, wxObject *userData=NULL)
| Unbinds the given function, functor or method dynamically from the event handler, using the specified parameters as search criteria and returning true if a matching function has been found and removed.
template<typename EventTag, typename Class, typename EventArg, typename EventHandler>
bool | Unbind (const EventTag &eventType, void(Class::*method)(EventArg &), EventHandler *handler, int id=wxID_ANY, int lastId=wxID_ANY, wxObject *userData=NULL)
| See the Unbind<>(const EventTag&, Functor, int, int, wxObject*) overload for more info.
void * | GetClientData () const
| Returns user-supplied client data.
wxClientData * | GetClientObject () const
| Returns a pointer to the user-supplied client data object.
void | SetClientData (void *data)
| Sets user-supplied client data.
void | SetClientObject (wxClientData *data)
| Set the client data object.
bool | GetEvtHandlerEnabled () const
| Returns true if the event handler is enabled, false otherwise.
wxEvtHandler * | GetNextHandler () const
| Returns the pointer to the next handler in the chain.
wxEvtHandler * | GetPreviousHandler () const
| Returns the pointer to the previous handler in the chain.
void | SetEvtHandlerEnabled (bool enabled)
| Enables or disables the event handler.
void | Unlink ()
| Unlinks this event handler from the chain it's part of (if any); then links the "previous" event handler to the "next" one (so that the chain won't be interrupted).
bool | IsUnlinked () const
| Returns true if the next and the previous handler pointers of this event handler instance are NULL.
Public Member Functions inherited from wxObject
| wxObject ()
| Default ctor; initializes to NULL the internal reference data.
| wxObject (const wxObject &other)
| Copy ctor.
virtual | ~wxObject ()
| Destructor.
virtual wxClassInfo * | GetClassInfo () const
| This virtual function is redefined for every class that requires run-time type information, when using the wxDECLARE_CLASS macro (or similar).
wxObjectRefData * | GetRefData () const
| Returns the wxObject::m_refData pointer, i.e. the data referenced by this object.
bool | IsKindOf (const wxClassInfo *info) const
| Determines whether this class is a subclass of (or the same class as) the given class.
bool | IsSameAs (const wxObject &obj) const
| Returns true if this object has the same data pointer as obj.
void | Ref (const wxObject &clone)
| Makes this object refer to the data in clone.
void | SetRefData (wxObjectRefData *data)
| Sets the wxObject::m_refData pointer.
void | UnRef ()
| Decrements the reference count in the associated data, and if it is zero, deletes the data.
void | UnShare ()
| This is the same of AllocExclusive() but this method is public.
void | operator delete (void *buf)
| The delete operator is defined for debugging versions of the library only, when the identifier `__WXDEBUG__` is defined.
void * | operator new (size_t size, const wxString &filename=NULL, int lineNum=0)
| The new operator is defined for debugging versions of the library only, when the identifier `__WXDEBUG__` is defined.
Public Member Functions inherited from wxTextEntry
virtual void | AppendText (const wxString &text)
| Appends the text to the end of the text control.
bool | AutoComplete (const wxArrayString &choices)
| Call this function to enable auto-completion of the text typed in a single-line text control using the given choices.
bool | AutoComplete (wxTextCompleter *completer)
| Enable auto-completion using the provided completer object.
bool | AutoCompleteFileNames ()
| Call this function to enable auto-completion of the text typed in a single-line text control using all valid file system paths.
bool | AutoCompleteDirectories ()
| Call this function to enable auto-completion of the text using the file system directories.
virtual bool | CanCopy () const
| Returns true if the selection can be copied to the clipboard.
virtual bool | CanCut () const
| Returns true if the selection can be cut to the clipboard.
virtual bool | CanPaste () const
| Returns true if the contents of the clipboard can be pasted into the text control.
virtual bool | CanRedo () const
| Returns true if there is a redo facility available and the last operation can be redone.
virtual bool | CanUndo () const
| Returns true if there is an undo facility available and the last operation can be undone.
virtual void | ChangeValue (const wxString &value)
| Sets the new text control value.
virtual void | Clear ()
| Clears the text in the control.
virtual void | Copy ()
| Copies the selected text to the clipboard.
virtual void | Cut ()
| Copies the selected text to the clipboard and removes it from the control.
void | ForceUpper ()
| Convert all text entered into the control to upper case.
virtual long | GetInsertionPoint () const
| Returns the insertion point, or cursor, position.
virtual wxTextPos | GetLastPosition () const
| Returns the zero based index of the last position in the text control, which is equal to the number of characters in the control.
virtual wxString | GetRange (long from, long to) const
| Returns the string containing the text starting in the positions from and up to to in the control.
virtual void | GetSelection (long *from, long *to) const
| Gets the current selection span.
virtual wxString | GetStringSelection () const
| Gets the text currently selected in the control.
virtual wxString | GetValue () const
| Gets the contents of the control.
virtual bool | IsEditable () const
| Returns true if the controls contents may be edited by user (note that it always can be changed by the program).
virtual bool | IsEmpty () const
| Returns true if the control is currently empty.
virtual void | Paste ()
| Pastes text from the clipboard to the text item.
virtual void | Redo ()
| If there is a redo facility and the last operation can be redone, redoes the last operation.
virtual void | Remove (long from, long to)
| Removes the text starting at the first given position up to (but not including) the character at the last position.
virtual void | Replace (long from, long to, const wxString &value)
| Replaces the text starting at the first position up to (but not including) the character at the last position with the given text.
virtual void | SetEditable (bool editable)
| Makes the text item editable or read-only, overriding the wxTE_READONLY flag.
virtual void | SetInsertionPoint (long pos)
| Sets the insertion point at the given position.
virtual void | SetInsertionPointEnd ()
| Sets the insertion point at the end of the text control.
virtual void | SetMaxLength (unsigned long len)
| This function sets the maximum number of characters the user can enter into the control.
virtual void | SetSelection (long from, long to)
| Selects the text starting at the first position up to (but not including) the character at the last position.
virtual void | SelectAll ()
| Selects all text in the control.
virtual void | SelectNone ()
| Deselects selected text in the control.
virtual bool | SetHint (const wxString &hint)
| Sets a hint shown in an empty unfocused text control.
virtual wxString | GetHint () const
| Returns the current hint string.
bool | SetMargins (const wxPoint &pt)
| Attempts to set the control margins.
bool | SetMargins (wxCoord left, wxCoord top=-1)
wxPoint | GetMargins () const
| Returns the margins used by the control.
virtual void | SetValue (const wxString &value)
| Sets the new text control value.
virtual void | Undo ()
| If there is an undo facility and the last operation can be undone, undoes the last operation.
virtual void | WriteText (const wxString &text)
| Writes the text into the text control at the current insertion position.

## Additional Inherited Members
Static Public Member Functions inherited from wxControl
static wxString | GetLabelText (const wxString &label)
| Returns the given label string without mnemonics ("&" characters).
static wxString | RemoveMnemonics (const wxString &str)
| Returns the given str string without mnemonics ("&" characters).
static wxString | EscapeMnemonics (const wxString &text)
| Escapes the special mnemonics characters ("&") in the given string.
static wxString | Ellipsize (const wxString &label, const wxDC &dc, wxEllipsizeMode mode, int maxWidth, int flags=wxELLIPSIZE_FLAGS_DEFAULT)
| Replaces parts of the label string with ellipsis, if needed, so that it fits into maxWidth pixels if possible.
static wxSize | FromDIP (const wxSize &sz, const wxWindow *w)
| Non window-specific DPI-independent pixels conversion functions.
static wxPoint | FromDIP (const wxPoint &pt, const wxWindow *w)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
static int | FromDIP (int d, const wxWindow *w)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
static wxSize | ToDIP (const wxSize &sz, const wxWindow *w)
| Non window-specific pixel to DPI-independent pixels conversion functions.
static wxPoint | ToDIP (const wxPoint &pt, const wxWindow *w)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
static int | ToDIP (int d, const wxWindow *w)
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
static wxVisualAttributes | GetClassDefaultAttributes (wxWindowVariant variant=wxWINDOW_VARIANT_NORMAL)
| Returns the default font and colours which are used by the control.
static wxWindow * | FindFocus ()
| Finds the window or control which currently has the keyboard focus.
static wxWindow * | FindWindowById (long id, const wxWindow *parent=0)
| Find the first window with the given id.
static wxWindow * | FindWindowByLabel (const wxString &label, const wxWindow *parent=0)
| Find a window by its label.
static wxWindow * | FindWindowByName (const wxString &name, const wxWindow *parent=0)
| Find a window by its name (as given in a window constructor or Create() function call).
static wxWindow * | GetCapture ()
| Returns the currently captured window.
static wxWindowID | NewControlId (int count=1)
| Create a new ID or range of IDs that are not currently in use.
static void | UnreserveControlId (wxWindowID id, int count=1)
| Unreserve an ID or range of IDs that was reserved by NewControlId().
static void | AddFilter (wxEventFilter *filter)
| Add an event filter whose FilterEvent() method will be called for each and every event processed by wxWidgets.
static void | RemoveFilter (wxEventFilter *filter)
| Remove a filter previously installed with AddFilter().
virtual void | DoCentre (int direction)
| Centres the window.
virtual wxSize | DoGetBestSize () const
| Implementation of GetBestSize() that can be overridden.
virtual wxSize | DoGetBestClientSize () const
| Override this method to return the best size for a custom control.
virtual int | DoGetBestClientHeight (int width) const
| Override this method to implement height-for-width best size calculation.
virtual int | DoGetBestClientWidth (int height) const
| Override this method to implement width-for-height best size calculation.
virtual void | SetInitialBestSize (const wxSize &size)
| Sets the initial window size if none is given (i.e. at least one of the components of the size passed to ctor/Create() is wxDefaultCoord).
void | SendDestroyEvent ()
| Generate wxWindowDestroyEvent for this window.
virtual bool | ProcessEvent (wxEvent &event)
| This function is public in wxEvtHandler but protected in wxWindow because for wxWindows you should always call ProcessEvent() on the pointer returned by GetEventHandler() and not on the wxWindow object itself.
bool | SafelyProcessEvent (wxEvent &event)
| See ProcessEvent() for more info about why you shouldn't use this function and the reason for making this function protected in wxWindow.
virtual void | QueueEvent (wxEvent *event)
| Returns the default font and colours which are used by the control.
virtual void | AddPendingEvent (const wxEvent &event)
| Returns the default font and colours which are used by the control.
void | ProcessPendingEvents ()
| Returns the default font and colours which are used by the control.
bool | ProcessThreadEvent (const wxEvent &event)
| Returns the default font and colours which are used by the control.
virtual bool | TryBefore (wxEvent &event)
| Method called by ProcessEvent() before examining this object event tables.
virtual bool | TryAfter (wxEvent &event)
| Method called by ProcessEvent() as last resort.
Protected Member Functions inherited from wxObject
void | AllocExclusive ()
| Ensure that this object's data is not shared with any other object.
virtual wxObjectRefData * | CreateRefData () const
| Creates a new instance of the wxObjectRefData-derived class specific to this object and returns it.
virtual wxObjectRefData * | CloneRefData (const wxObjectRefData *data) const
| Creates a new instance of the wxObjectRefData-derived class specific to this object and initializes it copying data.
Protected Attributes inherited from wxObject
wxObjectRefData * | m_refData
| Pointer to an object which is the object's reference-counted data.

## Constructor & Destructor Documentation

## ◆ wxTextCtrl() [1/2]

wxTextCtrl::wxTextCtrl | ( |  | ) |

Default ctor.

## ◆ wxTextCtrl() [2/2]

wxTextCtrl::wxTextCtrl | ( | wxWindow * | parent,
|  | wxWindowID | id,
|  | const wxString & | value = wxEmptyString,
|  | const wxPoint & | pos = wxDefaultPosition,
|  | const wxSize & | size = wxDefaultSize,
|  | long | style = 0,
|  | const wxValidator & | validator = wxDefaultValidator,
|  | const wxString & | name = wxTextCtrlNameStr )

Constructor, creating and showing a text control.

Parameters

  parent | Parent window. Should not be NULL.
  id | Control identifier. A value of -1 denotes a default value.
  value | Default text value.
  pos | Text control position.
  size | Text control size.
  style | Window style. See wxTextCtrl.
  validator | Window validator.
  name | Window name.

Remarks
  The horizontal scrollbar (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 so that the insertion point is always visible.

See also
  Create(), wxValidator

## ◆ ~wxTextCtrl()

virtual wxTextCtrl::~wxTextCtrl | ( |  | ) |
| virtual

Destructor, destroying the text control.

## Member Function Documentation

## ◆ Create()

bool wxTextCtrl::Create | ( | wxWindow * | parent,
|  | wxWindowID | id,
|  | const wxString & | value = wxEmptyString,
|  | const wxPoint & | pos = wxDefaultPosition,
|  | const wxSize & | size = wxDefaultSize,
|  | long | style = 0,
|  | const wxValidator & | validator = wxDefaultValidator,
|  | const wxString & | name = wxTextCtrlNameStr )

Creates the text control for two-step construction.

This method should be called if the default constructor was used for the control creation. Its parameters have the same meaning as for the non-default constructor.

## ◆ DiscardEdits()

virtual void wxTextCtrl::DiscardEdits | ( |  | ) |
| virtual

Resets the internal modified flag as if the current changes had been saved.

## ◆ EmulateKeyPress()

virtual bool wxTextCtrl::EmulateKeyPress | ( | const wxKeyEvent & | event | ) |
| virtual

This function inserts into the control the character which would have been inserted if the given key event had occurred in the text control.

The event object should be the same as the one passed to `EVT_KEY_DOWN` handler previously by wxWidgets. Please note that this function doesn't currently work correctly for all keys under any platform but MSW.

Returns
  true if the event resulted in a change to the control, false otherwise.

## ◆ GetDefaultStyle()

virtual const wxTextAttr & wxTextCtrl::GetDefaultStyle | ( |  | ) | const
| virtual

Returns the style currently used for the new text.

See also
  SetDefaultStyle()

## ◆ GetLineLength()

virtual int wxTextCtrl::GetLineLength | ( | long | lineNo | ) | const
| virtual

Gets the length of the specified line, not including any trailing newline character(s).

Parameters

  lineNo | Line number (starting from zero).

Returns
  The length of the line, or -1 if lineNo was invalid.

## ◆ GetLineText()

virtual wxString wxTextCtrl::GetLineText | ( | long | lineNo | ) | const
| virtual

Returns the contents of a given line in the text control, not including any trailing newline character(s).

Parameters

  lineNo | The line number, starting from zero.

Returns
  The contents of the line.

## ◆ GetNumberOfLines()

virtual int wxTextCtrl::GetNumberOfLines | ( |  | ) | const
| virtual

Returns the number of lines in the text control buffer.

The returned number is the number of logical lines, i.e. just the count of the number of newline characters in the control + 1, for wxGTK and wxOSX/Cocoa ports while it is the number of physical lines, i.e. the count of lines actually shown in the control, in wxMSW. Because of this discrepancy, it is not recommended to use this function.

Remarks
  Note that even empty text controls have one line (where the insertion point is), so GetNumberOfLines() never returns 0.

## ◆ GetStyle()

virtual bool wxTextCtrl::GetStyle | ( | long | position,
|  | wxTextAttr & | style )
| virtual

Returns the style at this position in the text control.

Not all platforms support this function.

Returns
  true on success, false if an error occurred (this may also mean that the styles are not supported under this platform).

See also
  SetStyle(), wxTextAttr

## ◆ HitTest() [1/2]

wxTextCtrlHitTestResult wxTextCtrl::HitTest | ( | const wxPoint & | pt,
|  | long * | pos ) const

Finds the position of the character at the specified point.

If the return code is not `wxTE_HT_UNKNOWN` the position of the character closest to this position is returned, otherwise the output parameter is not modified.

Please note that this function is currently only implemented in wxUniv, wxMSW and wxGTK ports and always returns `wxTE_HT_UNKNOWN` in the other ports.

wxPerl Note: In wxPerl this function takes only the pt argument and returns a 2-element list (result, pos).

Parameters

  pt | The position of the point to check, in window device coordinates. In wxGTK, and only there, the coordinates can be negative, but in portable code only positive values should be used.
  pos | Receives the position of the character at the given position. May be NULL.

See also
  PositionToXY(), XYToPosition()

## ◆ HitTest() [2/2]

wxTextCtrlHitTestResult wxTextCtrl::HitTest | ( | const wxPoint & | pt,
|  | wxTextCoord * | col,
|  | wxTextCoord * | row ) const

Finds the row and column of the character at the specified point.

If the return code is not `wxTE_HT_UNKNOWN` the row and column of the character closest to this position are returned, otherwise the output parameters are not modified.

Please note that this function is currently only implemented in wxUniv, wxMSW and wxGTK ports and always returns `wxTE_HT_UNKNOWN` in the other ports.

wxPerl Note: In wxPerl this function takes only the pt argument and returns a 3-element list (result, col, row).

Parameters

  pt | The position of the point to check, in window device coordinates.
  col | Receives the column of the character at the given position. May be NULL.
  row | Receives the row of the character at the given position. May be NULL.

See also
  PositionToXY(), XYToPosition()

## ◆ IsModified()

virtual bool wxTextCtrl::IsModified | ( |  | ) | const
| virtual

Returns true if the text has been modified by user.

Note that calling SetValue() doesn't make the control modified.

See also
  MarkDirty()

## ◆ IsMultiLine()

bool wxTextCtrl::IsMultiLine | ( |  | ) | const

Returns true if this is a multi line edit control and false otherwise.

See also
  IsSingleLine()

## ◆ IsSingleLine()

bool wxTextCtrl::IsSingleLine | ( |  | ) | const

Returns true if this is a single line edit control and false otherwise.

See also
  IsSingleLine(), IsMultiLine()

## ◆ LoadFile()

bool wxTextCtrl::LoadFile | ( | const wxString & | filename,
|  | int | fileType = wxTEXT_TYPE_ANY )

Loads and displays the named file, if it exists.

Parameters

  filename | The filename of the file to load.
  fileType | The type of file to load. This is currently ignored in wxTextCtrl.

Returns
  true if successful, false otherwise.

## ◆ MarkDirty()

virtual void wxTextCtrl::MarkDirty | ( |  | ) |
| virtual

Mark text as modified (dirty).

See also
  IsModified()

## ◆ OnDropFiles()

void wxTextCtrl::OnDropFiles | ( | wxDropFilesEvent & | event | ) |

This event handler function implements default drag and drop behaviour, which is to load the first dropped file into the control.

Parameters

  event | The drop files event.

Remarks
  This is not implemented on non-Windows platforms.

See also
  wxDropFilesEvent

## ◆ operator<<() [1/7]

wxTextCtrl & wxTextCtrl::operator<< | ( | char | c | ) |

## ◆ operator<<() [2/7]

wxTextCtrl & wxTextCtrl::operator<< | ( | const wxString & | s | ) |

Operator definitions for appending to a text control.

These operators can be used as with the standard C++ streams, for example:

wxTextCtrl *wnd = new wxTextCtrl(my_frame);
(*wnd) << "Welcome to text control number " << 1 << ".\n";

## ◆ operator<<() [3/7]

wxTextCtrl & wxTextCtrl::operator<< | ( | double | d | ) |

## ◆ operator<<() [4/7]

wxTextCtrl & wxTextCtrl::operator<< | ( | float | f | ) |

## ◆ operator<<() [5/7]

wxTextCtrl & wxTextCtrl::operator<< | ( | int | i | ) |

## ◆ operator<<() [6/7]

wxTextCtrl & wxTextCtrl::operator<< | ( | long | i | ) |

## ◆ operator<<() [7/7]

wxTextCtrl & wxTextCtrl::operator<< | ( | wchar_t | c | ) |

## ◆ PositionToCoords()

wxPoint wxTextCtrl::PositionToCoords | ( | long | pos | ) | const

Converts given text position to client coordinates in pixels.

This function allows finding where is the character at the given position displayed in the text control.

Availability: only available for the wxMSW, wxGTK ports.

. Additionally, wxGTK only implements this method for multiline controls and wxDefaultPosition is always returned for the single line ones.

Parameters

  pos | Text position in 0 to GetLastPosition() range (inclusive).

Returns
  On success returns a wxPoint which contains client coordinates for the given position in pixels, otherwise returns wxDefaultPosition.

Since
  2.9.3

See also
  XYToPosition(), PositionToXY()

## ◆ PositionToXY()

virtual bool wxTextCtrl::PositionToXY | ( | long | pos,
|  | long * | x,
|  | long * | y ) const
| virtual

Converts given position to a zero-based column, line number pair.

Parameters

  pos | Position.
  x | Receives zero based column number.
  y | Receives zero based line number.

Returns
  true on success, false on failure (most likely due to a too large position parameter).

wxPerl Note: In wxPerl this function takes only the pos argument and returns a 2-element list (x, y).

See also
  XYToPosition()

## ◆ SaveFile()

bool wxTextCtrl::SaveFile | ( | const wxString & | filename = wxEmptyString,
|  | int | fileType = wxTEXT_TYPE_ANY )

Saves the contents of the control in a text file.

Parameters

  filename | The name of the file in which to save the text.
  fileType | The type of file to save. This is currently ignored in wxTextCtrl.

Returns
  true if the operation was successful, false otherwise.

## ◆ SetDefaultStyle()

virtual bool wxTextCtrl::SetDefaultStyle | ( | const wxTextAttr & | style | ) |
| virtual

Changes the default style to use for the new text which is going to be added to the control.

This applies both to the text added programmatically using WriteText() or AppendText() and to the text entered by the user interactively.

If either of the font, foreground, or background colour is not set in style, the values of the previous default style are used for them. If the previous default style didn't set them neither, the global font or colours of the text control itself are used as fall back.

However if the style parameter is the default wxTextAttr, then the default style is just reset (instead of being combined with the new style which wouldn't change it at all).

Parameters

  style | The style for the new text.

Returns
  true on success, false if an error occurred (this may also mean that the styles are not supported under this platform).

See also
  GetDefaultStyle()

## ◆ SetModified()

void wxTextCtrl::SetModified | ( | bool | modified | ) |

Marks the control as being modified by the user or not.

See also
  MarkDirty(), DiscardEdits()

## ◆ SetStyle()

virtual bool wxTextCtrl::SetStyle | ( | long | start,
|  | long | end,
|  | const wxTextAttr & | style )
| virtual

Changes the style of the given range.

If any attribute within style is not set, the corresponding attribute from GetDefaultStyle() is used.

Parameters

  start | The start of the range to change.
  end | The end of the range to change.
  style | The new style for the range.

Returns
  true on success, false if an error occurred (this may also mean that the styles are not supported under this platform).

See also
  GetStyle(), wxTextAttr

## ◆ ShowPosition()

virtual void wxTextCtrl::ShowPosition | ( | long | pos | ) |
| virtual

Makes the line containing the given position visible.

Parameters

  pos | The position that should be visible.

## ◆ XYToPosition()

virtual long wxTextCtrl::XYToPosition | ( | long | x,
|  | long | y ) const
| virtual

Converts the given zero based column and line number to a position.

Parameters

  x | The column number.
  y | The line number.

Returns
  The position value, or -1 if x or y was invalid.