X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/9ed0fac8a854bf53ea942ba7d759519f0c681763..aeea799b3953ea0b17e865b924f97b877f34d5ff:/src/os2/timer.cpp diff --git a/src/os2/timer.cpp b/src/os2/timer.cpp index 6ae0e005b0..1bd868202c 100644 --- a/src/os2/timer.cpp +++ b/src/os2/timer.cpp @@ -31,7 +31,6 @@ #include #include - // ---------------------------------------------------------------------------- // private functions // ---------------------------------------------------------------------------- @@ -43,11 +42,9 @@ ULONG wxTimerProc(HWND hwnd, ULONG, int nIdTimer, ULONG); // macros // ---------------------------------------------------------------------------- -#if !USE_SHARED_LIBRARY IMPLEMENT_ABSTRACT_CLASS(wxTimer, wxObject) -#endif -wxTimer::wxTimer() +void wxTimer::Init() { m_ulId = 0; } @@ -55,10 +52,26 @@ wxTimer::wxTimer() wxTimer::~wxTimer() { Stop(); - + wxTimer::Stop(); wxTimerList.DeleteObject(this); } +void wxTimer::Notify() +{ + // + // The base class version generates an event if it has owner - which it + // should because otherwise nobody can process timer events, but it does + // not use the OS's ID, which OS/2 must have to figure out which timer fired + // + wxCHECK_RET( m_owner, _T("wxTimer::Notify() should be overridden.") ); + + wxTimerEvent vEvent( m_ulId + ,m_milli + ); + + (void)m_owner->ProcessEvent(vEvent); +} // end of wxTimer::Notify + bool wxTimer::Start( int nMilliseconds , bool bOneShot