diff --git a/FL/Fl.H b/FL/Fl.H index c5f7489af..74f1a9df5 100644 --- a/FL/Fl.H +++ b/FL/Fl.H @@ -1,5 +1,5 @@ // -// "$Id: Fl.H,v 1.8.2.8 2000/06/20 05:47:32 bill Exp $" +// "$Id: Fl.H,v 1.8.2.9 2000/06/21 17:36:33 bill Exp $" // // Main header file for the Fast Light Tool Kit (FLTK). // @@ -91,7 +91,7 @@ public: static FL_EXPORT int run(); static FL_EXPORT Fl_Widget* readqueue(); static FL_EXPORT void add_timeout(double t, Fl_Timeout_Handler,void* = 0); - static FL_EXPORT void add_interval_timeout(double t, Fl_Timeout_Handler,void* = 0); + static FL_EXPORT void repeat_timeout(double t, Fl_Timeout_Handler,void* = 0); static FL_EXPORT int has_timeout(Fl_Timeout_Handler, void* = 0); static FL_EXPORT void remove_timeout(Fl_Timeout_Handler, void* = 0); static FL_EXPORT void add_fd(int fd, int when, void (*cb)(int,void*),void* =0); @@ -214,5 +214,5 @@ public: #endif // -// End of "$Id: Fl.H,v 1.8.2.8 2000/06/20 05:47:32 bill Exp $". +// End of "$Id: Fl.H,v 1.8.2.9 2000/06/21 17:36:33 bill Exp $". // diff --git a/documentation/functions.html b/documentation/functions.html index a79bdd1fd..d2a06357a 100644 --- a/documentation/functions.html +++ b/documentation/functions.html @@ -303,23 +303,25 @@ Add a one-shot timeout callback. The function will be called by Fl::wait() at t seconds after this function is called. The optional void* argument is passed to the callback. -

static void Fl::add_interval_timeout(float t, void (*cb)(void*),void*v=0)

+

static void Fl::repeat_timeout(float t, void (*cb)(void*),void*v=0)

-Add a one-shot timeout callback. The difference from add_timeout is that the time is measured from -when the last timeout callback was called, rather than from the moment -this function is called (if no timeout has been called recently the -time is measured from the next call to Fl::wait). This is designed -for making regularly-spaced timeouts at high speed (like for movie -playback), it also has slightly less system-call overhead than -add_timeout. +Inside a timeout callback you can call this to add another timeout. +Rather than the time being measured from "now", it is measured from +when the system call elapsed that caused this timeout to be called. This +will result in far more accurate spacing of the timeout callbacks, it +also has slightly less system call overhead. (It will also use all +your machine time if your timeout code and fltk's overhead take more +than t seconds, as the real timeout will be reduced to zero). + +

It is undefined what this does if called from outside a timeout +callback.

This code will print "TICK" each second on stdout, with a fair degree of accuracy: