Updaated LibAnimation-1.0 standalone

Pawkette [03-13-14 - 06:37]
Updaated LibAnimation-1.0 standalone
Filename
LibAnimation.lua
LibStub.txt
LibStub/LibStub.lua
diff --git a/LibAnimation.lua b/LibAnimation.lua
index c9a4526..4bf99ab 100644
--- a/LibAnimation.lua
+++ b/LibAnimation.lua
@@ -40,9 +40,20 @@ local defaultEase = ZO_LinearEase
 -- @tparam number loopCount (optional)
 -- @treturn LibAnimation object
 function LibAnimation:New( control, playbackType, loopCount )
-    local self = {}
-    self:Initialize( control, playbackType, loopCount )
-    return self
+    local result    = setmetatable( {}, self )
+    local mt        = getmetatable( result )
+    mt.__index      = self
+
+    if ( not playbackType ) then
+        playbackType = 0
+    end
+
+    if ( not loopCount ) then
+        loopCount = 0
+    end
+
+    result:Initialize( control, playbackType, loopCount )
+    return result
 end

 --- Animation Constructor
@@ -50,9 +61,18 @@ end
 -- @tparam number playbackType (optional)
 -- @tparam number loopCount (optional)
 function LibAnimation:Initialize( control, playbackType, loopCount )
-    self.control = control
-    self.timeline = AnimationMgr:CreateTimeline()
-    self.timeline:SetPlaybackType( playbackType or ANIMATION_PLAYBACK_ONE_SHOT, loopCount or 0 )
+    self.control    = control
+    self.timeline   = AnimationMgr:CreateTimeline()
+    self.timeline:SetPlaybackType( playbackType, loopCount )
+end
+
+--- Allows you to add a callback at a certain point in the timeline
+-- @tparam function fn
+-- @tparam number delay how long to wait before calling
+function LibAnimation:InsertCallback( fn, delay )
+    if ( self.timeline ) then
+        self.timeline:InsertCallback( fn, delay )
+    end
 end

 --- Stop the animation
@@ -163,11 +183,9 @@ end
 -- @tparam number duration
 -- @tparam number delay (optional)
 -- @tparam function fn easing function (optional)
-[[function LibAnimation:ScrollTo( x, y, duration, delay, fn )
+--[[function LibAnimation:ScrollTo( x, y, duration, delay, fn )
     local anim = self:GetOrCreate( ANIMATION_SCROLL, delay )

     anim:SetDuration( duration or 1 )
     anim:SetEasingFunction( fn or defaultEase )
-end]]
-
-setmetatable( LibAnimation, { __call = function( ... ) return LibAnimation:New( ... ) end } )
\ No newline at end of file
+end]]
\ No newline at end of file
diff --git a/LibStub.txt b/LibStub.txt
deleted file mode 100644
index c39ae90..0000000
--- a/LibStub.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-## APIVersion: 100000
-## Title: LibStub
-## Notes: Universal Library Stub
-## Credits: Kaelten, Cladhaire, ckknight, Mikk, Ammo, Nevcairiel, ported to ESO by Seerah
-## Version: 1.0.1
-
-LibStub\LibStub.lua
\ No newline at end of file
diff --git a/LibStub/LibStub.lua b/LibStub/LibStub.lua
deleted file mode 100644
index 4c509a5..0000000
--- a/LibStub/LibStub.lua
+++ /dev/null
@@ -1,34 +0,0 @@
--- LibStub is a simple versioning stub meant for use in Libraries.  http://www.wowace.com/wiki/LibStub for more info
--- LibStub is hereby placed in the Public Domain Credits: Kaelten, Cladhaire, ckknight, Mikk, Ammo, Nevcairiel, joshborke
--- LibStub developed for World of Warcraft by above members of the WowAce community.
--- Ported to Elder Scrolls Online by Seerah
-
-local LIBSTUB_MAJOR, LIBSTUB_MINOR = "LibStub", 1  -- NEVER MAKE THIS AN SVN REVISION! IT NEEDS TO BE USABLE IN ALL REPOS!
-local LibStub = _G[LIBSTUB_MAJOR]
-
-local strformat = string.format
-if not LibStub or LibStub.minor < LIBSTUB_MINOR then
-	LibStub = LibStub or {libs = {}, minors = {} }
-	_G[LIBSTUB_MAJOR] = LibStub
-	LibStub.minor = LIBSTUB_MINOR
-
-	function LibStub:NewLibrary(major, minor)
-		assert(type(major) == "string", "Bad argument #2 to `NewLibrary' (string expected)")
-		minor = assert(tonumber(zo_strmatch(minor, "%d+")), "Minor version must either be a number or contain a number.")
-
-		local oldminor = self.minors[major]
-		if oldminor and oldminor >= minor then return nil end
-		self.minors[major], self.libs[major] = minor, self.libs[major] or {}
-		return self.libs[major], oldminor
-	end
-
-	function LibStub:GetLibrary(major, silent)
-		if not self.libs[major] and not silent then
-			error(("Cannot find a library instance of %q."):strformat(tostring(major)), 2)
-		end
-		return self.libs[major], self.minors[major]
-	end
-
-	function LibStub:IterateLibraries() return pairs(self.libs) end
-	setmetatable(LibStub, { __call = LibStub.GetLibrary })
-end