This library is implemented based on the design of WoW's UIFlash and UIFade functions.
LibFlash implements frame fading and flashing.
All durations are in seconds format, so 0.3 is equal to 300 milliseconds.
Usage:
local LibFlash = LibStub("LIbFlash")
local frame = CreateFrame("Frame")
-- do things to the frame so it'll display
local background = LibFlash:New(frame)
background:FadeIn(.3, 0, 1)
Methods:
LibFlash:New(frame)
@argument frame The frame that will have its alpha manipulated.
@return A new LibFlash object.
Description: Create a new LibFlash object.
LibFlash:Del()
@return None
Description: Recycles a LibFlash object.
LibFlash:FadeIn(dur, start, finish, callback, data)
@argument dur Number - The fade's duration.
@argument start Number - The starting alpha value.
@argument end Number - The ending alpha value.
@argument callback Function - You can specify a function to be called when the fade in is finished.
@argument data Unknown - This will be passed to the callback function when it's called.
@return None
Description: Fade this object's target frame starting with 'start' alpha and ending with 'finish' alpha.
LibFlash:FadeOut(dur, start, finish, callback, data)
@argument dur Number - The fade's duration.
@argument start Number - The starting alpha value.
@argument end Number - The ending alpha value.
@argument callback Function - You can specify a function to be called when the fade in is finished.
@argument data Unknown - This will be passed to the callback function when it's called.
@return None
Description: Fade this object's target frame starting with 'start' alpha and ending with 'finish' alpha.
LibFlash:Flash(fadeInTime, fadeOutTime, flashDuration, showWhenDone, flashInHoldTime, flashOutHoldTime, shouldBlink, blinkRate, callback, data )
@argument fadeInTime Number - duration of the fade in effect.
@argument fadeOutTime Number - duration of the fade out effect.
@argument flashDuration Number - number of seconds to keep repeating the fade in / out cycle.
@argument showWhenDone Boolean - should the frame be visible at the end?
@argument flashInHoldTime Number - number of seconds to hold the fully hidden state.
@argument flashOutHoldTime Number - number of seconds to hold the fully visible state.
@argument shouldBlink Boolean - Should this alarm blink
@argument blinkRate Number - Rate at which the alarm will blink.
@argument callback Function - Will be called when the flash finishes.
@argument data Unknown - Data to be passed to the callback.
@return None
Description: Flash a frame in and then out.