File ../../LibScriptableUtils-1.0/LibScriptableUtilsTimer-1.0/LibScriptableUtilsTimer-1.0.lua
Functions
AceTimer:CancelAllTimers () | Cancels all timers registered to the current addon object ('self') |
AceTimer:CancelTimer (handle, silent) | Cancels a timer with the given handle, registered by the same addon object as used for `:ScheduleTimer` Both one-shot and repeating timers can be canceled with this function, as long as the `handle` is valid and the timer has not fired yet or was canceled before. |
AceTimer:ScheduleRepeatingTimer (callback, delay, arg) | Schedule a repeating timer. |
AceTimer:ScheduleTimer (callback, delay, arg) | Schedule a new one-shot timer. |
AceTimer:TimeLeft (handle) | Returns the time left for a timer with the given handle, registered by the current addon object ('self'). |
LibTimer:Del () | Delete a LibTimer object |
LibTimer:New (name, duration, repeating, callback, data, errorLevel) | Create a new LibTimer object |
LibTimer:Start (duration, data, func) | Start a timer. |
LibTimer:Stop () | Stop a timer |
LibTimer:TimeElapsed () | Return how old the timer is since it was started. |
Functions
- AceTimer:CancelAllTimers ()
- Cancels all timers registered to the current addon object ('self')
- AceTimer:CancelTimer (handle, silent)
-
Cancels a timer with the given handle, registered by the same addon object as used for `:ScheduleTimer` Both one-shot and repeating timers can be canceled with this function, as long as the `handle` is valid and the timer has not fired yet or was canceled before.
Parameters
- handle: The handle of the timer, as returned by `:ScheduleTimer` or `:ScheduleRepeatingTimer`
- silent: If true, no error is raised if the timer handle is invalid (expired or already canceled)
Return value:
True if the timer was successfully cancelled. - AceTimer:ScheduleRepeatingTimer (callback, delay, arg)
-
Schedule a repeating timer. The timer will fire every `delay` seconds, until canceled.
Parameters
- callback: Callback function for the timer pulse (funcref or method name).
- delay: Delay for the timer, in seconds.
- arg: An optional argument to be passed to the callback function. @usage MyAddon = LibStub("AceAddon-3.0"):NewAddon("TimerTest", "AceTimer-3.0") function MyAddon:OnEnable() self.timerCount = 0 self.testTimer = self:ScheduleRepeatingTimer("TimerFeedback", 5) end function MyAddon:TimerFeedback() self.timerCount = self.timerCount + 1 print(("%d seconds passed"):format(5 * self.timerCount)) -- run 30 seconds in total if self.timerCount == 6 then self:CancelTimer(self.testTimer) end end
- AceTimer:ScheduleTimer (callback, delay, arg)
-
Schedule a new one-shot timer. The timer will fire once in `delay` seconds, unless canceled before.
Parameters
- callback: Callback function for the timer pulse (funcref or method name).
- delay: Delay for the timer, in seconds.
- arg: An optional argument to be passed to the callback function. @usage MyAddon = LibStub("AceAddon-3.0"):NewAddon("TimerTest", "AceTimer-3.0") function MyAddon:OnEnable() self:ScheduleTimer("TimerFeedback", 5) end function MyAddon:TimerFeedback() print("5 seconds passed") end
- AceTimer:TimeLeft (handle)
-
Returns the time left for a timer with the given handle, registered by the current addon object ('self'). This function will raise a warning when the handle is invalid, but not stop execution.
Parameters
- handle: The handle of the timer, as returned by `:ScheduleTimer` or `:ScheduleRepeatingTimer`
Return value:
The time left on the timer, or false if the handle is invalid. - LibTimer:Del ()
-
Delete a LibTimer object
Usage:
object:Del()Return value:
Nothing - LibTimer:New (name, duration, repeating, callback, data, errorLevel)
-
Create a new LibTimer object
Parameters
- name: A name for this timer object
- duration: The timer's duration in milliseconds.
- repeating: Whether to repeat the timer or not
- callback: Function to call when the timer has expired
- data: Data to pass to the callback
- errorLevel: Error verbosity level
Usage:
LibScriptableTimer:New(name, duration, repeating, callback, data, errorLevel, durationLimit)Return value:
A new LibScriptableTimer object - LibTimer:Start (duration, data, func)
-
Start a timer.
Parameters
- duration: The duration in milliseconds. This is optional. The timer's initialized duration will be replaced by this value.
- data: Replace the timer's data that will be sent through the callback with this value.
- func: Replace the timer's callback function
Usage:
object:Start([duration], [data]) - LibTimer:Stop ()
-
Stop a timer
Usage:
object:Stop()Return value:
True if the timer was stopped - LibTimer:TimeElapsed ()
-
Return how old the timer is since it was started.
Usage:
object:TimeElapsed()Return value:
The remaining duration