#define _WX_MSW_EVTLOOP_H_
#if wxUSE_GUI
+#include "wx/dynarray.h"
+#include "wx/msw/wrapwin.h"
#include "wx/window.h"
#endif
#if wxUSE_GUI
+WX_DECLARE_OBJARRAY(MSG, wxMSGArray);
+
class WXDLLIMPEXP_CORE wxGUIEventLoop : public wxMSWEventLoopBase
{
public:
virtual bool Dispatch();
virtual int DispatchTimeout(unsigned long timeout);
virtual void WakeUp();
+ virtual bool YieldFor(long eventsToProcess);
protected:
virtual void OnNextIteration();
// non NULL)
static bool IsChildOfCriticalWindow(wxWindowMSW *win);
+ // array of messages used for temporary storage by YieldFor()
+ wxMSGArray m_arrMSG;
// critical window or NULL
static wxWindowMSW *ms_winCritical;
virtual bool Dispatch();
virtual int DispatchTimeout(unsigned long timeout);
virtual void WakeUp();
+ virtual bool YieldFor(long WXUNUSED(eventsToProcess)) { return true; }
// MSW-specific function to process a single message
virtual void ProcessMessage(WXMSG *msg);
-
-protected:
- virtual void OnNextIteration();
};
#endif // wxUSE_CONSOLE_EVENTLOOP