]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/os2/timer.h
safe macro expansion
[wxWidgets.git] / include / wx / os2 / timer.h
index 953da997c6b6249b3f90620b669fe939d7c09412..b4f8a2fc517b3f47c3ae0dd7a04c9a422875629a 100644 (file)
@@ -1,64 +1,55 @@
 /////////////////////////////////////////////////////////////////////////////
 // Name:        timer.h
 // Purpose:     wxTimer class
-// Author:      AUTHOR
+// Author:      David Webster
 // Modified by:
-// Created:     ??/??/98
+// Created:     10/17/99
 // RCS-ID:      $Id$
-// Copyright:   (c) AUTHOR
-// Licence:    wxWindows licence
+// Copyright:   (c) David Webster
+// Licence:     wxWindows licence
 /////////////////////////////////////////////////////////////////////////////
 
 #ifndef _WX_TIMER_H_
 #define _WX_TIMER_H_
 
-#ifdef __GNUG__
-#pragma interface "timer.h"
-#endif
-
 #include "wx/object.h"
 
-class WXDLLEXPORT wxTimer: public wxObject
+class WXDLLEXPORT wxTimer: public wxTimerBase
 {
+friend void wxProcessTimer(wxTimer& timer);
+
 public:
-    wxTimer();
+    wxTimer() { Init(); }
+    wxTimer( wxEvtHandler* pOwner
+            ,int           nId = -1
+           )
+           : wxTimerBase( pOwner
+                         ,nId
+                        )
+        { 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
+    virtual bool Start( int  nMilliseconds = -1
+                       ,bool bOneShot = FALSE
+                      );
+    virtual void Stop(void);
 
-    // Returns the current interval time (0 if stop)
-    int Interval() const { return m_milli; }; 
-    bool OneShot() const { return m_oneShot; }
+    inline virtual bool IsRunning(void) const { return m_ulId != 0L; }
 
 protected:
-    bool m_oneShot ;
-    int  m_milli ;
-    int  m_lastMilli ;
+    void Init(void);
 
-    long m_id;
+    ULONG                            m_ulId;
+    HAB                              m_Hab;
 
 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();
-
+extern ULONG wxTimerProc( HWND  WXUNUSED(hwnd)
+                         ,ULONG
+                         ,int   nIdTimer
+                         ,ULONG
+                        );
 #endif
     // _WX_TIMER_H_