You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

87 lines
2.7 KiB

local E, L, V, P, G = unpack(ElvUI)
local S = E:GetModule('Skins')
local _G = _G
local next = next
local hooksecurefunc = hooksecurefunc
local GetItemInfo = (C_Item and C_Item.GetItemInfo) or GetItemInfo
local GetItemQualityColor = (C_Item and C_Item.GetItemQualityColor) or GetItemQualityColor
local function SkinTab(tab)
tab.Left:SetAlpha(0)
if tab.Middle then
tab.Middle:SetAlpha(0)
end
tab.Right:SetAlpha(0)
end
function S:Blizzard_BlackMarketUI()
if not (E.private.skins.blizzard.enable and E.private.skins.blizzard.bmah) then return end
local BlackMarketFrame = _G.BlackMarketFrame
BlackMarketFrame:StripTextures()
BlackMarketFrame:SetTemplate('Transparent')
BlackMarketFrame.Inset:StripTextures()
BlackMarketFrame.Inset:SetTemplate('Transparent')
S:HandleCloseButton(BlackMarketFrame.CloseButton)
S:HandleTrimScrollBar(BlackMarketFrame.ScrollBar)
SkinTab(BlackMarketFrame.ColumnName)
SkinTab(BlackMarketFrame.ColumnLevel)
SkinTab(BlackMarketFrame.ColumnType)
SkinTab(BlackMarketFrame.ColumnDuration)
SkinTab(BlackMarketFrame.ColumnHighBidder)
SkinTab(BlackMarketFrame.ColumnCurrentBid)
BlackMarketFrame.MoneyFrameBorder:StripTextures()
S:HandleEditBox(_G.BlackMarketBidPriceGold)
_G.BlackMarketBidPriceGold.backdrop:Point('TOPLEFT', -2, 0)
_G.BlackMarketBidPriceGold.backdrop:Point('BOTTOMRIGHT', -2, 0)
S:HandleButton(BlackMarketFrame.BidButton)
BlackMarketFrame.ColumnName:ClearAllPoints()
BlackMarketFrame.ColumnName:Point('TOPLEFT', BlackMarketFrame.TopLeftCorner, 25, -50)
hooksecurefunc('BlackMarketScrollFrame_Update', function()
for _, button in next, { BlackMarketFrame.ScrollBox.ScrollTarget:GetChildren() } do
if not button.skinned then
S:HandleItemButton(button.Item)
S:HandleIconBorder(button.Item.IconBorder)
button:StripTextures()
button:StyleButton(nil, true)
button.Selection:SetColorTexture(0.9, 0.8, 0.1, 0.3)
button.skinned = true
end
end
end)
for _, region in next, { BlackMarketFrame:GetRegions() } do
if region:IsObjectType('FontString') and region:GetText() == _G.BLACK_MARKET_TITLE then
region:ClearAllPoints()
region:Point('TOP', BlackMarketFrame, 'TOP', 0, -4)
end
end
BlackMarketFrame.HotDeal:StripTextures()
BlackMarketFrame.HotDeal:SetTemplate('Transparent')
S:HandleItemButton(BlackMarketFrame.HotDeal.Item, true)
S:HandleIconBorder(BlackMarketFrame.HotDeal.Item.IconBorder)
hooksecurefunc('BlackMarketFrame_UpdateHotItem', function(s)
local deal = s.HotDeal
local link = deal and deal.Name and deal:IsShown() and deal.itemLink
if link then
local _, _, quality = GetItemInfo(link)
local r, g, b = GetItemQualityColor(quality)
deal.Name:SetTextColor(r, g, b)
end
end)
end
S:AddCallbackForAddon('Blizzard_BlackMarketUI')