wxWidgets: wxDataViewCtrl Class Reference

| Version: 3.1.7

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

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

Inheritance diagram for wxDataViewCtrl:
[legend]

## Detailed Description

wxDataViewCtrl is a control to display data either in a tree like fashion or in a tabular form or both.

If you only need to display a simple tree structure with an API more like the older wxTreeCtrl class, then the specialized wxDataViewTreeCtrl can be used. Likewise, if you only want to display simple table structure you can use the specialized wxDataViewListCtrl class. Both wxDataViewTreeCtrl and wxDataViewListCtrl can be used without defining your own wxDataViewModel.

A wxDataViewItem is used to represent a (visible) item in the control.

Unlike wxListCtrl, wxDataViewCtrl doesn't get its data from the user through virtual functions or by setting it directly. Instead you need to write your own wxDataViewModel and associate it with this control. Then you need to add a number of wxDataViewColumn to this control to define what each column shall display. Each wxDataViewColumn in turn owns 1 instance of a wxDataViewRenderer to render its cells.

A number of standard renderers for rendering text, dates, images, toggle, a progress bar etc. are provided. Additionally, the user can write custom renderers deriving from wxDataViewCustomRenderer for displaying anything.

All data transfer from the control to the model and the user code is done through wxVariant which can be extended to support more data formats as necessary. Accordingly, all type information uses the strings returned from wxVariant::GetType.

This control supports single column sorting and on some platforms (currently only those using the generic version, i.e. not wxGTK nor wxOSX) also sorting by multiple columns at once. The latter must be explicitly enabled using AllowMultiColumnSort(), which will also indicate whether this feature is supported, as it changes the default behaviour of right clicking the column header to add or remove it to the set of columns used for sorting. If this behaviour is not appropriate, you may handle `wxEVT_DATAVIEW_COLUMN_HEADER_RIGHT_CLICK` event yourself to prevent it from happening. In this case you would presumably call ToggleSortByColumn() from some other event handler to still allow the user to configure sort order somehow.

## Styles

This class supports the following styles:

- wxDV_SINGLE:
  Single selection mode. This is the default.
- wxDV_MULTIPLE:
  Multiple selection mode.
- wxDV_ROW_LINES:
  Use alternating colours for odd and even rows.
- wxDV_HORIZ_RULES:
  Display the separator lines between rows.
- wxDV_VERT_RULES:
  Display the separator lines between columns.
- wxDV_VARIABLE_LINE_HEIGHT:
  Allow variable line heights. This can be inefficient when displaying large number of items.
- wxDV_NO_HEADER:
  Do not show column headers (which are shown by default).

## Events emitted by this class

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

void handlerFuncName(wxDataViewEvent& event)

Event macros for events emitted by this class:

- EVT_DATAVIEW_SELECTION_CHANGED(id, func):
  Process a `wxEVT_DATAVIEW_SELECTION_CHANGED` event.
- EVT_DATAVIEW_ITEM_ACTIVATED(id, func):
  Process a `wxEVT_DATAVIEW_ITEM_ACTIVATED` event. This event is triggered by double clicking an item or pressing some special key (usually "Enter") when it is focused.
- EVT_DATAVIEW_ITEM_START_EDITING(id, func):
  Process a `wxEVT_DATAVIEW_ITEM_START_EDITING` event. This event can be vetoed in order to prevent editing on an item by item basis.
- EVT_DATAVIEW_ITEM_EDITING_STARTED(id, func):
  Process a `wxEVT_DATAVIEW_ITEM_EDITING_STARTED` event.
- EVT_DATAVIEW_ITEM_EDITING_DONE(id, func):
  Process a `wxEVT_DATAVIEW_ITEM_EDITING_DONE` event.
- EVT_DATAVIEW_ITEM_COLLAPSING(id, func):
  Process a `wxEVT_DATAVIEW_ITEM_COLLAPSING` event.
- EVT_DATAVIEW_ITEM_COLLAPSED(id, func):
  Process a `wxEVT_DATAVIEW_ITEM_COLLAPSED` event.
- EVT_DATAVIEW_ITEM_EXPANDING(id, func):
  Process a `wxEVT_DATAVIEW_ITEM_EXPANDING` event.
- EVT_DATAVIEW_ITEM_EXPANDED(id, func):
  Process a `wxEVT_DATAVIEW_ITEM_EXPANDED` event.
- EVT_DATAVIEW_ITEM_VALUE_CHANGED(id, func):
  Process a `wxEVT_DATAVIEW_ITEM_VALUE_CHANGED` event.
- EVT_DATAVIEW_ITEM_CONTEXT_MENU(id, func):
  Process a `wxEVT_DATAVIEW_ITEM_CONTEXT_MENU` event generated when the user right clicks inside the control. Notice that this menu is generated even if the click didn't occur on any valid item, in this case wxDataViewEvent::GetItem() simply returns an invalid item.
- EVT_DATAVIEW_COLUMN_HEADER_CLICK(id, func):
  Process a `wxEVT_DATAVIEW_COLUMN_HEADER_CLICK` event.
- EVT_DATAVIEW_COLUMN_HEADER_RIGHT_CLICK(id, func):
  Process a `wxEVT_DATAVIEW_COLUMN_HEADER_RIGHT_CLICK` event. Notice that currently this event is not generated in the native macOS versions of the control.
