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
@@ -708,6 +708,7 @@ function pfUI:LoadConfig()
pfUI:UpdateConfig("thirdparty", "wim", "enable", "1")
pfUI:UpdateConfig("thirdparty", "healcomm", "enable", "1")
pfUI:UpdateConfig("thirdparty", "sortbags", "enable", "1")
pfUI:UpdateConfig("thirdparty", "bag_sort", "enable", "1")
pfUI:UpdateConfig("thirdparty", "mrplow", "enable", "1")
pfUI:UpdateConfig("thirdparty", "flightmap", "enable", "1")
pfUI:UpdateConfig("thirdparty", "theorycraft", "enable", "1")
+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]