Fix global use of some variables
This commit is contained in:
parent
7fe8447326
commit
b677f7bb38
|
@ -80,7 +80,7 @@ lib['events']:SetScript("OnEvent", function(self, event, ...)
|
||||||
if(specs and specs['sv'] and not addon['db']) then
|
if(specs and specs['sv'] and not addon['db']) then
|
||||||
-- print('dbname',type(specs['sv']),type(specs['sv']) == 'boolean' and addonName or specs['sv'])
|
-- print('dbname',type(specs['sv']),type(specs['sv']) == 'boolean' and addonName or specs['sv'])
|
||||||
local dbname = format('%sDB', type(specs['sv']) == 'boolean' and addonName or specs['sv'])
|
local dbname = format('%sDB', type(specs['sv']) == 'boolean' and addonName or specs['sv'])
|
||||||
addon['db'] = LibStub("AceDB-3.0"):New(dbname, type(specs['defaults']) == 'table' and specs['defaults'] or {}, true)
|
addon['db'] = LibStub("AceDB-3.0"):New(dbname, type(specs['defaults']) == 'table' and specs['defaults'] or {}, 'Default')
|
||||||
if(specs['ldb']) then
|
if(specs['ldb']) then
|
||||||
local ldbobj = LibStub:GetLibrary("zzLDB"):AddLDB(specs['name'], specs['ldb'], addon['db'])
|
local ldbobj = LibStub:GetLibrary("zzLDB"):AddLDB(specs['name'], specs['ldb'], addon['db'])
|
||||||
end
|
end
|
||||||
|
@ -88,13 +88,9 @@ lib['events']:SetScript("OnEvent", function(self, event, ...)
|
||||||
local config = LibStub:GetLibrary("zzConfig")
|
local config = LibStub:GetLibrary("zzConfig")
|
||||||
addon['options'] = config:InitConfig(addon, addonName)
|
addon['options'] = config:InitConfig(addon, addonName)
|
||||||
addon['options']['args']['profile'] = LibStub("AceDBOptions-3.0"):GetOptionsTable(addon['db'])
|
addon['options']['args']['profile'] = LibStub("AceDBOptions-3.0"):GetOptionsTable(addon['db'])
|
||||||
function addon:RefreshConfig()
|
if(type(specs['cfgReset']) == 'function') then
|
||||||
self['db']['profile'][specs['name']] = {}
|
addon['db'].RegisterCallback(specs, "OnProfileReset", 'cfgReset')
|
||||||
if(specs['cfgRefresh']) then
|
|
||||||
self['specs']['cfgRefresh'](addon['db'])
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
addon['db'].RegisterCallback(addon, "OnProfileReset", "RefreshConfig")
|
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -31,6 +31,11 @@ local function minimapSet(pref,value)
|
||||||
db[pref[#pref]] = value
|
db[pref[#pref]] = value
|
||||||
ldbiconUpdate(objname)
|
ldbiconUpdate(objname)
|
||||||
end
|
end
|
||||||
|
local function notify(pref, value, oldvalue)
|
||||||
|
if(type(pref['handler'].PrefChanged) == 'function') then
|
||||||
|
pref['handler']:PrefChanged(pref, value, oldvalue)
|
||||||
|
end
|
||||||
|
end
|
||||||
local function getPref(pref)
|
local function getPref(pref)
|
||||||
if(type(pref['handler']['GetPref']) == 'function') then
|
if(type(pref['handler']['GetPref']) == 'function') then
|
||||||
-- print("use handler getpref", pref[#pref])
|
-- print("use handler getpref", pref[#pref])
|
||||||
|
@ -46,7 +51,11 @@ local function setPref(pref,value)
|
||||||
if(type(pref['handler']['SetPref']) == 'function') then
|
if(type(pref['handler']['SetPref']) == 'function') then
|
||||||
pref['handler']:SetPref(pref,value)
|
pref['handler']:SetPref(pref,value)
|
||||||
else
|
else
|
||||||
|
local oldvalue = pref['handler']['db']['profile'][pref[#pref-1]][pref[#pref]]
|
||||||
pref['handler']['db']['profile'][pref[#pref-1]][pref[#pref]] = value
|
pref['handler']['db']['profile'][pref[#pref-1]][pref[#pref]] = value
|
||||||
|
if(value ~= oldvalue) then
|
||||||
|
notify(pref, value, oldvalue)
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
function lib:AddLDBIconOptions(options, conf)
|
function lib:AddLDBIconOptions(options, conf)
|
||||||
|
@ -105,8 +114,8 @@ function lib:AddConfigEntry(options, ...)
|
||||||
}
|
}
|
||||||
end
|
end
|
||||||
options['args'][input[1]] = menu
|
options['args'][input[1]] = menu
|
||||||
|
return menu
|
||||||
end
|
end
|
||||||
return menu
|
|
||||||
end
|
end
|
||||||
function lib:AddConfigMenu(options, parentName, handler, order, more)
|
function lib:AddConfigMenu(options, parentName, handler, order, more)
|
||||||
local menu = {
|
local menu = {
|
||||||
|
|
|
@ -15,25 +15,24 @@ function lib:GetLDB(objname)
|
||||||
return ldb:GetDataObjectByName(objname)
|
return ldb:GetDataObjectByName(objname)
|
||||||
end
|
end
|
||||||
function lib:AddLDB(objname, obj, db)
|
function lib:AddLDB(objname, obj, db)
|
||||||
local obj = obj or {}
|
local obj = obj or {}
|
||||||
obj['type'] = obj['type'] or 'launcher'
|
obj['type'] = obj['type'] or 'launcher'
|
||||||
obj['text'] = obj['text'] or objname
|
obj['text'] = obj['text'] or objname
|
||||||
if(obj['type '] == 'launcher') then
|
if(obj['type '] == 'launcher') then
|
||||||
obj['OnClick'] = obj['OnClick'] or proto_OnClick
|
obj['OnClick'] = obj['OnClick'] or proto_OnClick
|
||||||
end
|
end
|
||||||
if(ldb) then
|
if(ldb) then
|
||||||
local ldbobj = ldb:GetDataObjectByName(objname) or ldb:NewDataObject(objname, obj)
|
local ldbobj = ldb:GetDataObjectByName(objname) or ldb:NewDataObject(objname, obj)
|
||||||
if(ldbobj) then
|
if(ldbobj) then
|
||||||
if(not ldbicon:IsRegistered(objname)) then
|
if(not ldbicon:IsRegistered(objname)) then
|
||||||
db['global']['ldbicons'] = db['global']['ldbicons'] or {}
|
db['global']['ldbicons'] = db['global']['ldbicons'] or {}
|
||||||
local sb = db['global']['ldbicons']
|
local sb = db['global']['ldbicons']
|
||||||
sb[objname] = sb[objname] or CopyTable(defaults)
|
sb[objname] = sb[objname] or CopyTable(defaults)
|
||||||
-- print('reg', objname)
|
ldbicon:Register(objname, ldbobj, sb[objname])
|
||||||
ldbicon:Register(objname, ldbobj, sb[objname])
|
|
||||||
end
|
|
||||||
end
|
end
|
||||||
|
return ldbobj
|
||||||
end
|
end
|
||||||
return ldbobj
|
end
|
||||||
end
|
end
|
||||||
function lib:Embed(target)
|
function lib:Embed(target)
|
||||||
for _,name in pairs(mixins) do
|
for _,name in pairs(mixins) do
|
||||||
|
|
Loading…
Reference in New Issue