+ // ctors and initializers
+ // ----------------------
+
+ // default: if you don't call SetOwner(), your only chance to get timer
+ // notifications is to override Notify() in the derived class
+ wxTimerBase()
+ { Init(); SetOwner(this); }
+
+ // ctor which allows to avoid having to override Notify() in the derived
+ // class: the owner will get timer notifications which can be handled with
+ // EVT_TIMER
+ wxTimerBase(wxEvtHandler *owner, int timerid = wxID_ANY)
+ { Init(); SetOwner(owner, timerid); }
+
+ // same as ctor above
+ void SetOwner(wxEvtHandler *owner, int timerid = wxID_ANY)
+ { m_owner = owner; m_idTimer = timerid == wxID_ANY ? wxNewId() : timerid; }
+ wxEvtHandler * GetOwner() const { return m_owner; }
+
+ virtual ~wxTimerBase();