move generic DispatchTimeout() implementation in the header as evtloopcmn.cpp is part of wxBase and so can't define a method of a wxCore class
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@57575 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -128,7 +128,7 @@ protected:
|
||||
#include "wx/dfb/evtloop.h"
|
||||
#else // other platform
|
||||
|
||||
#define wxNEEDS_GENERIC_DISPATCH_TIMEOUT
|
||||
#include "wx/stopwatch.h" // for wxMilliClock_t
|
||||
|
||||
class WXDLLIMPEXP_FWD_CORE wxEventLoopImpl;
|
||||
|
||||
@@ -142,7 +142,20 @@ public:
|
||||
virtual void Exit(int rc = 0);
|
||||
virtual bool Pending() const;
|
||||
virtual bool Dispatch();
|
||||
virtual int DispatchTimeout(unsigned long timeout);
|
||||
virtual int DispatchTimeout(unsigned long timeout)
|
||||
{
|
||||
// TODO: this is, of course, horribly inefficient and a proper wait with
|
||||
// timeout should be implemented for all ports natively...
|
||||
const wxMilliClock_t timeEnd = wxGetLocalTimeMillis() + timeout;
|
||||
for ( ;; )
|
||||
{
|
||||
if ( Pending() )
|
||||
return Dispatch();
|
||||
|
||||
if ( wxGetLocalTimeMillis() >= timeEnd )
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
virtual void WakeUp() { }
|
||||
|
||||
protected:
|
||||
|
@@ -28,7 +28,6 @@
|
||||
|
||||
#ifndef WX_PRECOMP
|
||||
#include "wx/app.h"
|
||||
#include "wx/stopwatch.h" // for wxMilliClock_t
|
||||
#endif //WX_PRECOMP
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
@@ -155,22 +154,3 @@ void wxEventLoopManual::Exit(int rc)
|
||||
|
||||
#endif // __WXMSW__ || __WXMAC__ || __WXDFB__
|
||||
|
||||
#ifdef wxNEEDS_GENERIC_DISPATCH_TIMEOUT
|
||||
|
||||
int wxGUIEventLoop::DispatchTimeout(unsigned long timeout)
|
||||
{
|
||||
// TODO: this is, of course, horribly inefficient and a proper wait with
|
||||
// timeout should be implemented for all ports natively...
|
||||
const wxMilliClock_t timeEnd = wxGetLocalTimeMillis() + timeout;
|
||||
for ( ;; )
|
||||
{
|
||||
if ( Pending() )
|
||||
return Dispatch();
|
||||
|
||||
if ( wxGetLocalTimeMillis() >= timeEnd )
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
|
||||
#endif // wxNEEDS_GENERIC_DISPATCH_TIMEOUT
|
||||
|
||||
|
Reference in New Issue
Block a user