]> git.saurik.com Git - wxWidgets.git/blobdiff - src/mac/classic/timer.cpp
use WX_DEFINE_ARRAY_INT for an array of ints (bug 1536482)
[wxWidgets.git] / src / mac / classic / timer.cpp
index a639e2c46498e72887d85e4e35c3c713bab47380..0b6a4df374c6c307bc8ecd8e73b70695ba5341c1 100644 (file)
@@ -1,24 +1,25 @@
 /////////////////////////////////////////////////////////////////////////////
 /////////////////////////////////////////////////////////////////////////////
-// Name:        timer.cpp
+// Name:        src/mac/classic/timer.cpp
 // Purpose:     wxTimer implementation
 // Author:      Stefan Csomor
 // Modified by:
 // Created:     1998-01-01
 // RCS-ID:      $Id$
 // Copyright:   (c) Stefan Csomor
 // Purpose:     wxTimer implementation
 // Author:      Stefan Csomor
 // Modified by:
 // Created:     1998-01-01
 // RCS-ID:      $Id$
 // Copyright:   (c) Stefan Csomor
-// Licence:       wxWindows licence
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 /////////////////////////////////////////////////////////////////////////////
 
-#ifdef __GNUG__
-#pragma implementation "timer.h"
-#endif
+// for compilers that support precompilation, includes "wx.h".
+#include "wx/wxprec.h"
 
 #include "wx/timer.h"
 
 
 #include "wx/timer.h"
 
-#if !USE_SHARED_LIBRARY
-IMPLEMENT_ABSTRACT_CLASS(wxTimer, wxObject)
+#ifndef WX_PRECOMP
+    #include "wx/dynarray.h"
 #endif
 
 #endif
 
+IMPLEMENT_ABSTRACT_CLASS(wxTimer, wxEvtHandler)
+
 #ifdef __WXMAC__
 #include "wx/mac/private.h"
 #endif
 #ifdef __WXMAC__
 #include "wx/mac/private.h"
 #endif
@@ -26,8 +27,6 @@ IMPLEMENT_ABSTRACT_CLASS(wxTimer, wxObject)
 #include <Timer.h>
 #endif
 
 #include <Timer.h>
 #endif
 
-#include "wx/dynarray.h"
-
 typedef struct MacTimerInfo
 {
     TMTask m_task;
 typedef struct MacTimerInfo
 {
     TMTask m_task;
@@ -44,7 +43,7 @@ static pascal void MacTimerProc( TMTask * t )
 }
 
 // we need this array to track timers that are being deleted within the Notify procedure
 }
 
 // we need this array to track timers that are being deleted within the Notify procedure
-// adding the timer before the Notify call and checking after whether it still is in there 
+// adding the timer before the Notify call and checking after whether it still is in there
 // as the destructor would have removed it from the array
 
 wxArrayPtrVoid gTimersInProcess ;
 // as the destructor would have removed it from the array
 
 wxArrayPtrVoid gTimersInProcess ;
@@ -53,27 +52,26 @@ static void wxProcessTimer( unsigned long event , void *data )
 {
     if ( !data )
         return ;
 {
     if ( !data )
         return ;
-        
+
     wxTimer* timer = (wxTimer*) data ;
     wxTimer* timer = (wxTimer*) data ;
-    
+
     if ( timer->IsOneShot() )
         timer->Stop() ;
     if ( timer->IsOneShot() )
         timer->Stop() ;
-        
+
     gTimersInProcess.Add( timer ) ;
     gTimersInProcess.Add( timer ) ;
-     
+
     timer->Notify();
 
     int index = gTimersInProcess.Index( timer ) ;
     timer->Notify();
 
     int index = gTimersInProcess.Index( timer ) ;
-    
+
     if ( index != wxNOT_FOUND )
     {
         gTimersInProcess.RemoveAt( index ) ;
     if ( index != wxNOT_FOUND )
     {
         gTimersInProcess.RemoveAt( index ) ;
-        
+
         if ( !timer->IsOneShot() && timer->m_info->m_task.tmAddr )
         {
             PrimeTime( (QElemPtr)  &timer->m_info->m_task , timer->GetInterval() ) ;
         }
         if ( !timer->IsOneShot() && timer->m_info->m_task.tmAddr )
         {
             PrimeTime( (QElemPtr)  &timer->m_info->m_task , timer->GetInterval() ) ;
         }
-    
     }
 }
 
     }
 }
 
@@ -88,7 +86,7 @@ void wxTimer::Init()
     m_info->m_timer = this ;
 }
 
     m_info->m_timer = this ;
 }
 
-bool wxTimer::IsRunning() const 
+bool wxTimer::IsRunning() const
 {
     // as the qType may already indicate it is elapsed, but it
     // was not handled internally yet
 {
     // as the qType may already indicate it is elapsed, but it
     // was not handled internally yet
@@ -104,15 +102,15 @@ wxTimer::~wxTimer()
     }
     int index = gTimersInProcess.Index( this ) ;
     if ( index != wxNOT_FOUND )
     }
     int index = gTimersInProcess.Index( this ) ;
     if ( index != wxNOT_FOUND )
-        gTimersInProcess.RemoveAt( index ) ;  
+        gTimersInProcess.RemoveAt( index ) ;
 }
 
 bool wxTimer::Start(int milliseconds,bool mode)
 {
     (void)wxTimerBase::Start(milliseconds, mode);
 
 }
 
 bool wxTimer::Start(int milliseconds,bool mode)
 {
     (void)wxTimerBase::Start(milliseconds, mode);
 
-    wxCHECK_MSG( m_milli > 0, FALSE, wxT("invalid value for timer timeout") );
-    wxCHECK_MSG( m_info->m_task.tmAddr == NULL , FALSE, wxT("attempting to restart a timer") );
+    wxCHECK_MSG( m_milli > 0, false, wxT("invalid value for timer timeout") );
+    wxCHECK_MSG( m_info->m_task.tmAddr == NULL , false, wxT("attempting to restart a timer") );
 
 #if defined(UNIVERSAL_INTERFACES_VERSION) && (UNIVERSAL_INTERFACES_VERSION >= 0x0340)
     m_info->m_task.tmAddr = NewTimerUPP( MacTimerProc ) ;
 
 #if defined(UNIVERSAL_INTERFACES_VERSION) && (UNIVERSAL_INTERFACES_VERSION >= 0x0340)
     m_info->m_task.tmAddr = NewTimerUPP( MacTimerProc ) ;
@@ -125,7 +123,7 @@ bool wxTimer::Start(int milliseconds,bool mode)
     m_info->m_timer = this ;
     InsXTime((QElemPtr) &m_info->m_task ) ;
     PrimeTime( (QElemPtr) &m_info->m_task , m_milli ) ;
     m_info->m_timer = this ;
     InsXTime((QElemPtr) &m_info->m_task ) ;
     PrimeTime( (QElemPtr) &m_info->m_task , m_milli ) ;
-    return TRUE;
+    return true;
 }
 
 void wxTimer::Stop()
 }
 
 void wxTimer::Stop()
@@ -138,6 +136,3 @@ void wxTimer::Stop()
     }
     wxMacRemoveAllNotifiersForData( wxMacGetNotifierTable() , this ) ;
 }
     }
     wxMacRemoveAllNotifiersForData( wxMacGetNotifierTable() , this ) ;
 }
-
-
-