void PushEventHandler( wxEvtHandler *handler );
wxEvtHandler *PopEventHandler( bool deleteHandler = FALSE );
+ // find the given handler in the event handler chain and remove (but
+ // not delete) it from the event handler chain, return TRUE if it was
+ // found and FALSE otherwise (this also results in an assert failure so
+ // this function should only be called when the handler is supposed to
+ // be there)
+ bool RemoveEventHandler(wxEvtHandler *handler);
+
// validators
// ----------
virtual wxHitTest DoHitTest(wxCoord x, wxCoord y) const;
// capture/release the mouse, used by Capture/ReleaseMouse()
- virtual void DoCaptureMouse();
- virtual void DoReleaseMouse();
+ virtual void DoCaptureMouse() = 0;
+ virtual void DoReleaseMouse() = 0;
// retrieve the position/size of the window
virtual void DoGetPosition( int *x, int *y ) const = 0;
// contains the last id generated by NewControlId
static int ms_lastControlId;
+ // the stack of windows which have captured the mouse
+ static struct WXDLLEXPORT wxWindowNext *ms_winCaptureNext;
+
DECLARE_ABSTRACT_CLASS(wxWindowBase)
DECLARE_NO_COPY_CLASS(wxWindowBase)
DECLARE_EVENT_TABLE()