]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/os2/timer.h
possible fix for templates with digitalmars
[wxWidgets.git] / include / wx / os2 / timer.h
index 975e76499bd44776150c6a130a2553f3b1ecf674..62ab0c423e4a08c48089784547b4e688ce1e0216 100644 (file)
 #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 void Notify(void);
+    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 milli; };
-    bool OneShot() const { return oneShot; }
+    inline virtual bool IsRunning(void) const { return m_ulId != 0L; }
+    inline          int GetTimerId(void) const { return m_idTimer; }
 
 protected:
-    bool oneShot ;
-    int  milli ;
-    int  lastMilli ;
+    void Init(void);
 
-    long id;
+    ULONG                            m_ulId;
+    HAB                              m_Hab;
 
 private:
     DECLARE_ABSTRACT_CLASS(wxTimer)
 };
 
+extern ULONG wxTimerProc( HWND  WXUNUSED(hwnd)
+                         ,ULONG
+                         ,int   nIdTimer
+                         ,ULONG
+                        );
 #endif
     // _WX_TIMER_H_