Dont add prefs twice (BrokerPack) when addon is loaded embedded and standalone

This commit is contained in:
robin 2021-05-01 13:59:30 +02:00
parent 4469d04afe
commit 8a94b8290e
1 changed files with 10 additions and 3 deletions

View File

@ -1,4 +1,4 @@
local lib = LibStub:NewLibrary("zzConfig", 5)
local lib = LibStub:NewLibrary("zzConfig", 6)
if not lib then return end
local ldbicon = LibStub:GetLibrary("LibDBIcon-1.0")
local mixins = {'AddConfigMenu', 'AddConfigEntry', 'InitConfig', 'GetDefaultHandler'}
@ -148,6 +148,13 @@ function lib:AddConfigMenu(options, parentName, order, handler, more)
options['args'][parentName] = menu
return options['args'][parentName]
end
lib.AddedToBlizz = lib.AddedToBlizz or {}
local function addToBlizz(pName, cName)
if(not lib['AddedToBlizz'][pName]) then
lib['AddedToBlizz'][pName] = true
LibStub("AceConfigDialog-3.0"):AddToBlizOptions(pName, pName, cName)
end
end
function lib:InitConfig(child, parentName, gp, sp)
child['options'] = {
['name'] = parentName,
@ -162,7 +169,7 @@ function lib:InitConfig(child, parentName, gp, sp)
local par = self:AddConfigMenu(options, parentName)
self:AddLDBIconOptions(par, 'minimap')
LibStub("AceConfig-3.0"):RegisterOptionsTable(parentName, options)
LibStub("AceConfigDialog-3.0"):AddToBlizOptions(parentName, parentName, child['parentName'])
addToBlizz(parentName, child['parentName'])
return options
end
function lib:AddConfig(child, parentName, gp, sp)
@ -179,7 +186,7 @@ function lib:AddConfig(child, parentName, gp, sp)
local par = self:AddConfigMenu(child['options'], specs['name'])
self:AddLDBIconOptions(par, 'minimap')
LibStub("AceConfig-3.0"):RegisterOptionsTable(specs['name'], child['options'])
LibStub("AceConfigDialog-3.0"):AddToBlizOptions(specs['name'], specs['name'], parentName)
addToBlizz(specs['name'], parentName)
return child['options']
end
function lib:Embed(target)