]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/timer.h
Document wxKill(wxSIGTERM) reliance on having an open window in wxMSW.
[wxWidgets.git] / include / wx / timer.h
index a8501510db992643928e1b16c23c0eaf1b7caaa5..035b2993591b0c9c9e7de396b7bdc6520410d8b8 100644 (file)
 #define wxTIMER_ONE_SHOT true
 
 class WXDLLIMPEXP_FWD_BASE wxTimerImpl;
+class WXDLLIMPEXP_FWD_BASE wxTimerEvent;
+
+// timer event type
+wxDECLARE_EXPORTED_EVENT(WXDLLIMPEXP_BASE, wxEVT_TIMER, wxTimerEvent);
 
 // the interface of wxTimer class
 class WXDLLIMPEXP_BASE wxTimer : public wxEvtHandler
@@ -77,6 +81,10 @@ public:
     // timer if it is already running
     virtual bool Start(int milliseconds = -1, bool oneShot = false);
 
+    // start the timer for one iteration only, this is just a simple wrapper
+    // for Start()
+    bool StartOnce(int milliseconds = -1) { return Start(milliseconds, true); }
+
     // stop the timer, does nothing if the timer is not running
     virtual void Stop();
 
@@ -109,7 +117,7 @@ protected:
 
     wxTimerImpl *m_impl;
 
-    DECLARE_NO_COPY_CLASS(wxTimer)
+    wxDECLARE_NO_COPY_CLASS(wxTimer);
 };
 
 // ----------------------------------------------------------------------------
@@ -142,7 +150,7 @@ public:
 private:
     wxTimer& m_timer;
 
-    DECLARE_NO_COPY_CLASS(wxTimerRunner)
+    wxDECLARE_NO_COPY_CLASS(wxTimerRunner);
 };
 
 // ----------------------------------------------------------------------------
@@ -168,6 +176,7 @@ public:
 
     // implement the base class pure virtual
     virtual wxEvent *Clone() const { return new wxTimerEvent(*this); }
+    virtual wxEventCategory GetEventCategory() const { return wxEVT_CATEGORY_TIMER; }
 
 private:
     wxTimer* m_timer;
@@ -178,7 +187,7 @@ private:
 typedef void (wxEvtHandler::*wxTimerEventFunction)(wxTimerEvent&);
 
 #define wxTimerEventHandler(func) \
-    (wxObjectEventFunction)(wxEventFunction)wxStaticCastEvent(wxTimerEventFunction, &func)
+    wxEVENT_HANDLER_CAST(wxTimerEventFunction, func)
 
 #define EVT_TIMER(timerid, func) \
     wx__DECLARE_EVT1(wxEVT_TIMER, timerid, wxTimerEventHandler(func))