]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/app.h
fix crash caused by an wxMDIClientWindow's GTK signal handler being called when the...
[wxWidgets.git] / include / wx / app.h
index 1a9a083f5e6ffc979bd0f2efea2a505946875c26..5e0e97060ed65b27896dfc14ca060c2787f5e09a 100644 (file)
@@ -313,6 +313,9 @@ public:
     //to the list of the handlers with _delayed_ pending events
     void DelayPendingEventHandler(wxEvtHandler* toDelay);
 
+    // deletes the current pending events
+    void DeletePendingEvents();
+
 
     // wxEventLoop redirections
     // ------------------------
@@ -420,11 +423,17 @@ protected:
     // been started yet or has already terminated)
     wxEventLoopBase *m_mainLoop;
 
+
+    // pending events management vars:
+
     // the array of the handlers with pending events which needs to be processed
     // inside ProcessPendingEvents()
     wxEvtHandlerArray m_handlersWithPendingEvents;
 
-    // helper array used by ProcessPendingEvents()
+    // helper array used by ProcessPendingEvents() to store the event handlers
+    // which have pending events but of these events none can be processed right now
+    // (because of a call to wxEventLoop::YieldFor() which asked to selectively process
+    // pending events)
     wxEvtHandlerArray m_handlersWithPendingDelayedEvents;
 
 #if wxUSE_THREADS
@@ -432,6 +441,9 @@ protected:
     wxCriticalSection m_handlersWithPendingEventsLocker;
 #endif
 
+    // flag modified by Suspend/ResumeProcessingOfPendingEvents()
+    bool m_bDoPendingEventProcessing;
+
     friend class WXDLLIMPEXP_FWD_BASE wxEvtHandler;
 
     // the application object is a singleton anyhow, there is no sense in