X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/c2ca375c5620209d77a88d2d378bdcdedbc82e7e..5c80fea840f43976c0903a0dd6f87f046d09d555:/include/wx/timer.h diff --git a/include/wx/timer.h b/include/wx/timer.h index 1a5d5d70f8..4e36b6d35f 100644 --- a/include/wx/timer.h +++ b/include/wx/timer.h @@ -32,7 +32,7 @@ // only send the notification once and then stop the timer #define wxTIMER_ONE_SHOT true -class WXDLLIMPEXP_BASE wxTimerImpl; +class WXDLLIMPEXP_FWD_BASE wxTimerImpl; // the interface of wxTimer class class WXDLLIMPEXP_BASE wxTimer : public wxEvtHandler @@ -116,7 +116,7 @@ protected: // wxTimerRunner: starts the timer in its ctor, stops in the dtor // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxTimerRunner +class WXDLLIMPEXP_BASE wxTimerRunner { public: wxTimerRunner(wxTimer& timer) : m_timer(timer) { } @@ -149,26 +149,28 @@ private: // wxTimerEvent // ---------------------------------------------------------------------------- -class WXDLLEXPORT wxTimerEvent : public wxEvent +class WXDLLIMPEXP_BASE wxTimerEvent : public wxEvent { public: - wxTimerEvent(int timerid = 0, int interval = 0) : wxEvent(timerid) + wxTimerEvent(wxTimer& timer) + : wxEvent(timer.GetId(), wxEVT_TIMER), + m_timer(timer) { - m_eventType = wxEVT_TIMER; - - m_interval = interval; + SetEventObject(timer.GetOwner()); } // accessors - int GetInterval() const { return m_interval; } + int GetInterval() const { return m_timer.GetInterval(); } + wxTimer& GetTimer() const { return m_timer; } // implement the base class pure virtual virtual wxEvent *Clone() const { return new wxTimerEvent(*this); } private: - int m_interval; + wxTimer& m_timer; - DECLARE_DYNAMIC_CLASS_NO_ASSIGN(wxTimerEvent) + DECLARE_ABSTRACT_CLASS(wxTimerEvent) + DECLARE_NO_ASSIGN_CLASS(wxTimerEvent) }; typedef void (wxEvtHandler::*wxTimerEventFunction)(wxTimerEvent&);