thirdparty: add bag_sort integration

This commit is contained in:
shagu
2020-10-05 16:35:45 +02:00
parent 8ce1baf00d
commit 93ad7cdb92
3 changed files with 105 additions and 0 deletions
+1
View File
@@ -2169,6 +2169,7 @@ pfUI:RegisterModule("gui", "vanilla:tbc", function ()
CreateConfig(nil, "WIM", C.thirdparty.wim, "enable", "checkbox", nil, nil, nil, nil, "vanilla")
CreateConfig(nil, "HealComm", C.thirdparty.healcomm, "enable", "checkbox", nil, nil, nil, nil, "vanilla")
CreateConfig(nil, "SortBags", C.thirdparty.sortbags, "enable", "checkbox", nil, nil, nil, nil, "vanilla")
CreateConfig(nil, "Bag_Sort", C.thirdparty.bag_sort, "enable", "checkbox", nil, nil, nil, nil, "tbc")
CreateConfig(nil, "MrPlow", C.thirdparty.mrplow, "enable", "checkbox")
CreateConfig(nil, "DruidBar", C.thirdparty.druidbar, "enable", "checkbox", nil, nil, nil, nil, "tbc")
CreateConfig(nil, "BCEPGP", C.thirdparty.bcepgp, "enable", "checkbox", nil, nil, nil, nil, "tbc")
+103
View File
@@ -193,6 +193,109 @@ pfUI:RegisterModule("thirdparty-tbc", "tbc", function ()
end
end)
HookAddonOrVariable("Bag_Sort", function()
if C.thirdparty.bag_sort.enable == "0" then return end
pfUI.thirdparty.bagsort = "bag_sort"
pfUI.thirdparty.bag_sort = CreateFrame("Frame", nil)
pfUI.thirdparty.bag_sort:RegisterEvent("PLAYER_ENTERING_WORLD")
pfUI.thirdparty.bag_sort:SetScript("OnEvent", function()
pfUI.thirdparty.bag_sort:UnregisterAllEvents()
-- don't do anything if another bagsorter was found
if pfUI.thirdparty.bagsort ~= "bag_sort" then return end
-- make sure the bag module is enabled
if not pfUI.bag or not pfUI.bag.right then return end
local rawborder, default_border = GetBorderSize("bags")
-- draw the button
if not pfUI.bag.right.sort then
pfUI.bag.right.sort = CreateFrame("Button", "pfBagSlotSort", UIParent)
pfUI.bag.right.sort:SetParent(pfUI.bag.right)
pfUI.bag.right.sort:SetPoint("TOPRIGHT", pfUI.bag.right.keys, "TOPLEFT", -default_border*3, 0)
CreateBackdrop(pfUI.bag.right.sort, default_border)
pfUI.bag.right.sort:SetHeight(12)
pfUI.bag.right.sort:SetWidth(12)
pfUI.bag.right.sort:SetTextColor(1,1,.25,1)
pfUI.bag.right.sort:SetFont(pfUI.font_default, C.global.font_size, "OUTLINE")
pfUI.bag.right.sort.texture = pfUI.bag.right.sort:CreateTexture("pfBagArrowUp")
pfUI.bag.right.sort.texture:SetTexture(pfUI.media["img:sort"])
pfUI.bag.right.sort.texture:ClearAllPoints()
pfUI.bag.right.sort.texture:SetPoint("TOPLEFT", pfUI.bag.right.sort, "TOPLEFT", 2, -2)
pfUI.bag.right.sort.texture:SetPoint("BOTTOMRIGHT", pfUI.bag.right.sort, "BOTTOMRIGHT", -2, 2)
pfUI.bag.right.sort.texture:SetVertexColor(.25,.25,.25,1)
pfUI.bag.right.sort:SetScript("OnEnter", function ()
pfUI.bag.right.sort.backdrop:SetBackdropBorderColor(1,1,.25,1)
pfUI.bag.right.sort.texture:SetVertexColor(1,1,.25,1)
GameTooltip:SetOwner(this, "ANCHOR_RIGHT")
GameTooltip:SetText(GetAddOnMetadata("Bag_Sort","Title"))
GameTooltip:AddLine(GetAddOnMetadata("Bag_Sort","Notes"),1,1,1)
GameTooltip:Show()
end)
pfUI.bag.right.sort:SetScript("OnLeave", function ()
CreateBackdrop(pfUI.bag.right.sort)
pfUI.bag.right.sort.texture:SetVertexColor(.25,.25,.25,1)
if GameTooltip:IsOwned(this) then
GameTooltip:Hide()
end
end)
pfUI.bag.right.sort:SetScript("OnClick", function()
BS_slashBagSortHandler()
end)
pfUI.bag.right.search:ClearAllPoints()
pfUI.bag.right.search:SetPoint("TOPLEFT", pfUI.bag.right, "TOPLEFT", default_border, -default_border)
pfUI.bag.right.search:SetPoint("TOPRIGHT", pfUI.bag.right.sort, "TOPLEFT", -default_border*3, -default_border)
end
-- draw the button
if not pfUI.bag.left.sort then
pfUI.bag.left.sort = CreateFrame("Button", "pfBankSlotSort", UIParent)
pfUI.bag.left.sort:SetParent(pfUI.bag.left)
pfUI.bag.left.sort:SetPoint("TOPRIGHT", pfUI.bag.left.bags, "TOPLEFT", -default_border*3, 0)
CreateBackdrop(pfUI.bag.left.sort, default_border)
pfUI.bag.left.sort:SetHeight(12)
pfUI.bag.left.sort:SetWidth(12)
pfUI.bag.left.sort:SetTextColor(1,1,.25,1)
pfUI.bag.left.sort:SetFont(pfUI.font_default, C.global.font_size, "OUTLINE")
pfUI.bag.left.sort.texture = pfUI.bag.left.sort:CreateTexture("pfBagArrowUp")
pfUI.bag.left.sort.texture:SetTexture(pfUI.media["img:sort"])
pfUI.bag.left.sort.texture:ClearAllPoints()
pfUI.bag.left.sort.texture:SetPoint("TOPLEFT", pfUI.bag.left.sort, "TOPLEFT", 2, -2)
pfUI.bag.left.sort.texture:SetPoint("BOTTOMRIGHT", pfUI.bag.left.sort, "BOTTOMRIGHT", -2, 2)
pfUI.bag.left.sort.texture:SetVertexColor(.25,.25,.25,1)
pfUI.bag.left.sort:SetScript("OnEnter", function ()
pfUI.bag.left.sort.backdrop:SetBackdropBorderColor(1,1,.25,1)
pfUI.bag.left.sort.texture:SetVertexColor(1,1,.25,1)
GameTooltip:SetOwner(this, "ANCHOR_RIGHT")
GameTooltip:SetText(GetAddOnMetadata("Bag_Sort","Title"))
GameTooltip:AddLine(GetAddOnMetadata("Bag_Sort","Notes"),1,1,1)
GameTooltip:Show()
end)
pfUI.bag.left.sort:SetScript("OnLeave", function ()
CreateBackdrop(pfUI.bag.left.sort)
pfUI.bag.left.sort.texture:SetVertexColor(.25,.25,.25,1)
if GameTooltip:IsOwned(this) then
GameTooltip:Hide()
end
end)
pfUI.bag.left.sort:SetScript("OnClick", function()
BS_slashBankSortHandler()
end)
end
end)
end)
HookAddonOrVariable("DruidBarFrame", function()
if C.thirdparty.druidbar.enable == "0" then return end
local p = ManaBarColor[0]