]> git.saurik.com Git - wxWidgets.git/blobdiff - wxPython/src/_evthandler.i
AUI updates
[wxWidgets.git] / wxPython / src / _evthandler.i
index 5cbe3734c961b6cf15c4c909b88ead803e563cbc..8820696dcf06e552146638d48b8fb9eeb3a84381 100644 (file)
@@ -22,6 +22,7 @@ public:
     // turn off this typemap
     %typemap(out) wxEvtHandler*;    
 
+    %pythonAppend wxEvtHandler         "self._setOORInfo(self)"
     wxEvtHandler();
 
     // Turn it back on again
@@ -45,6 +46,11 @@ public:
     // process all pending events
     void ProcessPendingEvents();
 
+    // reentrance guard
+    void AllowReentrance( bool allow = true );
+    bool IsReentranceAllowed();
+    bool IsEventHandlingInProgress();
+
     %extend {
         // Dynamic association of a member function handler with the event handler
         void Connect( int id, int lastId, int eventType, PyObject* func) {
@@ -72,10 +78,11 @@ public:
         }
     }
 
+    %pythonAppend _setOORInfo   "args[0].thisown = 0";
     %extend {
-        void _setOORInfo(PyObject* _self) {
+        void _setOORInfo(PyObject* _self, bool incref=true) {
             if (_self && _self != Py_None) {
-                self->SetClientObject(new wxPyOORClientData(_self));
+                self->SetClientObject(new wxPyOORClientData(_self, incref));
             }
             else {
                 wxPyOORClientData* data = (wxPyOORClientData*)self->GetClientObject();
@@ -127,6 +134,9 @@ public:
             return event.Unbind(self, id, id2)              
     }
 
+    %property(EvtHandlerEnabled, GetEvtHandlerEnabled, SetEvtHandlerEnabled, doc="See `GetEvtHandlerEnabled` and `SetEvtHandlerEnabled`");
+    %property(NextHandler, GetNextHandler, SetNextHandler, doc="See `GetNextHandler` and `SetNextHandler`");
+    %property(PreviousHandler, GetPreviousHandler, SetPreviousHandler, doc="See `GetPreviousHandler` and `SetPreviousHandler`");
     
 };