Change all use of heroclass to use RAID_CLASS_COLORS instead. This can be changed to CUSTOM_CLASS_COLORS later with a color picker for each class, but to support CoA classes need to go back to being colored properly.

Fix remaining lua errors covered by ascension patches

Add Addon Skins
Add Enhanced Friends List
This commit is contained in:
Andrew6810
2022-10-28 07:12:13 -07:00
parent 60ef8a38af
commit df7cc26a64
205 changed files with 18480 additions and 35 deletions
@@ -0,0 +1,365 @@
local E, L, V, P, G = unpack(ElvUI)
local S = E:GetModule("Skins")
local AS = E:GetModule("AddOnSkins")
if not AS:IsAddonLODorEnabled("AckisRecipeList") then return end
local ipairs, select, unpack = ipairs, select, unpack
local hooksecurefunc = hooksecurefunc
-- AckisRecipeList 2.01.14
-- https://www.curseforge.com/wow/addons/arl/files/458020
S:AddCallbackForAddon("AckisRecipeList", "AckisRecipeList", function()
if not E.private.addOnSkins.AckisRecipeList then return end
local addon = LibStub("AceAddon-3.0"):GetAddon("Ackis Recipe List", true)
if not addon then return end
local function HandleScrollBar(frame)
local UpButton, DownButton = frame:GetChildren()
S:HandleNextPrevButton(UpButton, "up")
UpButton:Size(20, 18)
S:HandleNextPrevButton(DownButton)
DownButton:Size(20, 18)
frame.trackbg = CreateFrame("Frame", nil, frame)
frame.trackbg:Point("TOPLEFT", UpButton, "BOTTOMLEFT", 0, -1)
frame.trackbg:Point("BOTTOMRIGHT", DownButton, "TOPRIGHT", 0, 1)
frame.trackbg:SetTemplate()
frame:GetThumbTexture():SetAlpha(0)
frame.thumbbg = CreateFrame("Frame", nil, frame)
frame.thumbbg:Point("TOPLEFT", frame:GetThumbTexture(), "TOPLEFT", 8, -7)
frame.thumbbg:Point("BOTTOMRIGHT", frame:GetThumbTexture(), "BOTTOMRIGHT", -8, 7)
frame.thumbbg:SetTemplate("Default", true, true)
frame.thumbbg:SetBackdropColor(0.6, 0.6, 0.6)
frame.thumbbg:SetFrameLevel(frame.trackbg:GetFrameLevel() + 1)
end
local function SkinButton(button, strip)
S:HandleButton(button, strip)
button.SetNormalTexture = E.noop
button.SetHighlightTexture = E.noop
button.SetPushedTexture = E.noop
button.SetDisabledTexture = E.noop
end
local function ChangeTexture(texture)
texture:SetInside()
texture:SetTexCoord(0.22, 0.78, 0.22, 0.78)
end
local function ExpansionButton(button)
button:GetRegions():SetDesaturated(true)
button:GetPushedTexture():SetTexture(nil)
button:GetHighlightTexture():SetTexture(nil)
button:GetCheckedTexture():SetTexture(nil)
hooksecurefunc(button, "SetChecked", function(self, state)
self:GetRegions():SetDesaturated(state)
end)
end
S:HandleButton(addon.scan_button)
hooksecurefunc(addon, "TRADE_SKILL_SHOW", function(self)
if self.scan_button:GetParent() == TradeSkillFrame then
self.scan_button:SetFrameLevel(TradeSkillFrame:GetFrameLevel() + 10)
end
end)
S:SecureHook(addon, "Scan", function(self)
S:Unhook(self, "Scan")
local ARL_MainPanel = ARL_MainPanel
ARL_MainPanel:StripTextures()
ARL_MainPanel:CreateBackdrop("Transparent")
ARL_MainPanel.backdrop:Point("TOPLEFT", 11, -12)
ARL_MainPanel.backdrop:Point("BOTTOMRIGHT", -32, 76)
S:SetBackdropHitRect(ARL_MainPanel, ARL_MainPanel.backdrop, true)
hooksecurefunc(ARL_MainPanel, "ToggleState", function(self)
if self.is_expanded then
self.backdrop:Point("BOTTOMRIGHT", -87, 76)
S:SetBackdropHitRect(self, self.backdrop, true)
else
self.backdrop:Point("BOTTOMRIGHT", -32, 76)
S:SetBackdropHitRect(self, self.backdrop, true)
end
end)
S:HandleCloseButton(ARL_MainPanel.xclose_button, ARL_MainPanel.backdrop)
ARL_MainPanel.title_bar:Hide()
ARL_MainPanel.top_left:Hide()
ARL_MainPanel.top_right:Hide()
ARL_MainPanel.bottom_left:Hide()
ARL_MainPanel.bottom_right:Hide()
ARL_MainPanel.top_left.Show = E.noop
ARL_MainPanel.top_right.Show = E.noop
ARL_MainPanel.bottom_left.Show = E.noop
ARL_MainPanel.bottom_right.Show = E.noop
ARL_MainPanel.prof_button:SetTemplate()
ARL_MainPanel.prof_button:Size(32)
ARL_MainPanel.prof_button:Point("TOPLEFT", 19, -20)
local prof_buttonHighlight = ARL_MainPanel.prof_button:GetHighlightTexture()
prof_buttonHighlight:SetInside()
prof_buttonHighlight:SetTexture(1, 1, 1, 0.3)
prof_buttonHighlight:SetTexture()
ChangeTexture(ARL_MainPanel.prof_button._normal)
ChangeTexture(ARL_MainPanel.prof_button._pushed)
ChangeTexture(ARL_MainPanel.prof_button._disabled)
hooksecurefunc(ARL_MainPanel.prof_button, "ChangeTexture", function(self)
ChangeTexture(self._normal)
ChangeTexture(self._pushed)
ChangeTexture(self._disabled)
end)
S:HandleEditBox(ARL_MainPanel.search_editbox)
ARL_MainPanel.search_editbox.backdrop:Point("TOPLEFT", -2, 0)
ARL_MainPanel.search_editbox:Point("TOPLEFT", ARL_MainPanel, "TOPLEFT", 90, -50)
ARL_MainPanel.search_editbox:DisableDrawLayer("BACKGROUND")
ARL_MainPanel.search_editbox:Size(140, 17)
for i = 1, ARL_MainPanel:GetNumChildren() do
local child = select(i, ARL_MainPanel:GetChildren())
if child and child:IsObjectType("CheckButton") and child.text then
-- SkillToggle
S:HandleCheckBox(child, true)
child:Size(14)
child:Point("TOPLEFT", ARL_MainPanel.search_editbox, "TOPRIGHT", -142, 34)
child.text:Point("LEFT", child, "RIGHT", 3, 0)
local excludeToggle = select(i + 1, ARL_MainPanel:GetChildren())
S:HandleCheckBox(excludeToggle, true)
excludeToggle:Size(14)
excludeToggle:Point("TOP", child, "BOTTOM", 0, -3)
excludeToggle.text:Point("LEFT", excludeToggle, "RIGHT", 3, 0)
break
end
end
select(2, ARL_MainPanel.expand_button:GetPoint()):GetParent():Hide()
S:HandleCollapseExpandButton(ARL_MainPanel.expand_button, "+")
ARL_MainPanel.expand_button:ClearAllPoints()
ARL_MainPanel.expand_button:Point("BOTTOMRIGHT", ARL_MainPanel.search_editbox, "BOTTOMLEFT", -53, -2)
ARL_MainPanel.list_frame:SetBackdrop(nil)
ARL_MainPanel.list_frame:CreateBackdrop("Transparent")
ARL_MainPanel.list_frame.backdrop:Point("TOPLEFT", -2, 2)
ARL_MainPanel.list_frame.backdrop:Point("BOTTOMRIGHT", 5, 5)
ARL_MainPanel.list_frame:Point("TOPLEFT", ARL_MainPanel, "TOPLEFT", 21, -73)
HandleScrollBar(ARL_MainPanel.list_frame.scroll_bar)
ARL_MainPanel.list_frame.scroll_bar:Point("TOPLEFT", ARL_MainPanel.list_frame, "TOPRIGHT", 6, -12)
ARL_MainPanel.list_frame.scroll_bar:Point("BOTTOMLEFT", ARL_MainPanel.list_frame, "BOTTOMRIGHT", 6, 19)
ARL_MainPanel.list_frame.scroll_bar.Hide = E.noop
ARL_MainPanel.list_frame.scroll_bar:Show()
for i = 1, 25 do
S:HandleCollapseExpandButton(ARL_MainPanel.list_frame.state_buttons[i], "+")
S:HandleButtonHighlight(ARL_MainPanel.list_frame.entry_buttons[i])
end
S:HandleNextPrevButton(ARL_MainPanel.sort_button, "down", nil, true)
ARL_MainPanel.sort_button:Size(22)
ARL_MainPanel.sort_button:ClearAllPoints()
ARL_MainPanel.sort_button:Point("LEFT", ARL_MainPanel.expand_button, "RIGHT", 20, 0)
ARL_MainPanel.sort_button.SetTextures = function(self)
local normal, pushed = self:GetNormalTexture(), self:GetPushedTexture()
if addon.db.profile.sorting == "Ascending" then
normal:SetRotation(3.14)
pushed:SetRotation(3.14)
else
normal:SetRotation(0)
pushed:SetRotation(0)
end
end
ARL_MainPanel.progress_bar:StripTextures()
ARL_MainPanel.progress_bar:CreateBackdrop()
ARL_MainPanel.progress_bar:Size(209, 20)
ARL_MainPanel.progress_bar:Point("BOTTOMLEFT", ARL_MainPanel, 20, 85)
ARL_MainPanel.progress_bar:SetStatusBarTexture(E.media.normTex)
ARL_MainPanel.progress_bar:SetStatusBarColor(0.22, 0.39, 0.84)
E:RegisterStatusBar(ARL_MainPanel.progress_bar)
ARL_MainPanel.close_button:Height(22)
ARL_MainPanel.close_button:Point("LEFT", ARL_MainPanel.progress_bar, "RIGHT", 4, 0)
SkinButton(ARL_MainPanel.close_button, true)
for i, tab in ipairs(ARL_MainPanel.tabs) do
tab:StripTextures()
tab.left.SetTexture = E.noop
tab.middle.SetTexture = E.noop
tab.right.SetTexture = E.noop
tab:CreateBackdrop()
tab.backdrop:Point("TOPLEFT", 10, E.PixelMode and -1 or -3)
tab.backdrop:Point("BOTTOMRIGHT", -10, 3)
tab:SetHitRectInsets(10, 10, E.PixelMode and 1 or 3, 3)
if i == 1 then
tab:Point("TOPLEFT", ARL_MainPanel, "BOTTOMLEFT", 11, 78)
else
tab:Point("LEFT", ARL_MainPanel.tabs[i-1], "RIGHT", -15, 0)
end
end
if not (TipTac and TipTac.AddModifiedTip) then
E:GetModule("Tooltip"):SecureHookScript(AckisRecipeList_SpellTooltip, "OnShow", "SetStyle")
AS:SkinLibrary("LibQTip-1.0")
end
S:HandleNextPrevButton(ARL_MainPanel.filter_toggle, "right", nil, true)
ARL_MainPanel.filter_toggle:Point("TOPLEFT", ARL_MainPanel, "TOPLEFT", 324, -39)
ARL_MainPanel.filter_toggle:Size(28)
ARL_MainPanel.filter_toggle.SetTextures = function(self)
local normal, pushed = self:GetNormalTexture(), self:GetPushedTexture()
if ARL_MainPanel.is_expanded then
normal:SetRotation(1.57)
pushed:SetRotation(1.57)
else
normal:SetRotation(-1.57)
pushed:SetRotation(-1.57)
end
self:HookScript("OnEnter", function()
normal:SetVertexColor(unpack(E.media.rgbvaluecolor))
end)
self:HookScript("OnLeave", function()
normal:SetVertexColor(1, 1, 1)
end)
end
ARL_MainPanel.filter_toggle:HookScript("OnClick", function(self)
if self.isFrameSkinned then return end
self.isFrameSkinned = true
ARL_MainPanel.filter_menu:SetTemplate("Transparent")
ARL_MainPanel.filter_menu:Size(326, 332)
ARL_MainPanel.filter_menu:Point("TOPRIGHT", ARL_MainPanel, "TOPRIGHT", -95, -71)
ARL_MainPanel.filter_reset:Point("BOTTOMRIGHT", ARL_MainPanel, "BOTTOMRIGHT", -95, 84)
SkinButton(ARL_MainPanel.filter_reset, true)
local menuIcons = {
"menu_toggle_general",
"menu_toggle_obtain",
"menu_toggle_binding",
"menu_toggle_item",
"menu_toggle_quality",
"menu_toggle_player",
"menu_toggle_rep",
"menu_toggle_misc"
}
for i, menuIcon in ipairs(menuIcons) do
local iconEntry = ARL_MainPanel[menuIcon]
if i == 1 then
iconEntry:Point("LEFT", ARL_MainPanel.filter_toggle, "RIGHT", 17, 0)
end
iconEntry:SetTemplate()
iconEntry:StyleButton()
iconEntry:DisableDrawLayer("BACKGROUND")
local region = select(2, iconEntry:GetRegions())
region:SetInside()
region:SetTexCoord(unpack(E.TexCoords))
end
local filterMenus = {
"general",
"obtain",
"binding",
"item",
"quality",
"player",
"rep",
"misc"
}
for _, menu in ipairs(filterMenus) do
local menuEntry = ARL_MainPanel.filter_menu[menu]
if menu == "misc" then
for i = 1, menuEntry:GetNumChildren() do
local child = select(i, menuEntry:GetChildren())
if child and child:IsObjectType("Button") then
S:HandleNextPrevButton(child)
select(2, child:GetPoint()):SetTextColor(1, 1, 1)
end
end
elseif menu == "rep" then
for expNum = 0, 2 do
for i = 1, menuEntry["expansion"..expNum]:GetNumChildren() do
local child = select(i, menuEntry["expansion"..expNum]:GetChildren())
if child and (child:IsObjectType("Button") and child.text and not child:IsObjectType("CheckButton")) then
child:StripTextures()
child.text:SetTextColor(1, 0.8, 0.1)
elseif child and child:IsObjectType("CheckButton") and child.text then
S:HandleCheckBox(child)
child.text:SetTextColor(1, 1, 1)
end
end
end
else
for i = 1, menuEntry:GetNumChildren() do
local child = select(i, menuEntry:GetChildren())
if child and (child:IsObjectType("Button") and child.text and not child:IsObjectType("CheckButton")) then
child:StripTextures()
child.text:SetTextColor(1, 0.8, 0.1)
elseif child and child:IsObjectType("CheckButton") and child.text then
S:HandleCheckBox(child)
child.text:SetTextColor(1, 1, 1)
end
end
end
end
ExpansionButton(ARL_MainPanel.filter_menu.rep.toggle_expansion0)
ExpansionButton(ARL_MainPanel.filter_menu.rep.toggle_expansion1)
ExpansionButton(ARL_MainPanel.filter_menu.rep.toggle_expansion2)
end)
end)
ARLCopyFrame:StripTextures()
ARLCopyFrame:SetTemplate("Transparent")
S:HandleScrollBar(ARLCopyScrollScrollBar)
for i = 1, ARLCopyFrame:GetNumChildren() do
local child = select(i, ARLCopyFrame:GetChildren())
if child and child:IsObjectType("Button") then
child:ClearAllPoints()
child:Point("TOPRIGHT", ARLCopyFrame, "TOPRIGHT", 1, 0)
S:HandleCloseButton(child)
break
end
end
end)