Files
coa-elvui/ElvUI_AddOnSkins/Skins/Addons/ZOMGBuffs.lua
T

144 lines
3.5 KiB
Lua

local E, L, V, P, G = unpack(ElvUI)
local S = E:GetModule("Skins")
local AS = E:GetModule("AddOnSkins")
if not AS:IsAddonLODorEnabled("ZOMGBuffs") then return end
local pairs = pairs
local unpack = unpack
-- ZOMGBuffs r156
-- https://www.wowace.com/projects/zomgbuffs/files/424938
S:AddCallbackForAddon("ZOMGBuffs", "ZOMGBuffs", function()
if not E.private.addOnSkins.ZOMGBuffs then return end
if ZOMGBuffsButton then
ZOMGBuffsButton:SetNormalTexture(nil)
ZOMGBuffsButton.SetNormalTexture = E.noop
ZOMGBuffsButton:SetHighlightTexture(nil)
ZOMGBuffsButton:SetPushedTexture(nil)
else
S:SecureHook(ZOMGBuffs, "OnStartup", function(self)
self.icon:SetNormalTexture(nil)
self.icon.SetNormalTexture = E.noop
self.icon:SetHighlightTexture(nil)
self.icon:SetPushedTexture(nil)
S:Unhook(ZOMGBuffs, "OnStartup")
end)
end
S:RawHook(ZOMGBuffs, "CreateHelpFrame", function(self)
local frame = S.hooks[self].CreateHelpFrame(self)
frame:SetScale(E:Scale(0.9))
frame:SetTemplate("Transparent")
frame.close:StripTextures()
S:HandleButton((frame:GetChildren()))
S:Unhook(ZOMGBuffs, "CreateHelpFrame")
return frame
end, true)
AS:SkinLibrary("AceAddon-2.0")
AS:SkinLibrary("Dewdrop-2.0")
AS:SkinLibrary("Tablet-2.0")
AS:SkinLibrary("ZFrame-1.0")
end)
S:AddCallbackForAddon("ZOMGBuffs_BlessingsManager", "ZOMGBuffs_BlessingsManager", function()
if not E.private.addOnSkins.ZOMGBuffs then return end
local ZBM = ZOMGBuffs:GetModule("ZOMGBlessingsManager", true)
if not ZBM then return end
S:SecureHook(ZBM, "SplitInitialize", function(self)
local frame = self.splitframe
S:HandleButton(frame.autoButton)
S:HandleCheckBox(frame.useGuild)
for i = 1, #frame.column do
frame.column[i]:SetTemplate("Transparent")
S:HandleScrollBar(frame.column[i].scroll.bar)
for j = 1, 10 do
frame.column[i].list[j].icon:SetTexCoord(unpack(E.TexCoords))
end
end
end)
S:RawHook(ZBM, "CreateMainMainFrame", function(self)
local frame = S.hooks[self].CreateMainMainFrame(self)
S:HandleButton(frame.configure)
S:HandleButton(frame.help)
S:HandleButton(frame.generate)
S:HandleButton(frame.broadcast)
S:HandleButton(frame.groups)
S:HandleButton(frame.autoroles)
for _, button in pairs(frame.classTitle.cell) do
button.highlightTex:SetTexture(1, 1, 1, 0.3)
end
S:Unhook(ZOMGBlessingsManager, "CreateMainMainFrame")
return frame
end)
local function SkinActionButton(button)
if button.isSkinned then return end
button:StyleButton()
button:SetTemplate("Default")
button:SetNormalTexture(nil)
button.SetNormalTexture = E.noop
button.icon:SetTexCoord(unpack(E.TexCoords))
button.icon:SetInside()
button.icon:SetDrawLayer("ARTWORK")
button.isSkinned = true
end
S:SecureHook(ZBM, "SplitPanelColumnPopulate", function(self, col)
if not self.expandpanel.class then return end
for i in pairs(col.cell) do
SkinActionButton(col.cell[i])
end
end)
S:SecureHook(ZBM, "DrawAll", function(self)
if not self.configuring then return end
local f = self.frame
for i = 1, #f.row do
for j in pairs(f.row[i].cell) do
SkinActionButton(f.row[i].cell[j])
end
end
S:Unhook(ZBM, "DrawAll")
end)
end)
S:AddCallbackForAddon("ZOMGBuffs_Log", "ZOMGBuffs_Log", function()
if not E.private.addOnSkins.ZOMGBuffs then return end
local ZL = ZOMGBuffs:GetModule("ZOMGLog", true)
if not ZL then return end
S:RawHook(ZL, "CreateLogFrame", function(self)
local frame = S.hooks[self].CreateLogFrame(self)
S:HandleScrollBar(frame.scrollBar.slider)
frame.scrollBar.slider:Height(24)
return frame
end, true)
end)