Support per-class frame display names, rename Pyromancer segment bar to Ember gauge
This commit is contained in:
@@ -34,6 +34,19 @@ HideCoAUI.FRAMES = {
|
|||||||
-- "CoASpellActivationOverlay", -- found via full frame scan, deliberately left without a checkbox
|
-- "CoASpellActivationOverlay", -- found via full frame scan, deliberately left without a checkbox
|
||||||
}
|
}
|
||||||
|
|
||||||
|
HideCoAUI.FRAME_DISPLAY_NAMES = {
|
||||||
|
PYROMANCER = {
|
||||||
|
CoAResourceSegmentBar = "Ember gauge",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
|
||||||
|
local function GetFrameDisplayName(class, frameName)
|
||||||
|
local classNames = HideCoAUI.FRAME_DISPLAY_NAMES[class]
|
||||||
|
return classNames and classNames[frameName]
|
||||||
|
end
|
||||||
|
|
||||||
|
HideCoAUI.GetFrameDisplayName = GetFrameDisplayName
|
||||||
|
|
||||||
local function CreateDefaultClassSettings()
|
local function CreateDefaultClassSettings()
|
||||||
|
|
||||||
local classSettings = {}
|
local classSettings = {}
|
||||||
|
|||||||
+47
-6
@@ -196,6 +196,27 @@ local TAB_HEIGHT = 18
|
|||||||
|
|
||||||
local hideClassButton, showClassButton
|
local hideClassButton, showClassButton
|
||||||
|
|
||||||
|
local function GetOrderedFrameNames(class)
|
||||||
|
|
||||||
|
local named = {}
|
||||||
|
local generic = {}
|
||||||
|
|
||||||
|
for _, frameName in ipairs(HideCoAUI.FRAMES) do
|
||||||
|
if HideCoAUI.GetFrameDisplayName(class, frameName) then
|
||||||
|
table.insert(named, frameName)
|
||||||
|
else
|
||||||
|
table.insert(generic, frameName)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
for _, frameName in ipairs(generic) do
|
||||||
|
table.insert(named, frameName)
|
||||||
|
end
|
||||||
|
|
||||||
|
return named
|
||||||
|
|
||||||
|
end
|
||||||
|
|
||||||
local function SelectClass(class)
|
local function SelectClass(class)
|
||||||
|
|
||||||
selectedClass = class
|
selectedClass = class
|
||||||
@@ -219,20 +240,40 @@ local function SelectClass(class)
|
|||||||
overrideNoticeText:Hide()
|
overrideNoticeText:Hide()
|
||||||
end
|
end
|
||||||
|
|
||||||
for _, frameName in ipairs(HideCoAUI.FRAMES) do
|
local previousCheckAnchor = classLabelHeader
|
||||||
|
local previousCheckSpacing = -19
|
||||||
|
local previousCheckXOffset = 16
|
||||||
|
|
||||||
checks[frameName]:SetChecked(HideCoAUI.GetClassSettings()[class][frameName])
|
for _, frameName in ipairs(GetOrderedFrameNames(class)) do
|
||||||
|
|
||||||
|
local check = checks[frameName]
|
||||||
|
|
||||||
|
check:ClearAllPoints()
|
||||||
|
check:SetPoint("TOPLEFT", previousCheckAnchor, "BOTTOMLEFT", previousCheckXOffset, previousCheckSpacing)
|
||||||
|
|
||||||
|
local customName = HideCoAUI.GetFrameDisplayName(class, frameName)
|
||||||
|
local label = customName and ("Hide " .. customName .. " (" .. frameName .. ")") or ("Hide " .. frameName)
|
||||||
|
_G[check:GetName() .. "Text"]:SetText(label)
|
||||||
|
|
||||||
|
check:SetChecked(HideCoAUI.GetClassSettings()[class][frameName])
|
||||||
|
|
||||||
if overridden then
|
if overridden then
|
||||||
checks[frameName]:Disable()
|
check:Disable()
|
||||||
_G[checks[frameName]:GetName() .. "Text"]:SetTextColor(0.5, 0.5, 0.5)
|
_G[check:GetName() .. "Text"]:SetTextColor(0.5, 0.5, 0.5)
|
||||||
else
|
else
|
||||||
checks[frameName]:Enable()
|
check:Enable()
|
||||||
_G[checks[frameName]:GetName() .. "Text"]:SetTextColor(1, 1, 1)
|
_G[check:GetName() .. "Text"]:SetTextColor(1, 1, 1)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
previousCheckAnchor = check
|
||||||
|
previousCheckSpacing = -8
|
||||||
|
previousCheckXOffset = 0
|
||||||
|
|
||||||
end
|
end
|
||||||
|
|
||||||
|
hideClassButton:ClearAllPoints()
|
||||||
|
hideClassButton:SetPoint("TOPLEFT", previousCheckAnchor, "BOTTOMLEFT", 0, -16)
|
||||||
|
|
||||||
if overridden then
|
if overridden then
|
||||||
hideClassButton:Disable()
|
hideClassButton:Disable()
|
||||||
showClassButton:Disable()
|
showClassButton:Disable()
|
||||||
|
|||||||
Reference in New Issue
Block a user