| Version: 3.3.1

Public Member Functions | List of all members
wxCommandEvent Class Reference
Class List by Category » Events

`#include <wx/event.h>`

Inheritance diagram for wxCommandEvent:
[legend]

## Detailed Description

This event class contains information about command events, which originate from a variety of simple controls.

Note that wxCommandEvents and wxCommandEvent-derived event classes by default and unlike other wxEvent-derived classes propagate upward from the source window (the window which emits the event) up to the first parent which processes the event. Be sure to read How Events Propagate Upwards.

More complex controls, such as wxTreeCtrl, have separate command event classes.

## Events using this class

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

void handlerFuncName(wxCommandEvent& event)

Event macros:

- EVT_COMMAND(id, event, func):
  Process a command, supplying the window identifier, command event identifier, and member function.
- EVT_COMMAND_RANGE(id1, id2, event, func):
  Process a command for a range of window identifiers, supplying the minimum and maximum window identifiers, command event identifier, and member function.
- EVT_BUTTON(id, func):
  Process a `wxEVT_BUTTON` command, which is generated by a wxButton control.
- EVT_CHECKBOX(id, func):
  Process a `wxEVT_CHECKBOX` command, which is generated by a wxCheckBox control.
- EVT_CHOICE(id, func):
  Process a `wxEVT_CHOICE` command, which is generated by a wxChoice control.
- EVT_COMBOBOX(id, func):
  Process a `wxEVT_COMBOBOX` command, which is generated by a wxComboBox control.
- EVT_LISTBOX(id, func):
  Process a `wxEVT_LISTBOX` command, which is generated by a wxListBox control.
- EVT_LISTBOX_DCLICK(id, func):
  Process a `wxEVT_LISTBOX_DCLICK` command, which is generated by a wxListBox control.
- EVT_CHECKLISTBOX(id, func):
  Process a `wxEVT_CHECKLISTBOX` command, which is generated by a wxCheckListBox control.
- EVT_MENU(id, func):
  Process a `wxEVT_MENU` command, which is generated by a menu item.
- EVT_MENU_RANGE(id1, id2, func):
  Process a `wxEVT_MENU` command, which is generated by a range of menu items.
- EVT_CONTEXT_MENU(func):
  Process the event generated when the user has requested a popup menu to appear by pressing a special keyboard key (under Windows) or by right clicking the mouse.
- EVT_RADIOBOX(id, func):
  Process a `wxEVT_RADIOBOX` command, which is generated by a wxRadioBox control.
- EVT_RADIOBUTTON(id, func):
  Process a `wxEVT_RADIOBUTTON` command, which is generated by a wxRadioButton control.
- EVT_SCROLLBAR(id, func):
  Process a `wxEVT_SCROLLBAR` command, which is generated by a wxScrollBar control. This is provided for compatibility only; more specific scrollbar event macros should be used instead (see wxScrollEvent).
- EVT_SLIDER(id, func):
  Process a `wxEVT_SLIDER` command, which is generated by a wxSlider control.
- EVT_TEXT(id, func):
  Process a `wxEVT_TEXT` command, which is generated by a wxTextCtrl control.
- EVT_TEXT_ENTER(id, func):
  Process a `wxEVT_TEXT_ENTER` command, which is generated by a wxTextCtrl control. Note that you must use wxTE_PROCESS_ENTER flag when creating the control if you want it to generate such events.
- EVT_TEXT_MAXLEN(id, func):
  Process a `wxEVT_TEXT_MAXLEN` command, which is generated by a wxTextCtrl control when the user tries to enter more characters into it than the limit previously set with SetMaxLength().
- EVT_TOGGLEBUTTON(id, func):
  Process a `wxEVT_TOGGLEBUTTON` event.
- EVT_TOOL(id, func):
  Process a `wxEVT_TOOL` event (a synonym for `wxEVT_MENU`). Pass the id of the tool.
- EVT_TOOL_RANGE(id1, id2, func):
  Process a `wxEVT_TOOL` event for a range of identifiers. Pass the ids of the tools.
- EVT_TOOL_RCLICKED(id, func):
  Process a `wxEVT_TOOL_RCLICKED` event. Pass the id of the tool. (Not available on wxOSX.)
- EVT_TOOL_RCLICKED_RANGE(id1, id2, func):
  Process a `wxEVT_TOOL_RCLICKED` event for a range of ids. Pass the ids of the tools. (Not available on wxOSX.)
- EVT_TOOL_ENTER(id, func):
  Process a `wxEVT_TOOL_ENTER` event. Pass the id of the toolbar itself. The value of wxCommandEvent::GetSelection() is the tool id, or -1 if the mouse cursor has moved off a tool. (Not available on wxOSX.)
