#endif
#include "wx/object.h"
+#include "wx/mac/macnotfy.h"
-class WXDLLEXPORT wxTimer: public wxObject
+class wxTimer ;
+
+typedef struct MacTimerInfo
+{
+ TMTask m_task;
+ wxMacNotifierTableRef m_table ;
+ wxTimer* m_timer ;
+} ;
+
+class WXDLLEXPORT wxTimer: public wxTimerBase
{
public:
- wxTimer();
+ wxTimer() { Init(); }
+ wxTimer(wxEvtHandler *owner, int id = -1) : wxTimerBase(owner, id) { Init(); }
~wxTimer();
virtual bool Start(int milliseconds = -1,
bool one_shot = FALSE); // Start timer
virtual void Stop(); // Stop timer
- virtual void Notify() = 0; // Override this member
-
- // Returns the current interval time (0 if stop)
- int Interval() const { return m_milli; };
- bool OneShot() const { return m_oneShot; }
-
-protected:
- bool m_oneShot ;
- int m_milli ;
- int m_lastMilli ;
-
- long m_id;
+ virtual bool IsRunning() const ;
+ MacTimerInfo m_info;
+protected :
+ void Init();
private:
+
DECLARE_ABSTRACT_CLASS(wxTimer)
};
-/* Note: these are implemented in common/timercmn.cpp, so need to implement them separately.
- * But you may need to modify timercmn.cpp.
- */
-
-// Timer functions (milliseconds)
-void WXDLLEXPORT wxStartTimer();
-// Gets time since last wxStartTimer or wxGetElapsedTime
-long WXDLLEXPORT wxGetElapsedTime(bool resetTimer = TRUE);
-
-// EXPERIMENTAL: comment this out if it doesn't compile.
-bool WXDLLEXPORT wxGetLocalTime(long *timeZone, int *dstObserved);
-
-// Get number of seconds since 00:00:00 GMT, Jan 1st 1970.
-long WXDLLEXPORT wxGetCurrentTime();
-
#endif
// _WX_TIMER_H_