]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/window.h
fixed wxRegion::Offset() to not modify the shared regions
[wxWidgets.git] / include / wx / window.h
index b84b83dd60300beac811eb11a3f9ca32eebce7e5..76c8865089ff406b52c173989e5121627c524dda 100644 (file)
@@ -403,6 +403,13 @@ public:
     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
     // ----------
 
@@ -887,8 +894,8 @@ protected:
     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;
@@ -932,6 +939,9 @@ private:
     // 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()