]> git.saurik.com Git - wxWidgets.git/commitdiff
added wxTimerEvent::GetTimer()
authorVadim Zeitlin <vadim@wxwidgets.org>
Sat, 5 May 2007 14:59:25 +0000 (14:59 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Sat, 5 May 2007 14:59:25 +0000 (14:59 +0000)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@45830 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775

docs/latex/wx/timer.tex
include/wx/timer.h
src/common/timercmn.cpp
src/common/timerimpl.cpp

index 78a3a6218dac20f7e5b51977cf0fecc17e7bb14e..d52233931b91a93fc4afa06dba9e836c85a48796 100644 (file)
@@ -199,3 +199,10 @@ void MyFrame::OnTimer(wxTimerEvent& event)
 
 Returns the interval of the timer which generated this event.
 
+
+\membersection{wxTimerEvent::GetTimer}\label{wxtimereventgettimer}
+
+\constfunc{wxTimer\&}{GetTimer}{\void}
+
+Returns the timer object which generated this event.
+
index 346b98deeeca8a47cd5ef2a67edef698c5ceaf54..3135963190412aae896620eda21ca6de240ee2bf 100644 (file)
@@ -152,23 +152,25 @@ private:
 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&);
index bb89232709506e28b4e75acc6412270b1cc6d308..8cfe29d11362d339c03c6e49e19d22fdc1cc4448 100644 (file)
@@ -39,7 +39,7 @@
 // wxWin macros
 // ----------------------------------------------------------------------------
 
-IMPLEMENT_DYNAMIC_CLASS(wxTimerEvent, wxEvent)
+IMPLEMENT_ABSTRACT_CLASS(wxTimerEvent, wxEvent)
 
 // ============================================================================
 // wxTimerBase implementation
index d952af816f79d9d2d44e46745f4cacc33b7bc140..3f94268d218ef9f88d6a81870df78c398ab2a0f5 100644 (file)
@@ -47,8 +47,7 @@ void wxTimerImpl::SetOwner(wxEvtHandler *owner, int timerid)
 
 void wxTimerImpl::SendEvent()
 {
-    wxTimerEvent event(m_idTimer, m_milli);
-    event.SetEventObject(m_owner);
+    wxTimerEvent event(*m_timer);
     (void)m_owner->ProcessEvent(event);
 }