- EVT_DATAVIEW_COLUMN_SORTED(id, func):
  Process a `wxEVT_DATAVIEW_COLUMN_SORTED` event.
- EVT_DATAVIEW_COLUMN_REORDERED(id, func):
  Process a `wxEVT_DATAVIEW_COLUMN_REORDERED` event.
- EVT_DATAVIEW_ITEM_BEGIN_DRAG(id, func):
  Process a `wxEVT_DATAVIEW_ITEM_BEGIN_DRAG` event which is generated when the user starts dragging a valid item. This event must be processed and wxDataViewEvent::SetDataObject() must be called to actually start dragging the item.
- EVT_DATAVIEW_ITEM_DROP_POSSIBLE(id, func):
  Process a `wxEVT_DATAVIEW_ITEM_DROP_POSSIBLE` event.
- EVT_DATAVIEW_ITEM_DROP(id, func):
  Process a `wxEVT_DATAVIEW_ITEM_DROP` event.

Notice that this control doesn't allow to process generic mouse events such as `wxEVT_LEFT_DOWN` in all ports (notably it doesn't work in wxGTK). If you need to handle any mouse events not covered by the ones above, consider using a custom renderer for the cells that must handle them.

Note
  Under wxMSW this control uses wxSystemThemedControl for an explorer style appearance by default since wxWidgets 3.1.0. If this is not desired, you can call wxSystemThemedControl::EnableSystemTheme with `false` argument to disable this.

##

Library: wxCore
Category: Controls, wxDataViewCtrl Related Classes

Appearance:

wxMSW Appearance | wxGTK Appearance | wxOSX Appearance

## Public Member Functions
| wxDataViewCtrl ()
| Default Constructor.
| wxDataViewCtrl (wxWindow *parent, wxWindowID id, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=0, const wxValidator &validator=wxDefaultValidator, const wxString &name=wxDataViewCtrlNameStr)
| Constructor.
virtual | ~wxDataViewCtrl ()
| Destructor.
bool | AllowMultiColumnSort (bool allow)
| Call to allow using multiple columns for sorting.
bool | Create (wxWindow *parent, wxWindowID id, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=0, const wxValidator &validator=wxDefaultValidator, const wxString &name=wxDataViewCtrlNameStr)
| Create the control.
virtual bool | AppendColumn (wxDataViewColumn *col)
| Appends a wxDataViewColumn to the control.
virtual bool | PrependColumn (wxDataViewColumn *col)
| Prepends a wxDataViewColumn to the control.
virtual bool | InsertColumn (unsigned int pos, wxDataViewColumn *col)
| Inserts a wxDataViewColumn to the control.
wxDataViewColumn * | AppendBitmapColumn (const wxString &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=-1, wxAlignment align=wxALIGN_CENTER, int flags=wxDATAVIEW_COL_RESIZABLE)
| Appends a column for rendering a bitmap.
wxDataViewColumn * | AppendBitmapColumn (const wxBitmap &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=-1, wxAlignment align=wxALIGN_CENTER, int flags=wxDATAVIEW_COL_RESIZABLE)
wxDataViewColumn * | PrependBitmapColumn (const wxString &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=-1, wxAlignment align=wxALIGN_CENTER, int flags=wxDATAVIEW_COL_RESIZABLE)
| Prepends a column for rendering a bitmap.
wxDataViewColumn * | PrependBitmapColumn (const wxBitmap &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=-1, wxAlignment align=wxALIGN_CENTER, int flags=wxDATAVIEW_COL_RESIZABLE)
wxDataViewColumn * | AppendDateColumn (const wxString &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_ACTIVATABLE, int width=-1, wxAlignment align=wxALIGN_NOT, int flags=wxDATAVIEW_COL_RESIZABLE)
| Appends a column for rendering a date.
wxDataViewColumn * | AppendDateColumn (const wxBitmap &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_ACTIVATABLE, int width=-1, wxAlignment align=wxALIGN_NOT, int flags=wxDATAVIEW_COL_RESIZABLE)
wxDataViewColumn * | PrependDateColumn (const wxString &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_ACTIVATABLE, int width=-1, wxAlignment align=wxALIGN_NOT, int flags=wxDATAVIEW_COL_RESIZABLE)
| Prepends a column for rendering a date.
wxDataViewColumn * | PrependDateColumn (const wxBitmap &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_ACTIVATABLE, int width=-1, wxAlignment align=wxALIGN_NOT, int flags=wxDATAVIEW_COL_RESIZABLE)
wxDataViewColumn * | AppendIconTextColumn (const wxString &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=-1, wxAlignment align=wxALIGN_NOT, int flags=wxDATAVIEW_COL_RESIZABLE)
| Appends a column for rendering text with an icon.
wxDataViewColumn * | AppendIconTextColumn (const wxBitmap &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=-1, wxAlignment align=wxALIGN_NOT, int flags=wxDATAVIEW_COL_RESIZABLE)
wxDataViewColumn * | PrependIconTextColumn (const wxString &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=-1, wxAlignment align=wxALIGN_NOT, int flags=wxDATAVIEW_COL_RESIZABLE)
| Prepends a column for rendering text with an icon.
wxDataViewColumn * | PrependIconTextColumn (const wxBitmap &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=-1, wxAlignment align=wxALIGN_NOT, int flags=wxDATAVIEW_COL_RESIZABLE)
wxDataViewColumn * | AppendProgressColumn (const wxString &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=80, wxAlignment align=wxALIGN_CENTER, int flags=wxDATAVIEW_COL_RESIZABLE)
| Appends a column for rendering a progress indicator.
wxDataViewColumn * | AppendProgressColumn (const wxBitmap &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=80, wxAlignment align=wxALIGN_CENTER, int flags=wxDATAVIEW_COL_RESIZABLE)
wxDataViewColumn * | PrependProgressColumn (const wxString &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=80, wxAlignment align=wxALIGN_CENTER, int flags=wxDATAVIEW_COL_RESIZABLE)
| Prepends a column for rendering a progress indicator.
wxDataViewColumn * | PrependProgressColumn (const wxBitmap &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=80, wxAlignment align=wxALIGN_CENTER, int flags=wxDATAVIEW_COL_RESIZABLE)
wxDataViewColumn * | AppendTextColumn (const wxString &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=-1, wxAlignment align=wxALIGN_NOT, int flags=wxDATAVIEW_COL_RESIZABLE)
| Appends a column for rendering text.
wxDataViewColumn * | AppendTextColumn (const wxBitmap &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=-1, wxAlignment align=wxALIGN_NOT, int flags=wxDATAVIEW_COL_RESIZABLE)
wxDataViewColumn * | PrependTextColumn (const wxString &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=-1, wxAlignment align=wxALIGN_NOT, int flags=wxDATAVIEW_COL_RESIZABLE)
| Prepends a column for rendering text.
wxDataViewColumn * | PrependTextColumn (const wxBitmap &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=-1, wxAlignment align=wxALIGN_NOT, int flags=wxDATAVIEW_COL_RESIZABLE)
wxDataViewColumn * | AppendToggleColumn (const wxString &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=30, wxAlignment align=wxALIGN_CENTER, int flags=wxDATAVIEW_COL_RESIZABLE)
| Appends a column for rendering a toggle.
wxDataViewColumn * | AppendToggleColumn (const wxBitmap &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=30, wxAlignment align=wxALIGN_CENTER, int flags=wxDATAVIEW_COL_RESIZABLE)
wxDataViewColumn * | PrependToggleColumn (const wxString &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=30, wxAlignment align=wxALIGN_CENTER, int flags=wxDATAVIEW_COL_RESIZABLE)
| Prepends a column for rendering a toggle.
wxDataViewColumn * | PrependToggleColumn (const wxBitmap &label, unsigned int model_column, wxDataViewCellMode mode=wxDATAVIEW_CELL_INERT, int width=30, wxAlignment align=wxALIGN_CENTER, int flags=wxDATAVIEW_COL_RESIZABLE)
virtual bool | AssociateModel (wxDataViewModel *model)
| Associates a wxDataViewModel with the control.
virtual bool | ClearColumns ()
| Removes all columns.
virtual void | Collapse (const wxDataViewItem &item)
| Collapses the item.
virtual bool | DeleteColumn (wxDataViewColumn *column)
| Deletes given column.
virtual void | EditItem (const wxDataViewItem &item, const wxDataViewColumn *column)
| Programmatically starts editing given cell of item.
virtual bool | EnableDragSource (const wxDataFormat &format)
| Enable drag operations using the given format.
bool | EnableDropTargets (const wxVector< wxDataFormat > &formats)
| Enable drop operations using any of the specified formats.
bool | EnableDropTarget (const wxDataFormat &format)
| Enable drop operations using the given format.
virtual void | EnsureVisible (const wxDataViewItem &item, const wxDataViewColumn *column=NULL)
| Call this to ensure that the given item is visible.
virtual void | Expand (const wxDataViewItem &item)
| Expands the item.
void | ExpandAncestors (const wxDataViewItem &item)
| Expands all ancestors of the item.
void | ExpandChildren (const wxDataViewItem &item)
| Expand all children of the given item recursively.
virtual wxDataViewColumn * | GetColumn (unsigned int pos) const
| Returns pointer to the column.
virtual unsigned int | GetColumnCount () const
| Returns the number of columns.
virtual int | GetColumnPosition (const wxDataViewColumn *column) const
| Returns the position of the column or -1 if not found in the control.
wxDataViewColumn * | GetExpanderColumn () const
| Returns column containing the expanders.
wxDataViewItem | GetCurrentItem () const
| Returns the currently focused item.
wxDataViewColumn * | GetCurrentColumn () const
| Returns the column that currently has focus.
int | GetIndent () const
| Returns indentation.
virtual wxRect | GetItemRect (const wxDataViewItem &item, const wxDataViewColumn *col=NULL) const
| Returns item rectangle.
wxWindow * | GetMainWindow ()
| Returns the window corresponding to the main area of the control.
wxDataViewModel * | GetModel ()
| Returns pointer to the data model associated with the control (if any).
virtual int | GetSelectedItemsCount () const
| Returns the number of currently selected items.
virtual wxDataViewItem | GetSelection () const
| Returns first selected item or an invalid item if none is selected.
virtual int | GetSelections (wxDataViewItemArray &sel) const
| Fills sel with currently selected items and returns their number.
virtual wxDataViewColumn * | GetSortingColumn () const
| Returns the wxDataViewColumn currently responsible for sorting or NULL if none has been selected.
virtual wxVector< wxDataViewColumn * > | GetSortingColumns () const
| Returns the columns which should be used for sorting the data in this control.
bool | HasSelection () const
| Returns true if any items are currently selected.
virtual void | HitTest (const wxPoint &point, wxDataViewItem &item, wxDataViewColumn *&col) const
| Retrieves item and column at the given point.
virtual bool | IsExpanded (const wxDataViewItem &item) const
| Return true if the item is expanded.
bool | IsMultiColumnSortAllowed () const
| Return true if using more than one column for sorting is allowed.
virtual bool | IsSelected (const wxDataViewItem &item) const
| Return true if the item is selected.
virtual void | Select (const wxDataViewItem &item)
| Select the given item.
virtual void | SelectAll ()
| Select all items.
bool | SetAlternateRowColour (const wxColour &colour)
| Set custom colour for the alternate rows used with wxDV_ROW_LINES style.
void | SetExpanderColumn (wxDataViewColumn *col)
| Set which column shall contain the tree-like expanders.
void | SetCurrentItem (const wxDataViewItem &item)
| Changes the currently focused item.
bool | SetHeaderAttr (const wxItemAttr &attr)
| Set custom colours and/or font to use for the header.
void | SetIndent (int indent)
| Sets the indentation.
virtual void | SetSelections (const wxDataViewItemArray &sel)
| Sets the selection to the array of wxDataViewItems.
virtual void | Unselect (const wxDataViewItem &item)
| Unselect the given item.
virtual void | UnselectAll ()
| Unselect all item.
virtual bool | SetRowHeight (int rowHeight)
| Sets the row height.
virtual void | ToggleSortByColumn (int column)
| Toggle sorting by the given column.
int | GetCountPerPage () const
| Return the number of items that can fit vertically in the visible area of the control.
wxDataViewItem | GetTopItem () const
| Return the topmost visible item.
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, 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 | FromPhys (const wxSize &sz) const
| Convert from physical pixels to logical pixels.
wxPoint | FromPhys (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 | FromPhys (int d) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
wxSize | ToPhys (const wxSize &sz) const
| Convert from logical pixels to physical pixels.
wxPoint | ToPhys (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 | ToPhys (int d) const
| This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
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.

## 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 wxSize | FromPhys (const wxSize &sz, const wxWindow *w)
| Convert from physical pixels to logical pixels for any window.
static wxPoint | FromPhys (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 | FromPhys (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 | ToPhys (const wxSize &sz, const wxWindow *w)
| Convert from logical pixels to physical pixels for any window.
static wxPoint | ToPhys (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 | ToPhys (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

## ◆ wxDataViewCtrl() [1/2]

wxDataViewCtrl::wxDataViewCtrl | ( |  | ) |

Default Constructor.

## ◆ wxDataViewCtrl() [2/2]

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

Constructor.

Calls Create().

## ◆ ~wxDataViewCtrl()

virtual wxDataViewCtrl::~wxDataViewCtrl | ( |  | ) |
| virtual

Destructor.

## Member Function Documentation

## ◆ AllowMultiColumnSort()

bool wxDataViewCtrl::AllowMultiColumnSort | ( | bool | allow | ) |

Call to allow using multiple columns for sorting.

When using multiple column for sorting, GetSortingColumns() method should be used to retrieve all the columns which should be used to effectively sort the data when processing the sorted event.

Currently multiple column sort is only implemented in the generic version, i.e. this functionality is not available when using the native wxDataViewCtrl implementation in wxGTK nor wxOSX.

Returns
  true if sorting by multiple columns could be enabled, false otherwise, typically because this feature is not supported.

Since
  3.1.0

## ◆ AppendBitmapColumn() [1/2]

wxDataViewColumn * wxDataViewCtrl::AppendBitmapColumn | ( | const wxBitmap & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = -1,
|  | wxAlignment | align = wxALIGN_CENTER,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

## ◆ AppendBitmapColumn() [2/2]

wxDataViewColumn * wxDataViewCtrl::AppendBitmapColumn | ( | const wxString & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = -1,
|  | wxAlignment | align = wxALIGN_CENTER,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

Appends a column for rendering a bitmap.

Returns the wxDataViewColumn created in the function or NULL on failure.

## ◆ AppendColumn()

virtual bool wxDataViewCtrl::AppendColumn | ( | wxDataViewColumn * | col | ) |
| virtual

Appends a wxDataViewColumn to the control.

Returns true on success.

Note that there is a number of short cut methods which implicitly create a wxDataViewColumn and a wxDataViewRenderer for it (see below).

Reimplemented in wxDataViewListCtrl.

## ◆ AppendDateColumn() [1/2]

wxDataViewColumn * wxDataViewCtrl::AppendDateColumn | ( | const wxBitmap & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_ACTIVATABLE,
|  | int | width = -1,
|  | wxAlignment | align = wxALIGN_NOT,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

## ◆ AppendDateColumn() [2/2]

wxDataViewColumn * wxDataViewCtrl::AppendDateColumn | ( | const wxString & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_ACTIVATABLE,
|  | int | width = -1,
|  | wxAlignment | align = wxALIGN_NOT,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

Appends a column for rendering a date.

Returns the wxDataViewColumn created in the function or NULL on failure.

Note
  The align parameter is applied to both the column header and the column renderer.

## ◆ AppendIconTextColumn() [1/2]

wxDataViewColumn * wxDataViewCtrl::AppendIconTextColumn | ( | const wxBitmap & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = -1,
|  | wxAlignment | align = wxALIGN_NOT,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

## ◆ AppendIconTextColumn() [2/2]

wxDataViewColumn * wxDataViewCtrl::AppendIconTextColumn | ( | const wxString & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = -1,
|  | wxAlignment | align = wxALIGN_NOT,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

Appends a column for rendering text with an icon.

Returns the wxDataViewColumn created in the function or NULL on failure. This method uses the wxDataViewIconTextRenderer class.

Note
  The align parameter is applied to both the column header and the column renderer.

## ◆ AppendProgressColumn() [1/2]

wxDataViewColumn * wxDataViewCtrl::AppendProgressColumn | ( | const wxBitmap & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = 80,
|  | wxAlignment | align = wxALIGN_CENTER,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

## ◆ AppendProgressColumn() [2/2]

wxDataViewColumn * wxDataViewCtrl::AppendProgressColumn | ( | const wxString & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = 80,
|  | wxAlignment | align = wxALIGN_CENTER,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

Appends a column for rendering a progress indicator.

Returns the wxDataViewColumn created in the function or NULL on failure.

Note
  The align parameter is applied to both the column header and the column renderer.

## ◆ AppendTextColumn() [1/2]

wxDataViewColumn * wxDataViewCtrl::AppendTextColumn | ( | const wxBitmap & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = -1,
|  | wxAlignment | align = wxALIGN_NOT,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

## ◆ AppendTextColumn() [2/2]

wxDataViewColumn * wxDataViewCtrl::AppendTextColumn | ( | const wxString & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = -1,
|  | wxAlignment | align = wxALIGN_NOT,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

Appends a column for rendering text.

Returns the wxDataViewColumn created in the function or NULL on failure.

Note
  The align parameter is applied to both the column header and the column renderer.

## ◆ AppendToggleColumn() [1/2]

wxDataViewColumn * wxDataViewCtrl::AppendToggleColumn | ( | const wxBitmap & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = 30,
|  | wxAlignment | align = wxALIGN_CENTER,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

## ◆ AppendToggleColumn() [2/2]

wxDataViewColumn * wxDataViewCtrl::AppendToggleColumn | ( | const wxString & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = 30,
|  | wxAlignment | align = wxALIGN_CENTER,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

Appends a column for rendering a toggle.

Returns the wxDataViewColumn created in the function or NULL on failure.

Note
  The align parameter is applied to both the column header and the column renderer.

## ◆ AssociateModel()

virtual bool wxDataViewCtrl::AssociateModel | ( | wxDataViewModel * | model | ) |
| virtual

Associates a wxDataViewModel with the control.

This increases the reference count of the model by 1.

## ◆ ClearColumns()

virtual bool wxDataViewCtrl::ClearColumns | ( |  | ) |
| virtual

Removes all columns.

## ◆ Collapse()

virtual void wxDataViewCtrl::Collapse | ( | const wxDataViewItem & | item | ) |
| virtual

Collapses the item.

## ◆ Create()

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

Create the control.

Useful for two step creation.

## ◆ DeleteColumn()

virtual bool wxDataViewCtrl::DeleteColumn | ( | wxDataViewColumn * | column | ) |
| virtual

Deletes given column.

## ◆ EditItem()

virtual void wxDataViewCtrl::EditItem | ( | const wxDataViewItem & | item,
|  | const wxDataViewColumn * | column )
| virtual

Programmatically starts editing given cell of item.

Doesn't do anything if the item or this column is not editable.

Since
  2.9.4

## ◆ EnableDragSource()

virtual bool wxDataViewCtrl::EnableDragSource | ( | const wxDataFormat & | format | ) |
| virtual

Enable drag operations using the given format.

## ◆ EnableDropTarget()

bool wxDataViewCtrl::EnableDropTarget | ( | const wxDataFormat & | format | ) |

Enable drop operations using the given format.

See EnableDropTargets() for providing more than one supported format.

Note
  Since 3.1.6 wxDF_INVALID can be passed to disable drag and drop support.

## ◆ EnableDropTargets()

bool wxDataViewCtrl::EnableDropTargets | ( | const wxVector< wxDataFormat > & | formats | ) |

Enable drop operations using any of the specified formats.

Currently this is fully implemented in the generic and native macOS versions. In wxGTK only the first element of the array is used.

Note
  Passing empty array disables drag and drop operations completely.

Since
  3.1.6

## ◆ EnsureVisible()

virtual void wxDataViewCtrl::EnsureVisible | ( | const wxDataViewItem & | item,
|  | const wxDataViewColumn * | column = NULL )
| virtual

Call this to ensure that the given item is visible.

## ◆ Expand()

virtual void wxDataViewCtrl::Expand | ( | const wxDataViewItem & | item | ) |
| virtual

Expands the item.

## ◆ ExpandAncestors()

void wxDataViewCtrl::ExpandAncestors | ( | const wxDataViewItem & | item | ) |

Expands all ancestors of the item.

This method also ensures that the item itself as well as all ancestor items have been read from the model by the control.

## ◆ ExpandChildren()

void wxDataViewCtrl::ExpandChildren | ( | const wxDataViewItem & | item | ) |

Expand all children of the given item recursively.

This is the same as calling Expand() on the item itself and then calling it for all of its children, grandchildren etc recursively.

Since
  3.1.5

## ◆ GetColumn()

virtual wxDataViewColumn * wxDataViewCtrl::GetColumn | ( | unsigned int | pos | ) | const
| virtual

Returns pointer to the column.

pos refers to the position in the control which may change after reordering columns by the user.

## ◆ GetColumnCount()

virtual unsigned int wxDataViewCtrl::GetColumnCount | ( |  | ) | const
| virtual

Returns the number of columns.

## ◆ GetColumnPosition()

virtual int wxDataViewCtrl::GetColumnPosition | ( | const wxDataViewColumn * | column | ) | const
| virtual

Returns the position of the column or -1 if not found in the control.

## ◆ GetCountPerPage()

int wxDataViewCtrl::GetCountPerPage | ( |  | ) | const

Return the number of items that can fit vertically in the visible area of the control.

Returns -1 if the number of items per page couldn't be determined. On wxGTK this method can only determine the number of items per page if there is at least one item in the control.

Since
  3.1.1

## ◆ GetCurrentColumn()

wxDataViewColumn * wxDataViewCtrl::GetCurrentColumn | ( |  | ) | const

Returns the column that currently has focus.

If the focus is set to individual cell within the currently focused item (as opposed to being on the item as a whole), then this is the column that the focus is on.

Returns NULL if no column currently has focus.

See also
  GetCurrentItem()

Since
  2.9.4

## ◆ GetCurrentItem()

wxDataViewItem wxDataViewCtrl::GetCurrentItem | ( |  | ) | const

Returns the currently focused item.

This is the item that the keyboard commands apply to. It may be invalid if there is no focus currently.

This method is mostly useful for the controls with `wxDV_MULTIPLE` style as in the case of single selection it returns the same thing as GetSelection().

Notice that under all platforms except macOS the currently focused item may be selected or not but under macOS the current item is always selected.

See also
  SetCurrentItem(), GetCurrentColumn()

Since
  2.9.2

## ◆ GetExpanderColumn()

wxDataViewColumn * wxDataViewCtrl::GetExpanderColumn | ( |  | ) | const

Returns column containing the expanders.

## ◆ GetIndent()

int wxDataViewCtrl::GetIndent | ( |  | ) | const

Returns indentation.

## ◆ GetItemRect()

virtual wxRect wxDataViewCtrl::GetItemRect | ( | const wxDataViewItem & | item,
|  | const wxDataViewColumn * | col = NULL ) const
| virtual

Returns item rectangle.

If item is not currently visible, either because its parent is collapsed or it is outside of the visible part of the control due to the current vertical scrollbar position, return an empty rectangle.

Coordinates of the rectangle are specified in wxDataViewCtrl client area coordinates.

Parameters

  item | A valid item.
  col | If non-NULL, the rectangle returned corresponds to the intersection of the item with the specified column. If NULL, the rectangle spans all the columns.

## ◆ GetMainWindow()

wxWindow * wxDataViewCtrl::GetMainWindow | ( |  | ) |

Returns the window corresponding to the main area of the control.

This is the window that actually shows the control items and may be different from wxDataViewCtrl window itself in some ports (currently this is only the case for the generic implementation used by default under MSW).

## ◆ GetModel()

wxDataViewModel * wxDataViewCtrl::GetModel | ( |  | ) |

Returns pointer to the data model associated with the control (if any).

## ◆ GetSelectedItemsCount()

virtual int wxDataViewCtrl::GetSelectedItemsCount | ( |  | ) | const
| virtual

Returns the number of currently selected items.

This method may be called for both the controls with single and multiple selections and returns the number of selected item, possibly 0, in any case.

Since
  2.9.3

## ◆ GetSelection()

virtual wxDataViewItem wxDataViewCtrl::GetSelection | ( |  | ) | const
| virtual

Returns first selected item or an invalid item if none is selected.

This method may be called for both the controls with single and multiple selections but returns an invalid item if more than one item is selected in the latter case, use HasSelection() to determine if there are any selected items when using multiple selection.

## ◆ GetSelections()

virtual int wxDataViewCtrl::GetSelections | ( | wxDataViewItemArray & | sel | ) | const
| virtual

Fills sel with currently selected items and returns their number.

This method may be called for both the controls with single and multiple selections. In the single selection case it returns the array with at most one element in it.

See also
  GetSelectedItemsCount()

## ◆ GetSortingColumn()

virtual wxDataViewColumn * wxDataViewCtrl::GetSortingColumn | ( |  | ) | const
| virtual

Returns the wxDataViewColumn currently responsible for sorting or NULL if none has been selected.

## ◆ GetSortingColumns()

virtual wxVector< wxDataViewColumn * > wxDataViewCtrl::GetSortingColumns | ( |  | ) | const
| virtual

Returns the columns which should be used for sorting the data in this control.

This method is only useful when sorting by multiple columns had been enabled using AllowMultiColumnSort() previously, otherwise GetSortingColumn() is more convenient.

Returns
  A possibly empty vector containing all the columns used selected by the user for sorting. The sort order can be retrieved from each column object separately.

Since
  3.1.0

## ◆ GetTopItem()

wxDataViewItem wxDataViewCtrl::GetTopItem | ( |  | ) | const

Return the topmost visible item.

Returns an invalid item if there is no topmost visible item or if the method is not implemented for the current platform.

Since
  3.1.1

## ◆ HasSelection()

bool wxDataViewCtrl::HasSelection | ( |  | ) | const

Returns true if any items are currently selected.

This method may be called for both the controls with single and multiple selections.

Calling this method is equivalent to calling GetSelectedItemsCount() and comparing its result with 0 but is more clear and might also be implemented more efficiently in the future.

Since
  2.9.3

## ◆ HitTest()

virtual void wxDataViewCtrl::HitTest | ( | const wxPoint & | point,
|  | wxDataViewItem & | item,
|  | wxDataViewColumn *& | col ) const
| virtual

Retrieves item and column at the given point.

The point coordinates are specified in wxDataViewCtrl client area coordinates.

## ◆ InsertColumn()

virtual bool wxDataViewCtrl::InsertColumn | ( | unsigned int | pos,
|  | wxDataViewColumn * | col )
| virtual

Inserts a wxDataViewColumn to the control.

Returns true on success.

Reimplemented in wxDataViewListCtrl.

## ◆ IsExpanded()

virtual bool wxDataViewCtrl::IsExpanded | ( | const wxDataViewItem & | item | ) | const
| virtual

Return true if the item is expanded.

Note
  When using the native macOS version this method has a bug which may result in returning true even for items without children.

## ◆ IsMultiColumnSortAllowed()

bool wxDataViewCtrl::IsMultiColumnSortAllowed | ( |  | ) | const

Return true if using more than one column for sorting is allowed.

See AllowMultiColumnSort() and GetSortingColumns().

Since
  3.1.0

## ◆ IsSelected()

virtual bool wxDataViewCtrl::IsSelected | ( | const wxDataViewItem & | item | ) | const
| virtual

Return true if the item is selected.

## ◆ PrependBitmapColumn() [1/2]

wxDataViewColumn * wxDataViewCtrl::PrependBitmapColumn | ( | const wxBitmap & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = -1,
|  | wxAlignment | align = wxALIGN_CENTER,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

## ◆ PrependBitmapColumn() [2/2]

wxDataViewColumn * wxDataViewCtrl::PrependBitmapColumn | ( | const wxString & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = -1,
|  | wxAlignment | align = wxALIGN_CENTER,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

Prepends a column for rendering a bitmap.

Returns the wxDataViewColumn created in the function or NULL on failure.

## ◆ PrependColumn()

virtual bool wxDataViewCtrl::PrependColumn | ( | wxDataViewColumn * | col | ) |
| virtual

Prepends a wxDataViewColumn to the control.

Returns true on success.

Note that there is a number of short cut methods which implicitly create a wxDataViewColumn and a wxDataViewRenderer for it.

Reimplemented in wxDataViewListCtrl.

## ◆ PrependDateColumn() [1/2]

wxDataViewColumn * wxDataViewCtrl::PrependDateColumn | ( | const wxBitmap & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_ACTIVATABLE,
|  | int | width = -1,
|  | wxAlignment | align = wxALIGN_NOT,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

## ◆ PrependDateColumn() [2/2]

wxDataViewColumn * wxDataViewCtrl::PrependDateColumn | ( | const wxString & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_ACTIVATABLE,
|  | int | width = -1,
|  | wxAlignment | align = wxALIGN_NOT,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

Prepends a column for rendering a date.

Returns the wxDataViewColumn created in the function or NULL on failure.

Note
  The align parameter is applied to both the column header and the column renderer.

## ◆ PrependIconTextColumn() [1/2]

wxDataViewColumn * wxDataViewCtrl::PrependIconTextColumn | ( | const wxBitmap & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = -1,
|  | wxAlignment | align = wxALIGN_NOT,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

## ◆ PrependIconTextColumn() [2/2]

wxDataViewColumn * wxDataViewCtrl::PrependIconTextColumn | ( | const wxString & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = -1,
|  | wxAlignment | align = wxALIGN_NOT,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

Prepends a column for rendering text with an icon.

Returns the wxDataViewColumn created in the function or NULL on failure. This method uses the wxDataViewIconTextRenderer class.

Note
  The align parameter is applied to both the column header and the column renderer.

## ◆ PrependProgressColumn() [1/2]

wxDataViewColumn * wxDataViewCtrl::PrependProgressColumn | ( | const wxBitmap & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = 80,
|  | wxAlignment | align = wxALIGN_CENTER,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

## ◆ PrependProgressColumn() [2/2]

wxDataViewColumn * wxDataViewCtrl::PrependProgressColumn | ( | const wxString & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = 80,
|  | wxAlignment | align = wxALIGN_CENTER,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

Prepends a column for rendering a progress indicator.

Returns the wxDataViewColumn created in the function or NULL on failure.

Note
  The align parameter is applied to both the column header and the column renderer.

## ◆ PrependTextColumn() [1/2]

wxDataViewColumn * wxDataViewCtrl::PrependTextColumn | ( | const wxBitmap & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = -1,
|  | wxAlignment | align = wxALIGN_NOT,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

## ◆ PrependTextColumn() [2/2]

wxDataViewColumn * wxDataViewCtrl::PrependTextColumn | ( | const wxString & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = -1,
|  | wxAlignment | align = wxALIGN_NOT,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

Prepends a column for rendering text.

Returns the wxDataViewColumn created in the function or NULL on failure.

Note
  The align parameter is applied to both the column header and the column renderer.

## ◆ PrependToggleColumn() [1/2]

wxDataViewColumn * wxDataViewCtrl::PrependToggleColumn | ( | const wxBitmap & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = 30,
|  | wxAlignment | align = wxALIGN_CENTER,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

## ◆ PrependToggleColumn() [2/2]

wxDataViewColumn * wxDataViewCtrl::PrependToggleColumn | ( | const wxString & | label,
|  | unsigned int | model_column,
|  | wxDataViewCellMode | mode = wxDATAVIEW_CELL_INERT,
|  | int | width = 30,
|  | wxAlignment | align = wxALIGN_CENTER,
|  | int | flags = wxDATAVIEW_COL_RESIZABLE )

Prepends a column for rendering a toggle.

Returns the wxDataViewColumn created in the function or NULL on failure.

Note
  The align parameter is applied to both the column header and the column renderer.

## ◆ Select()

virtual void wxDataViewCtrl::Select | ( | const wxDataViewItem & | item | ) |
| virtual

Select the given item.

In single selection mode this changes the (unique) currently selected item. In multi selection mode, the item is selected and the previously selected items remain selected.

## ◆ SelectAll()

virtual void wxDataViewCtrl::SelectAll | ( |  | ) |
| virtual

Select all items.

## ◆ SetAlternateRowColour()

bool wxDataViewCtrl::SetAlternateRowColour | ( | const wxColour & | colour | ) |

Set custom colour for the alternate rows used with wxDV_ROW_LINES style.

Note that calling this method has no effect if wxDV_ROW_LINES is off.

Parameters

  colour | The colour to use for the alternate rows.

Returns
  true if customizing this colour is supported (currently only in the generic version), false if this method is not implemented under this platform.

Since
  3.1.1

## ◆ SetCurrentItem()

void wxDataViewCtrl::SetCurrentItem | ( | const wxDataViewItem & | item | ) |

Changes the currently focused item.

The item parameter must be valid, there is no way to remove the current item from the control.

In single selection mode, calling this method is the same as calling Select() and is thus not very useful. In multiple selection mode this method only moves the current item however without changing the selection except under macOS where the current item is always selected, so calling SetCurrentItem() selects item if it hadn't been selected before.

See also
  GetCurrentItem()

Since
  2.9.2

## ◆ SetExpanderColumn()

void wxDataViewCtrl::SetExpanderColumn | ( | wxDataViewColumn * | col | ) |

Set which column shall contain the tree-like expanders.

## ◆ SetHeaderAttr()

bool wxDataViewCtrl::SetHeaderAttr | ( | const wxItemAttr & | attr | ) |

Set custom colours and/or font to use for the header.

This method allows customizing the display of the control header (it does nothing if `wxDV_NO_HEADER` style is used).

Currently it is only implemented in the generic version and just returns false without doing anything elsewhere.

Parameters

  attr | The attribute defining the colour(s) and font to use. It can be default, in which case the attributes are reset to their default values.

Returns
  true if the attributes were updated, false if the method is not implemented or failed.

Since
  3.1.1

## ◆ SetIndent()

void wxDataViewCtrl::SetIndent | ( | int | indent | ) |

Sets the indentation.

## ◆ SetRowHeight()

virtual bool wxDataViewCtrl::SetRowHeight | ( | int | rowHeight | ) |
| virtual

Sets the row height.

This function can only be used when all rows have the same height, i.e. when wxDV_VARIABLE_LINE_HEIGHT flag is not used.

Currently this is implemented in the generic and native GTK and macOS (since 3.1.1) versions.

Also notice that this method can only be used to increase the row height compared with the default one (as determined by the return value of wxDataViewRenderer::GetSize()), if it is set to a too small value then the minimum required by the renderers will be used.

Returns
  true if the line height was changed or false otherwise.

Since
  2.9.2

## ◆ SetSelections()

virtual void wxDataViewCtrl::SetSelections | ( | const wxDataViewItemArray & | sel | ) |
| virtual

Sets the selection to the array of wxDataViewItems.

Note that if sel contains any invalid items, they are simply ignored.

## ◆ ToggleSortByColumn()

virtual void wxDataViewCtrl::ToggleSortByColumn | ( | int | column | ) |
| virtual

Toggle sorting by the given column.

This method should only be used when sorting by multiple columns is allowed, see AllowMultiColumnSort(), and does nothing otherwise.

Since
  3.1.0

## ◆ Unselect()

virtual void wxDataViewCtrl::Unselect | ( | const wxDataViewItem & | item | ) |
| virtual

Unselect the given item.

## ◆ UnselectAll()

virtual void wxDataViewCtrl::UnselectAll | ( |  | ) |
| virtual

Unselect all item.

This method only has effect if multiple selections are allowed.