Below are a number of functions/macros used with wxWidgets event-handling system.
Related class group: Events
Macros | |
#define | wxDEFINE_EVENT(name, cls) |
Define a new event type associated with the specified event class. More... | |
#define | wxDECLARE_EVENT(name, cls) |
Declares a custom event type. More... | |
#define | wxDECLARE_EXPORTED_EVENT(expdecl, name, cls) |
Variant of wxDECLARE_EVENT() used for event types defined inside a shared library. More... | |
#define | wxEVENT_HANDLER_CAST(functype, func) |
Helper macro for definition of custom event table macros. More... | |
#define | wx__DECLARE_EVT1(evt, id, fn) |
This macro is used to define event table macros for handling custom events. More... | |
#define | wx__DECLARE_EVT2(evt, id1, id2, fn) |
Generalized version of the wx__DECLARE_EVT1() macro taking a range of IDs instead of a single one. More... | |
#define | wx__DECLARE_EVT0(evt, fn) |
Simplified version of the wx__DECLARE_EVT1() macro, to be used when the event type must be handled regardless of the ID associated with the specific event instances. More... | |
#define | wxDECLARE_EVENT_TABLE() |
Use this macro inside a class declaration to declare a static event table for that class. More... | |
#define | wxBEGIN_EVENT_TABLE(theClass, baseClass) |
Use this macro in a source file to start listing static event handlers for a specific class. More... | |
#define | wxEND_EVENT_TABLE() |
Use this macro in a source file to end listing static event handlers for a specific class. More... | |
Typedefs | |
typedef int | wxEventType |
A value uniquely identifying the type of the event. More... | |
Functions | |
wxEventType | wxNewEventType () |
Generates a new unique event type. More... | |
void | wxPostEvent (wxEvtHandler *dest, const wxEvent &event) |
In a GUI application, this function posts event to the specified dest object using wxEvtHandler::AddPendingEvent(). More... | |
void | wxQueueEvent (wxEvtHandler *dest, wxEvent *event) |
Queue an event for processing on the given object. More... | |
#define wx__DECLARE_EVT0 | ( | evt, | |
fn | |||
) |
Simplified version of the wx__DECLARE_EVT1() macro, to be used when the event type must be handled regardless of the ID associated with the specific event instances.
#define wx__DECLARE_EVT1 | ( | evt, | |
id, | |||
fn | |||
) |
This macro is used to define event table macros for handling custom events.
Example of use:
evt | The event type to handle. |
id | The identifier of events to handle. |
fn | The event handler method. |
#define wx__DECLARE_EVT2 | ( | evt, | |
id1, | |||
id2, | |||
fn | |||
) |
Generalized version of the wx__DECLARE_EVT1() macro taking a range of IDs instead of a single one.
Argument id1 is the first identifier of the range, id2 is the second identifier of the range.
#define wxBEGIN_EVENT_TABLE | ( | theClass, | |
baseClass | |||
) |
Use this macro in a source file to start listing static event handlers for a specific class.
Use wxEND_EVENT_TABLE() to terminate the event-declaration block.
#define wxDECLARE_EVENT | ( | name, | |
cls | |||
) |
Declares a custom event type.
This macro declares a variable called name which must be defined elsewhere using wxDEFINE_EVENT().
The class cls must be the wxEvent-derived class associated with the events of this type and its full declaration must be visible from the point of use of this macro.
For example:
#define wxDECLARE_EVENT_TABLE | ( | ) |
Use this macro inside a class declaration to declare a static event table for that class.
In the implementation file you'll need to use the wxBEGIN_EVENT_TABLE() and the wxEND_EVENT_TABLE() macros, plus some additional EVT_xxx
macro to capture events.
Note that this macro requires a final semicolon.
#define wxDECLARE_EXPORTED_EVENT | ( | expdecl, | |
name, | |||
cls | |||
) |
Variant of wxDECLARE_EVENT() used for event types defined inside a shared library.
This is mostly used by wxWidgets internally, e.g.
#define wxDEFINE_EVENT | ( | name, | |
cls | |||
) |
Define a new event type associated with the specified event class.
This macro defines a new unique event type name associated with the event class cls.
For example:
#define wxEND_EVENT_TABLE | ( | ) |
Use this macro in a source file to end listing static event handlers for a specific class.
Use wxBEGIN_EVENT_TABLE() to start the event-declaration block.
#define wxEVENT_HANDLER_CAST | ( | functype, | |
func | |||
) |
Helper macro for definition of custom event table macros.
This macro casts the given event handler to the given function type using static_cast
to ensure that the actual handler is indeed compatible with it, before (unsafely) casting it to a generic function pointer used by the event tables.
See wx__DECLARE_EVT1 for an example of use.
typedef int wxEventType |
A value uniquely identifying the type of the event.
The values of this type should only be created using wxNewEventType().
See the macro wxDEFINE_EVENT() for more information.
wxEventType wxNewEventType | ( | ) |
Generates a new unique event type.
Usually this function is only used by wxDEFINE_EVENT() and not called directly.
void wxPostEvent | ( | wxEvtHandler * | dest, |
const wxEvent & | event | ||
) |
In a GUI application, this function posts event to the specified dest object using wxEvtHandler::AddPendingEvent().
Otherwise, it dispatches event immediately using wxEvtHandler::ProcessEvent(). See the respective documentation for details (and caveats). Because of limitation of wxEvtHandler::AddPendingEvent() this function is not thread-safe for event objects having wxString fields, use wxQueueEvent() instead.
Include file:
#include <wx/event.h>
void wxQueueEvent | ( | wxEvtHandler * | dest, |
wxEvent * | event | ||
) |
Queue an event for processing on the given object.
This is a wrapper around wxEvtHandler::QueueEvent(), see its documentation for more details.
Include file:
#include <wx/event.h>
dest | The object to queue the event on, can't be NULL . |
event | The heap-allocated and non-NULL event to queue, the function takes ownership of it. |
wxEventType wxEVT_ACTIVATE |
wxEventType wxEVT_ACTIVATE_APP |
wxEventType wxEVT_ANY |
wxEventType wxEVT_AUX1_DCLICK |
wxEventType wxEVT_AUX1_DOWN |
wxEventType wxEVT_AUX1_UP |
wxEventType wxEVT_AUX2_DCLICK |
wxEventType wxEVT_AUX2_DOWN |
wxEventType wxEVT_AUX2_UP |
wxEventType wxEVT_BUTTON |
wxEventType wxEVT_CHAR |
wxEventType wxEVT_CHAR_HOOK |
wxEventType wxEVT_CHECKBOX |
wxEventType wxEVT_CHECKLISTBOX |
wxEventType wxEVT_CHILD_FOCUS |
wxEventType wxEVT_CHOICE |
wxEventType wxEVT_CLOSE_WINDOW |
wxEventType wxEVT_COMBOBOX |
wxEventType wxEVT_COMBOBOX_CLOSEUP |
wxEventType wxEVT_COMBOBOX_DROPDOWN |
wxEventType wxEVT_COMMAND_ENTER |
wxEventType wxEVT_COMMAND_KILL_FOCUS |
wxEventType wxEVT_COMMAND_LEFT_CLICK |
wxEventType wxEVT_COMMAND_LEFT_DCLICK |
wxEventType wxEVT_COMMAND_RIGHT_CLICK |
wxEventType wxEVT_COMMAND_RIGHT_DCLICK |
wxEventType wxEVT_COMMAND_SET_FOCUS |
wxEventType wxEVT_CONTEXT_MENU |
wxEventType wxEVT_CREATE |
wxEventType wxEVT_DESTROY |
wxEventType wxEVT_DETAILED_HELP |
wxEventType wxEVT_DISPLAY_CHANGED |
wxEventType wxEVT_DPI_CHANGED |
wxEventType wxEVT_DROP_FILES |
wxEventType wxEVT_END_SESSION |
wxEventType wxEVT_ENTER_WINDOW |
wxEventType wxEVT_ERASE_BACKGROUND |
wxEventType wxEVT_FULLSCREEN |
wxEventType wxEVT_GESTURE_PAN |
wxEventType wxEVT_GESTURE_ROTATE |
wxEventType wxEVT_GESTURE_ZOOM |
wxEventType wxEVT_HELP |
wxEventType wxEVT_HIBERNATE |
wxEventType wxEVT_HOTKEY |
wxEventType wxEVT_ICONIZE |
wxEventType wxEVT_IDLE |
wxEventType wxEVT_INIT_DIALOG |
wxEventType wxEVT_JOY_BUTTON_DOWN |
wxEventType wxEVT_JOY_BUTTON_UP |
wxEventType wxEVT_JOY_MOVE |
wxEventType wxEVT_JOY_ZMOVE |
wxEventType wxEVT_KEY_DOWN |
wxEventType wxEVT_KEY_UP |
wxEventType wxEVT_KILL_FOCUS |
wxEventType wxEVT_LEAVE_WINDOW |
wxEventType wxEVT_LEFT_DCLICK |
wxEventType wxEVT_LEFT_DOWN |
wxEventType wxEVT_LEFT_UP |
wxEventType wxEVT_LISTBOX |
wxEventType wxEVT_LISTBOX_DCLICK |
wxEventType wxEVT_LONG_PRESS |
wxEventType wxEVT_MAGNIFY |
wxEventType wxEVT_MAXIMIZE |
wxEventType wxEVT_MENU |
wxEventType wxEVT_MENU_CLOSE |
wxEventType wxEVT_MENU_HIGHLIGHT |
wxEventType wxEVT_MENU_OPEN |
wxEventType wxEVT_MIDDLE_DCLICK |
wxEventType wxEVT_MIDDLE_DOWN |
wxEventType wxEVT_MIDDLE_UP |
wxEventType wxEVT_MOTION |
wxEventType wxEVT_MOUSE_CAPTURE_CHANGED |
wxEventType wxEVT_MOUSE_CAPTURE_LOST |
wxEventType wxEVT_MOUSEWHEEL |
wxEventType wxEVT_MOVE |
wxEventType wxEVT_MOVE_END |
wxEventType wxEVT_MOVE_START |
wxEventType wxEVT_MOVING |
wxEventType wxEVT_NAVIGATION_KEY |
wxEventType wxEVT_NC_PAINT |
wxEventType wxEVT_NULL |
A special event type usually used to indicate that some wxEvent has yet no type assigned.
wxEventType wxEVT_PAINT |
wxEventType wxEVT_PALETTE_CHANGED |
wxEventType wxEVT_PRESS_AND_TAP |
wxEventType wxEVT_QUERY_END_SESSION |
wxEventType wxEVT_QUERY_NEW_PALETTE |
wxEventType wxEVT_RADIOBOX |
wxEventType wxEVT_RADIOBUTTON |
wxEventType wxEVT_RIGHT_DCLICK |
wxEventType wxEVT_RIGHT_DOWN |
wxEventType wxEVT_RIGHT_UP |
wxEventType wxEVT_SCROLL_BOTTOM |
wxEventType wxEVT_SCROLL_CHANGED |
wxEventType wxEVT_SCROLL_LINEDOWN |
wxEventType wxEVT_SCROLL_LINEUP |
wxEventType wxEVT_SCROLL_PAGEDOWN |
wxEventType wxEVT_SCROLL_PAGEUP |
wxEventType wxEVT_SCROLL_THUMBRELEASE |
wxEventType wxEVT_SCROLL_THUMBTRACK |
wxEventType wxEVT_SCROLL_TOP |
wxEventType wxEVT_SCROLLBAR |
wxEventType wxEVT_SCROLLWIN_BOTTOM |
wxEventType wxEVT_SCROLLWIN_LINEDOWN |
wxEventType wxEVT_SCROLLWIN_LINEUP |
wxEventType wxEVT_SCROLLWIN_PAGEDOWN |
wxEventType wxEVT_SCROLLWIN_PAGEUP |
wxEventType wxEVT_SCROLLWIN_THUMBRELEASE |
wxEventType wxEVT_SCROLLWIN_THUMBTRACK |
wxEventType wxEVT_SCROLLWIN_TOP |
wxEventType wxEVT_SET_CURSOR |
wxEventType wxEVT_SET_FOCUS |
wxEventType wxEVT_SHOW |
wxEventType wxEVT_SIZE |
wxEventType wxEVT_SIZING |
wxEventType wxEVT_SLIDER |
wxEventType wxEVT_SPIN |
wxEventType wxEVT_SPIN_DOWN |
wxEventType wxEVT_SPIN_UP |
wxEventType wxEVT_SYS_COLOUR_CHANGED |
wxEventType wxEVT_TEXT_COPY |
wxEventType wxEVT_TEXT_CUT |
wxEventType wxEVT_TEXT_PASTE |
wxEventType wxEVT_THREAD |
wxEventType wxEVT_TOOL |
wxEventType wxEVT_TOOL_DROPDOWN |
wxEventType wxEVT_TOOL_ENTER |
wxEventType wxEVT_TOOL_RCLICKED |
wxEventType wxEVT_TWO_FINGER_TAP |
wxEventType wxEVT_UPDATE_UI |
wxEventType wxEVT_VLBOX |
wxEventType wxEVT_WINDOW_MODAL_DIALOG_CLOSED |