X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/61478ea03f87607cc9060e67a8f2656b83448636..9869c26285dc51d13607cddaa04f65ce983653a5:/include/wx/msw/evtloop.h?ds=sidebyside diff --git a/include/wx/msw/evtloop.h b/include/wx/msw/evtloop.h index fd548b87f2..dee2c03db3 100644 --- a/include/wx/msw/evtloop.h +++ b/include/wx/msw/evtloop.h @@ -1,10 +1,9 @@ /////////////////////////////////////////////////////////////////////////////// // Name: wx/msw/evtloop.h -// Purpose: wxEventLoop class for MSW +// Purpose: wxEventLoop class for wxMSW port // Author: Vadim Zeitlin // Modified by: // Created: 2004-07-31 -// RCS-ID: $Id$ // Copyright: (c) 2003-2004 Vadim Zeitlin // Licence: wxWindows licence /////////////////////////////////////////////////////////////////////////////// @@ -12,29 +11,16 @@ #ifndef _WX_MSW_EVTLOOP_H_ #define _WX_MSW_EVTLOOP_H_ -#if wxUSE_GUI +#include "wx/dynarray.h" +#include "wx/msw/wrapwin.h" #include "wx/window.h" -#endif +#include "wx/msw/evtloopconsole.h" // for wxMSWEventLoopBase // ---------------------------------------------------------------------------- // wxEventLoop // ---------------------------------------------------------------------------- -class WXDLLIMPEXP_BASE wxMSWEventLoopBase : public wxEventLoopManual -{ -public: - wxMSWEventLoopBase(); - - // implement base class pure virtuals - virtual bool Pending() const; - -protected: - // get the next message from queue and return true or return false if we - // got WM_QUIT or an error occurred - bool GetNextMessage(WXMSG *msg); -}; - -#if wxUSE_GUI +WX_DECLARE_EXPORTED_OBJARRAY(MSG, wxMSGArray); class WXDLLIMPEXP_CORE wxGUIEventLoop : public wxMSWEventLoopBase { @@ -66,7 +52,9 @@ public: // override/implement base class virtuals virtual bool Dispatch(); + virtual int DispatchTimeout(unsigned long timeout); virtual void WakeUp(); + virtual bool YieldFor(long eventsToProcess); protected: virtual void OnNextIteration(); @@ -76,30 +64,11 @@ private: // 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; }; -#else // !wxUSE_GUI - -#if wxUSE_CONSOLE_EVENTLOOP - -class WXDLLIMPEXP_BASE wxConsoleEventLoop : public wxMSWEventLoopBase -{ -public: - wxConsoleEventLoop() { } - - // override/implement base class virtuals - virtual bool Dispatch(); - virtual void WakeUp(); - -protected: - virtual void OnNextIteration(); -}; - -#endif // wxUSE_CONSOLE_EVENTLOOP - -#endif // wxUSE_GUI/!wxUSE_GUI - #endif // _WX_MSW_EVTLOOP_H_