]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/msw/timer.h
split wxRegion(wxBitmap) ctor into two ctors with clearer semantics
[wxWidgets.git] / include / wx / msw / timer.h
index 36fc33a1c0f339a7d834da456deb95838be1a9fe..9ecd87327cb494812e703eb566030c684818144e 100644 (file)
 #ifndef _WX_TIMER_H_
 #define _WX_TIMER_H_
 
-#ifdef __GNUG__
-#pragma interface "timer.h"
+#if defined(__GNUG__) && !defined(NO_GCC_PRAGMA)
+    #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 *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
+    virtual bool Start(int milliseconds = -1, bool oneShot = FALSE);
+    virtual void Stop();
 
-    // Returns the current interval time (0 if stop)
-    int Interval() const { return milli; };
-    bool OneShot() const { return oneShot; }
+    virtual bool IsRunning() const { return m_id != 0; }
 
 protected:
-    bool oneShot;
-    int  milli;
-    int  lastMilli;
+    void Init();
 
-    long id;
+    unsigned long m_id;
 
 private:
-    DECLARE_ABSTRACT_CLASS(wxTimer)
+    DECLARE_DYNAMIC_CLASS_NO_COPY(wxTimer)
 };
 
 #endif