End timer call

On 01/03/2013 at 00:16, xxxxxxxx wrote:

User Information:
Cinema 4D Version:   R14 
Platform:   Windows  ;   
Language(s) :

Hi Folks,
how do you end a timer call in a Dialog/UserArea? I can see how to set it (and it's working), but not how to end it..

On 01/03/2013 at 00:36, xxxxxxxx wrote:


You have to call SetTimer(0) :

Note: Use SetTimer(0) to stop the clock.

This is mentioned in the documentation for GeDialog::Timer() and GeDialog::SetTimer() but not GeUserArea::Timer() and GeUserArea::SetTimer(). I'll add the note for the later methods too.

On 03/03/2013 at 19:51, xxxxxxxx wrote:

Thank Yannick, that seems to of done the trick!

On 22/01/2014 at 19:06, xxxxxxxx wrote:

Just another query on this one, is the Timer() routine affected by other things that might go on as a result of the timer() period? Example:

If I call SetTimer(1000) and as a result of that call I have a number of user areas redrawn, does the redraw of these add to the time period for the next timer to be called? If it takes 500ms to redraw all the userareas, does the next timer call then not really occur until more towards 1500ms? Or does the timer run in a separate thread from other operations like user area redraws etc?

I ask because I'm running a simple experiment trying to set my timer to run for the equivalent of 60 seconds, but when compared to my stop watch the dialog time is only able to make it to 40 seconds, and I'm wondering if the user area redraw times are not taken into account when making the next timer call (and hence extending the time progress of the timer routine).



On 11/02/2014 at 18:59, xxxxxxxx wrote:

Just an update on this, it appears that the above scenario might be the case.

I've instead built my own custom timing function (running on it's own thread) that runs concurrently to other calls (like redraws), and does not appear to be affected by the above scenario.