- EVT_COMMAND_LEFT_CLICK(id, func):
  Process a `wxEVT_COMMAND_LEFT_CLICK` command, which is generated by a control (wxMSW only).
- EVT_COMMAND_LEFT_DCLICK(id, func):
  Process a `wxEVT_COMMAND_LEFT_DCLICK` command, which is generated by a control (wxMSW only).
- EVT_COMMAND_RIGHT_CLICK(id, func):
  Process a `wxEVT_COMMAND_RIGHT_CLICK` command, which is generated by a control (wxMSW only).
- EVT_COMMAND_SET_FOCUS(id, func):
  Process a `wxEVT_COMMAND_SET_FOCUS` command, which is generated by a control (wxMSW only).
- EVT_COMMAND_KILL_FOCUS(id, func):
  Process a `wxEVT_COMMAND_KILL_FOCUS` command, which is generated by a control (wxMSW only).
- EVT_COMMAND_ENTER(id, func):
  Process a `wxEVT_COMMAND_ENTER` command, which is generated by a control.

##

Library: wxCore
Category: Events

## Public Member Functions
| wxCommandEvent (wxEventType commandEventType=wxEVT_NULL, int id=0)
| Constructor. More...
void * | GetClientData () const
| Returns client data pointer for a listbox or choice selection event (not valid for a deselection). More...
wxClientData * | GetClientObject () const
| Returns client object pointer for a listbox or choice selection event (not valid for a deselection). More...
long | GetExtraLong () const
| Returns extra information dependent on the event objects type. More...
int | GetInt () const
| Returns the integer identifier corresponding to a listbox, choice or radiobox selection (only if the event was a selection, not a deselection), or a boolean value representing the value of a checkbox. More...
int | GetSelection () const
| Returns item index for a listbox or choice selection event (not valid for a deselection). More...
wxString | GetString () const
| Returns item string for a listbox or choice selection event. More...
bool | IsChecked () const
| This method can be used with checkbox and menu events: for the checkboxes, the method returns true for a selection event and false for a deselection one. More...
bool | IsSelection () const
| For a listbox or similar event, returns true if it is a selection, false if it is a deselection. More...
void | SetClientData (void *clientData)
| Sets the client data for this event. More...
void | SetClientObject (wxClientData *clientObject)
| Sets the client object for this event. More...
void | SetExtraLong (long extraLong)
| Sets the m_extraLong member. More...
void | SetInt (int intCommand)
| Sets the m_commandInt member. More...
void | SetString (const wxString &string)
| Sets the m_commandString member. More...
Public Member Functions inherited from wxEvent
| wxEvent (int id=0, wxEventType eventType=wxEVT_NULL)
| Constructor. More...
virtual wxEvent * | Clone () const =0
| Returns a copy of the event. More...
wxObject * | GetEventObject () const
| Returns the object (usually a window) associated with the event, if any. More...
wxEventType | GetEventType () const
| Returns the identifier of the given event type, such as `wxEVT_BUTTON`. More...
virtual wxEventCategory | GetEventCategory () const
| Returns a generic category for this event. More...
int | GetId () const
| Returns the identifier associated with this event, such as a button command id. More...
wxObject * | GetEventUserData () const
| Return the user data associated with a dynamically connected event handler. More...
bool | GetSkipped () const
| Returns true if the event handler should be skipped, false otherwise. More...
long | GetTimestamp () const
| Gets the timestamp for the event. More...
bool | IsCommandEvent () const
| Returns true if the event is or is derived from wxCommandEvent else it returns false. More...
void | ResumePropagation (int propagationLevel)
| Sets the propagation level to the given value (for example returned from an earlier call to wxEvent::StopPropagation). More...
void | SetEventObject (wxObject *object)
| Sets the originating object. More...
void | SetEventType (wxEventType type)
| Sets the event type. More...
void | SetId (int id)
| Sets the identifier associated with this event, such as a button command id. More...
void | SetTimestamp (long timeStamp=0)
| Sets the timestamp for the event. More...
bool | ShouldPropagate () const
| Test if this event should be propagated or not, i.e. if the propagation level is currently greater than 0. More...
void | Skip (bool skip=true)
| This method can be used inside an event handler to control whether further event handlers bound to this event will be called after the current one returns. More...
int | StopPropagation ()
| Stop the event from propagating to its parent window. More...
Public Member Functions inherited from wxObject
| wxObject ()
| Default ctor; initializes to nullptr the internal reference data. More...
| wxObject (const wxObject &other)
| Copy ctor. More...
virtual | ~wxObject ()
| Destructor. More...
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). More...
wxObjectRefData * | GetRefData () const
| Returns the wxObject::m_refData pointer, i.e. the data referenced by this object. More...
bool | IsKindOf (const wxClassInfo *info) const
| Determines whether this class is a subclass of (or the same class as) the given class. More...
bool | IsSameAs (const wxObject &obj) const
| Returns true if this object has the same data pointer as obj. More...
void | Ref (const wxObject &clone)
| Makes this object refer to the data in clone. More...
void | SetRefData (wxObjectRefData *data)
| Sets the wxObject::m_refData pointer. More...
void | UnRef ()
| Decrements the reference count in the associated data, and if it is zero, deletes the data. More...
void | UnShare ()
| This is the same of AllocExclusive() but this method is public. More...
void | operator delete (void *buf)
| The delete operator is defined for debugging versions of the library only, when the identifier `__WXDEBUG__` is defined. More...
void * | operator new (size_t size, const wxString &filename=nullptr, int lineNum=0)
| The new operator is defined for debugging versions of the library only, when the identifier `__WXDEBUG__` is defined. More...

