fix wxWindow::PushEventHandler and related wxWindow functions for the stack management; currently they don't work well when passing event handlers which are part of an event handler chain (see wx-dev thread 'wxWindow event handler stack'); implement wxEvtHandler Unlink() and IsUnlinked() functions and document them; revise docs of all involved functions of both wxEvtHandler and wxWindow, adding images for better explanations
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@58291 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -792,7 +792,7 @@ public:
|
||||
|
||||
// replace the event handler (allows to completely subclass the
|
||||
// window)
|
||||
void SetEventHandler( wxEvtHandler *handler ) { m_eventHandler = handler; }
|
||||
void SetEventHandler( wxEvtHandler *handler );
|
||||
|
||||
// push/pop event handler: allows to chain a custom event handler to
|
||||
// alreasy existing ones
|
||||
@@ -806,13 +806,17 @@ public:
|
||||
// be there)
|
||||
bool RemoveEventHandler(wxEvtHandler *handler);
|
||||
|
||||
// Process an event by calling GetEventHandler()->ProcessEvent() and
|
||||
// handling any exceptions thrown by event handlers. It's mostly useful
|
||||
// when processing wx events when called from C code (e.g. in GTK+
|
||||
// callback) when the exception wouldn't correctly propagate to
|
||||
// wxEventLoop.
|
||||
// Process an event by calling GetEventHandler()->ProcessEvent() and
|
||||
// handling any exceptions thrown by event handlers. It's mostly useful
|
||||
// when processing wx events when called from C code (e.g. in GTK+
|
||||
// callback) when the exception wouldn't correctly propagate to
|
||||
// wxEventLoop.
|
||||
bool HandleWindowEvent(wxEvent& event) const;
|
||||
|
||||
// disable wxEvtHandler double-linked list mechanism:
|
||||
virtual void SetNextHandler(wxEvtHandler *handler);
|
||||
virtual void SetPreviousHandler(wxEvtHandler *handler);
|
||||
|
||||
// validators
|
||||
// ----------
|
||||
|
||||
|
Reference in New Issue
Block a user