/////////////////////////////////////////////////////////////////////////////
-// Name: timer.h
+// Name: wx/gtk/timer.h
// Purpose:
// Author: Robert Roebling
// Id: $Id$
// Copyright: (c) 1998 Robert Roebling
-// Licence: wxWindows licence
+// Licence: wxWindows licence
/////////////////////////////////////////////////////////////////////////////
-
-#ifndef __GTKTIMERH__
-#define __GTKTIMERH__
-
-#ifdef __GNUG__
-#pragma interface
-#endif
-
-#include "wx/defs.h"
-#include "wx/object.h"
-
-//-----------------------------------------------------------------------------
-// derived classes
-//-----------------------------------------------------------------------------
-
-class wxTimer;
+#ifndef _WX_GTK_TIMER_H_
+#define _WX_GTK_TIMER_H_
//-----------------------------------------------------------------------------
// wxTimer
//-----------------------------------------------------------------------------
-class wxTimer: public wxObject
+class WXDLLIMPEXP_CORE wxTimer : public wxTimerBase
{
public:
- wxTimer();
- ~wxTimer();
-
- int Interval() const { return m_time; }
-
- bool OneShot() const { return m_oneShot; }
+ wxTimer() { Init(); }
+ wxTimer(wxEvtHandler *owner, int id = -1) : wxTimerBase(owner, id)
+ { Init(); }
+ virtual ~wxTimer();
- virtual bool Start( int millisecs = -1, bool oneShot = FALSE );
+ virtual bool Start(int millisecs = -1, bool oneShot = false);
virtual void Stop();
- virtual void Notify() = 0; // override this
-
-protected:
- int m_tag;
- int m_time;
- bool m_oneShot;
+ virtual bool IsRunning() const { return m_sourceId != 0; }
private:
+ void Init();
+
+ unsigned m_sourceId;
+
DECLARE_ABSTRACT_CLASS(wxTimer)
};
-#endif // __GTKTIMERH__
+#endif // _WX_GTK_TIMER_H_