## Additional Inherited Members
Protected Member Functions inherited from wxObject
void | AllocExclusive ()
| Ensure that this object's data is not shared with any other object. More...
virtual wxObjectRefData * | CreateRefData () const
| Creates a new instance of the wxObjectRefData-derived class specific to this object and returns it. More...
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. More...
Protected Attributes inherited from wxEvent
int | m_propagationLevel
| Indicates how many levels the event can propagate. More...
Protected Attributes inherited from wxObject
wxObjectRefData * | m_refData
| Pointer to an object which is the object's reference-counted data. More...

## Constructor & Destructor Documentation

## ◆ wxCommandEvent()

wxCommandEvent::wxCommandEvent | ( | wxEventType | commandEventType = `wxEVT_NULL`,
|  | int | id = `0`
| ) |  |

Constructor.

## Member Function Documentation

## ◆ GetClientData()

void* wxCommandEvent::GetClientData | ( |  | ) | const

Returns client data pointer for a listbox or choice selection event (not valid for a deselection).

## ◆ GetClientObject()

wxClientData* wxCommandEvent::GetClientObject | ( |  | ) | const

Returns client object pointer for a listbox or choice selection event (not valid for a deselection).

## ◆ GetExtraLong()

long wxCommandEvent::GetExtraLong | ( |  | ) | const

Returns extra information dependent on the event objects type.

If the event comes from a listbox selection, it is a boolean determining whether the event was a selection (true) or a deselection (false). A listbox deselection only occurs for multiple-selection boxes, and in this case the index and string values are indeterminate and the listbox must be examined by the application.

## ◆ GetInt()

int wxCommandEvent::GetInt | ( |  | ) | const

Returns the integer identifier corresponding to a listbox, choice or radiobox selection (only if the event was a selection, not a deselection), or a boolean value representing the value of a checkbox.

For a menu item, this method returns -1 if the item is not checkable or a boolean value (true or false) for checkable items indicating the new state of the item.

## ◆ GetSelection()

int wxCommandEvent::GetSelection | ( |  | ) | const

Returns item index for a listbox or choice selection event (not valid for a deselection).

## ◆ GetString()

wxString wxCommandEvent::GetString | ( |  | ) | const

Returns item string for a listbox or choice selection event.

If one or several items have been deselected, returns the index of the first deselected item. If some items have been selected and others deselected at the same time, it will return the index of the first selected item.

## ◆ IsChecked()

bool wxCommandEvent::IsChecked | ( |  | ) | const

This method can be used with checkbox and menu events: for the checkboxes, the method returns true for a selection event and false for a deselection one.

For the menu events, this method indicates if the menu item just has become checked or unchecked (and thus only makes sense for checkable menu items).

Notice that this method cannot be used with wxCheckListBox currently.

## ◆ IsSelection()

bool wxCommandEvent::IsSelection | ( |  | ) | const

For a listbox or similar event, returns true if it is a selection, false if it is a deselection.

If some items have been selected and others deselected at the same time, it will return true.

## ◆ SetClientData()

void wxCommandEvent::SetClientData | ( | void * | clientData | ) |

Sets the client data for this event.

## ◆ SetClientObject()

void wxCommandEvent::SetClientObject | ( | wxClientData * | clientObject | ) |

Sets the client object for this event.

The client object is not owned by the event object and the event object will not delete the client object in its destructor.

The client object must be owned and deleted by another object (e.g. a control) that has longer life time than the event object.

## ◆ SetExtraLong()

void wxCommandEvent::SetExtraLong | ( | long | extraLong | ) |

Sets the m_extraLong member.

## ◆ SetInt()

void wxCommandEvent::SetInt | ( | int | intCommand | ) |

Sets the m_commandInt member.

## ◆ SetString()

void wxCommandEvent::SetString | ( | const wxString & | string | ) |

Sets the m_commandString member.