annotate DependencyLoader_Bootstrap/bootstrap.lua @ 10:e0a4a8b5b389

lots more modifications...
author mckenziemc
date Sun, 05 Dec 2010 03:10:07 -0800
parents 5362e308c3eb
children b230b94d4487
rev   line source
mckenziemc@0 1 -- bootstrap.lua
mckenziemc@0 2 -- Bootstrap code for DependencyLoader, allowing
mckenziemc@0 3 -- the user to successfully load it without
mckenziemc@0 4 -- explicitly enabling its own dependencies.
mckenziemc@0 5
mckenziemc@0 6
mckenziemc@0 7 local addonName, addonTable = ...
mckenziemc@0 8
mckenziemc@10 9
mckenziemc@10 10 print("loading DependencyLoader_Bootstrap")
mckenziemc@10 11
mckenziemc@0 12 -- TODO: move and use dependency parsing function here?
mckenziemc@10 13 local dependencies = {"LibStub", "Ace3", "LibBuilder-1.0", "LibPrint-1.0", "LibScriptLink-1.0"}
mckenziemc@0 14
mckenziemc@0 15 local canLoad = true
mckenziemc@0 16 for _, addon in pairs(dependencies) do
mckenziemc@0 17 local reason = select(6, GetAddOnInfo(addon))
mckenziemc@0 18
mckenziemc@10 19 if reason ~= nil and reason ~= "DISABLED" and reason ~= "DEP_DISABLED" then
mckenziemc@10 20 print("Can't load", addon)
mckenziemc@0 21 canLoad = false
mckenziemc@0 22 break
mckenziemc@0 23 end
mckenziemc@0 24 end
mckenziemc@0 25
mckenziemc@0 26 if not canLoad then
mckenziemc@0 27 print("Can't load DependencyLoader")
mckenziemc@0 28 return
mckenziemc@0 29 end
mckenziemc@0 30
mckenziemc@0 31
mckenziemc@10 32 print("bootstrap: Loading DependencyLoader")
mckenziemc@0 33
mckenziemc@0 34 for _, addon in pairs(dependencies) do
mckenziemc@0 35 EnableAddOn(addon)
mckenziemc@10 36 LoadAddOn(addon)
mckenziemc@0 37 end
mckenziemc@0 38
mckenziemc@10 39 EnableAddOn("DependencyLoader")
mckenziemc@10 40 LoadAddOn("DependencyLoader")
mckenziemc@0 41