]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/timer.h
Applied pop menu patch.
[wxWidgets.git] / include / wx / timer.h
index ac5e6495714893c6f53a99c8ce1f850c82f0ab81..cc33886ea1d9d40a353e0245753d78fa07f9b42c 100644 (file)
@@ -7,7 +7,7 @@
 // Created:     04/01/98
 // RCS-ID:      $Id$
 // Copyright:   (c) wxWindows team
-// Licence:     wxWindows license
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_TIMER_H_BASE_
@@ -22,6 +22,8 @@
 #include "wx/longlong.h"
 #include "wx/event.h"
 
+#include "wx/stopwatch.h" // for backwards compatibility
+
 #if wxUSE_GUI && wxUSE_TIMER
 
 // ----------------------------------------------------------------------------
@@ -37,7 +39,7 @@
 #define wxTIMER_ONE_SHOT TRUE
 
 // the interface of wxTimer class
-class WXDLLEXPORT wxTimerBase : public wxObject
+class WXDLLEXPORT wxTimerBase : public wxEvtHandler
 {
 public:
     // ctors and initializers
@@ -45,7 +47,7 @@ public:
 
     // default: if you don't call SetOwner(), your only chance to get timer
     // notifications is to override Notify() in the derived class
-    wxTimerBase() { Init(); SetOwner(NULL); }
+    wxTimerBase() { Init(); SetOwner(this); }
 
     // ctor which allows to avoid having to override Notify() in the derived
     // class: the owner will get timer notifications which can be handled with
@@ -117,7 +119,7 @@ protected:
     #include "wx/motif/timer.h"
 #elif defined(__WXGTK__)
     #include "wx/gtk/timer.h"
-#elif defined(__WXX11__) || defined(__WXMGL__)
+#elif defined(__WXX11__) || defined(__WXMGL__) || defined(__WXCOCOA__)
     #include "wx/generic/timer.h"
 #elif defined(__WXMAC__)
     #include "wx/mac/timer.h"
@@ -154,6 +156,8 @@ public:
 
 private:
     wxTimer& m_timer;
+
+    DECLARE_NO_COPY_CLASS(wxTimerRunner)
 };
 
 // ----------------------------------------------------------------------------
@@ -179,7 +183,7 @@ public:
 private:
     int m_interval;
 
-    DECLARE_DYNAMIC_CLASS(wxTimerEvent)
+    DECLARE_DYNAMIC_CLASS_NO_ASSIGN(wxTimerEvent)
 };
 
 typedef void (wxEvtHandler::*wxTimerEventFunction)(wxTimerEvent&);
@@ -189,86 +193,5 @@ typedef void (wxEvtHandler::*wxTimerEventFunction)(wxTimerEvent&);
 
 #endif // wxUSE_GUI && wxUSE_TIMER
 
-// ----------------------------------------------------------------------------
-// wxStopWatch: measure time intervals with up to 1ms resolution
-// ----------------------------------------------------------------------------
-
-#if wxUSE_STOPWATCH
-
-class WXDLLEXPORT wxStopWatch
-{
-public:
-    // ctor starts the stop watch
-    wxStopWatch() { m_pauseCount = 0; Start(); }
-
-    // start the stop watch at the moment t0
-    void Start(long t0 = 0);
-
-    // pause the stop watch
-    void Pause()
-    {
-        if ( !m_pauseCount++ )
-            m_pause = GetElapsedTime();
-    }
-
-    // resume it
-    void Resume()
-    {
-        wxASSERT_MSG( m_pauseCount > 0,
-                      _T("Resuming stop watch which is not paused") );
-
-        if ( !--m_pauseCount )
-            Start(m_pause);
-    }
-
-    // get elapsed time since the last Start() in milliseconds
-    long Time() const;
-
-protected:
-    // returns the elapsed time since t0
-    long GetElapsedTime() const;
-
-private:
-    // the time of the last Start()
-    wxLongLong m_t0;
-
-    // the time of the last Pause() (only valid if m_pauseCount > 0)
-    long m_pause;
-
-    // if > 0, the stop watch is paused, otherwise it is running
-    int m_pauseCount;
-};
-
-#endif // wxUSE_STOPWATCH
-
-#if wxUSE_LONGLONG
-
-// Starts a global timer
-// -- DEPRECATED: use wxStopWatch instead
-void WXDLLEXPORT wxStartTimer();
-
-// Gets elapsed milliseconds since last wxStartTimer or wxGetElapsedTime
-// -- DEPRECATED: use wxStopWatch instead
-long WXDLLEXPORT wxGetElapsedTime(bool resetTimer = TRUE);
-
-#endif // wxUSE_LONGLONG
-
-// ----------------------------------------------------------------------------
-// global time functions
-// ----------------------------------------------------------------------------
-
-// Get number of seconds since local time 00:00:00 Jan 1st 1970.
-extern long WXDLLEXPORT wxGetLocalTime();
-
-// Get number of seconds since GMT 00:00:00, Jan 1st 1970.
-extern long WXDLLEXPORT wxGetUTCTime();
-
-#if wxUSE_LONGLONG
-// Get number of milliseconds since local time 00:00:00 Jan 1st 1970
-extern wxLongLong WXDLLEXPORT wxGetLocalTimeMillis();
-#endif // wxUSE_LONGLONG
-
-#define wxGetCurrentTime() wxGetLocalTime()
-
 #endif
     // _WX_TIMER_H_BASE_