|
function SharedTooltip_InitBackdropForTooltip(tooltip) |
|
local nineSlice = SharedTooltip_GetNineSliceFrame(tooltip); |
|
Mixin(nineSlice, BackdropTemplateMixin); |
|
nineSlice:SetScript("OnSizeChanged", nineSlice.OnSizeChanged); |
|
|
|
nineSlice.backdropInfo = tooltip.backdropInfo; |
|
nineSlice.backdropColor = tooltip.backdropColor; |
|
nineSlice.backdropColorAlpha = tooltip.backdropColorAlpha; |
|
nineSlice.backdropBorderColor = tooltip.backdropBorderColor; |
|
nineSlice.backdropBorderColorAlpha = tooltip.backdropBorderColorAlpha; |
|
nineSlice.backdropBorderBlendMode = tooltip.backdropBorderBlendMode; |
|
|
|
nineSlice:OnBackdropLoaded(); |
|
end |
|
|
|
function SharedTooltip_GetNineSliceFrame(tooltip) |
|
return tooltip.NineSlice or tooltip; |
|
end |
|
|
|
function SharedTooltip_ApplyBackdrop(tooltip) |
|
local nineSlice = SharedTooltip_GetNineSliceFrame(tooltip); |
|
nineSlice:ApplyBackdrop(); |
|
end |
|
|
|
function SharedTooltip_GetBackdrop(tooltip) |
|
local nineSlice = SharedTooltip_GetNineSliceFrame(tooltip); |
|
return nineSlice:GetBackdrop(); |
|
end |
|
|
|
function SharedTooltip_SetBackdrop(tooltip, backdropInfo) |
|
local nineSlice = SharedTooltip_GetNineSliceFrame(tooltip); |
|
nineSlice:SetBackdrop(backdropInfo); |
|
end |
|
|
|
function SharedTooltip_GetBackdropColor(tooltip) |
|
local nineSlice = SharedTooltip_GetNineSliceFrame(tooltip); |
|
return nineSlice:GetBackdropColor(); |
|
end |
|
|
|
function SharedTooltip_SetBackdropColor(tooltip, r, g, b, a) |
|
local nineSlice = SharedTooltip_GetNineSliceFrame(tooltip); |
|
nineSlice:SetBackdropColor(r, g, b, a); |
|
end |
|
|
|
function SharedTooltip_GetBackdropBorderColor(tooltip) |
|
local nineSlice = SharedTooltip_GetNineSliceFrame(tooltip); |
|
return nineSlice:GetBackdropBorderColor(); |
|
end |
|
|
|
function SharedTooltip_SetBackdropBorderColor(tooltip, r, g, b, a) |
|
local nineSlice = SharedTooltip_GetNineSliceFrame(tooltip); |
|
nineSlice:SetBackdropBorderColor(r, g, b, a); |
|
end |
|
|
|
--- |
|
|
|
local TestTooltip = CreateFrame("GameTooltip", "TestTooltip", UIParent, "GameTooltipTemplate"); |
|
GameTooltip_SetDefaultAnchor(TestTooltip, UIParent); |
|
TestTooltip:SetMinimumWidth(128, true); |
|
TestTooltip:SetText("Hello!", 1, 1, 1, nil, true); |
|
|
|
SharedTooltip_InitBackdropForTooltip(TestTooltip); |
|
SharedTooltip_SetBackdrop(TestTooltip, |
|
{ |
|
bgFile = [[Interface\Buttons\WHITE8X8]], |
|
edgeFile = [[Interface\Buttons\WHITE8X8]], |
|
tile = true, |
|
tileEdge = true, |
|
tileSize = 8, |
|
edgeSize = 8, |
|
} |
|
); |
|
SharedTooltip_SetBackdropColor(TestTooltip, 1, 0, 0, 0.5); |
|
SharedTooltip_SetBackdropBorderColor(TestTooltip, 0, 1, 0, 0.5); |
|
|
|
TestTooltip:Show(); |