api: make pfUI env available in globalspace

This commit is contained in:
shagu
2017-07-02 22:54:05 +02:00
parent 6a015b5a47
commit 34e3926349
2 changed files with 9 additions and 8 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
pfUI.api = { } pfUI.api = { }
pfUI.api._G = getfenv(0)
local _G = getfenv(0) local _G = getfenv(0)
local T, C, L = pfUI.env.T, pfUI.env.C, pfUI.env.L
-- [ strsplit ] -- [ strsplit ]
-- Splits a string using a delimiter. -- Splits a string using a delimiter.
+8 -7
View File
@@ -41,6 +41,7 @@ pfUI.environment = {}
pfUI.movables = {} pfUI.movables = {}
pfUI.version = {} pfUI.version = {}
pfUI.hooks = {} pfUI.hooks = {}
pfUI.env = {}
pfUI_playerDB = {} pfUI_playerDB = {}
pfUI_config = {} pfUI_config = {}
@@ -78,17 +79,17 @@ pfUI:SetScript("OnEvent", function()
pfUI.environment:UpdateColors() pfUI.environment:UpdateColors()
-- unify module environment -- unify module environment
local env_pfui = {} setmetatable(pfUI.env, {__index = getfenv(0)})
setmetatable(env_pfui, {__index = getfenv(0)})
-- load api into environment -- load api into environment
for m, func in pairs(pfUI.api) do for m, func in pairs(pfUI.api) do
env_pfui[m] = func pfUI.env[m] = func
end end
env_pfui.C = pfUI_config pfUI.env._G = getfenv(0)
env_pfui.L = pfUI_locale[GetLocale()] or pfUI_locale["enUS"] pfUI.env.C = pfUI_config
env_pfui.T = setmetatable(pfUI_translation[GetLocale()] or {}, { __index = function(tab,key) pfUI.env.L = pfUI_locale[GetLocale()] or pfUI_locale["enUS"]
pfUI.env.T = setmetatable(pfUI_translation[GetLocale()] or {}, { __index = function(tab,key)
local value = tostring(key) local value = tostring(key)
rawset(tab,key,value) rawset(tab,key,value)
return value return value
@@ -99,7 +100,7 @@ pfUI:SetScript("OnEvent", function()
if pfUI_config["disabled"] and pfUI_config["disabled"][m] == "1" then if pfUI_config["disabled"] and pfUI_config["disabled"][m] == "1" then
-- message("DEBUG: module " .. m .. " has been disabled") -- message("DEBUG: module " .. m .. " has been disabled")
else else
setfenv(pfUI.module[m], env_pfui) setfenv(pfUI.module[m], pfUI.env)
pfUI.module[m]() pfUI.module[m]()
end end
end end