mirror of
https://github.com/brues-code/pfUI.git
synced 2026-10-23 12:30:50 +00:00
core: autoload new modules after bootup
This commit is contained in:
@@ -20,6 +20,9 @@ end
|
|||||||
pfUI = CreateFrame("Frame", nil, UIParent)
|
pfUI = CreateFrame("Frame", nil, UIParent)
|
||||||
pfUI:RegisterEvent("ADDON_LOADED")
|
pfUI:RegisterEvent("ADDON_LOADED")
|
||||||
|
|
||||||
|
-- setup bootvar
|
||||||
|
pfUI.bootup = true
|
||||||
|
|
||||||
-- initialize saved variables
|
-- initialize saved variables
|
||||||
pfUI_playerDB = {}
|
pfUI_playerDB = {}
|
||||||
pfUI_config = {}
|
pfUI_config = {}
|
||||||
@@ -161,6 +164,32 @@ function pfUI:GetEnvironment()
|
|||||||
return pfUI.env
|
return pfUI.env
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function pfUI:RegisterModule(n, f)
|
||||||
|
pfUI.module[n] = f
|
||||||
|
table.insert(pfUI.modules, n)
|
||||||
|
if not pfUI.bootup then
|
||||||
|
pfUI:LoadModule(n)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function pfUI:RegisterSkin(n, f)
|
||||||
|
pfUI.skin[n] = f
|
||||||
|
table.insert(pfUI.skins, n)
|
||||||
|
if not pfUI.bootup then
|
||||||
|
pfUI:LoadSkin(n)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
function pfUI:LoadModule(m)
|
||||||
|
setfenv(pfUI.module[m], pfUI:GetEnvironment())
|
||||||
|
pfUI.module[m]()
|
||||||
|
end
|
||||||
|
|
||||||
|
function pfUI:LoadSkin(s)
|
||||||
|
setfenv(pfUI.skin[s], pfUI:GetEnvironment())
|
||||||
|
pfUI.skin[s]()
|
||||||
|
end
|
||||||
|
|
||||||
pfUI:SetScript("OnEvent", function()
|
pfUI:SetScript("OnEvent", function()
|
||||||
-- some addons overwrite color and font settings
|
-- some addons overwrite color and font settings
|
||||||
-- need to enforce pfUI's selection every time
|
-- need to enforce pfUI's selection every time
|
||||||
@@ -180,33 +209,23 @@ pfUI:SetScript("OnEvent", function()
|
|||||||
pfUI:UpdateFonts()
|
pfUI:UpdateFonts()
|
||||||
|
|
||||||
-- load modules
|
-- load modules
|
||||||
for i,m in pairs(this.modules) do
|
for _, m in pairs(this.modules) do
|
||||||
if not ( pfUI_config["disabled"] and pfUI_config["disabled"][m] == "1" ) then
|
if not ( pfUI_config["disabled"] and pfUI_config["disabled"][m] == "1" ) then
|
||||||
setfenv(pfUI.module[m], pfUI:GetEnvironment())
|
pfUI:LoadModule(m)
|
||||||
pfUI.module[m]()
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
-- load skins
|
-- load skins
|
||||||
for i,s in pairs(this.skins) do
|
for _, s in pairs(this.skins) do
|
||||||
if not ( pfUI_config["disabled"] and pfUI_config["disabled"]["skin_" .. s] == "1" ) then
|
if not ( pfUI_config["disabled"] and pfUI_config["disabled"]["skin_" .. s] == "1" ) then
|
||||||
setfenv(pfUI.skin[s], pfUI:GetEnvironment())
|
pfUI:LoadSkin(s)
|
||||||
pfUI.skin[s]()
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
pfUI.bootup = nil
|
||||||
end
|
end
|
||||||
end)
|
end)
|
||||||
|
|
||||||
function pfUI:RegisterModule(n, f)
|
|
||||||
pfUI.module[n] = f
|
|
||||||
table.insert(pfUI.modules, n)
|
|
||||||
end
|
|
||||||
|
|
||||||
function pfUI:RegisterSkin(n, f)
|
|
||||||
pfUI.skin[n] = f
|
|
||||||
table.insert(pfUI.skins, n)
|
|
||||||
end
|
|
||||||
|
|
||||||
pfUI.backdrop = {
|
pfUI.backdrop = {
|
||||||
bgFile = "Interface\\BUTTONS\\WHITE8X8", tile = false, tileSize = 0,
|
bgFile = "Interface\\BUTTONS\\WHITE8X8", tile = false, tileSize = 0,
|
||||||
edgeFile = "Interface\\BUTTONS\\WHITE8X8", edgeSize = 1,
|
edgeFile = "Interface\\BUTTONS\\WHITE8X8", edgeSize = 1,
|
||||||
|
|||||||
Reference in New Issue
Block a user