diff --git a/api/config.lua b/api/config.lua index b12f2d93..0c3a4eb5 100644 --- a/api/config.lua +++ b/api/config.lua @@ -165,6 +165,7 @@ function pfUI:LoadConfig() pfUI:UpdateConfig("appearance", "bags", "borderlimit", "1") pfUI:UpdateConfig("appearance", "bags", "borderonlygear", "0") pfUI:UpdateConfig("appearance", "bags", "movable", "0") + pfUI:UpdateConfig("appearance", "bags", "abovechat", "0") pfUI:UpdateConfig("appearance", "bags", "hidechat", "0") pfUI:UpdateConfig("appearance", "bags", "icon_size", "-1") pfUI:UpdateConfig("appearance", "bags", "bagrowlength", "10") diff --git a/modules/bags.lua b/modules/bags.lua index bbe516de..efd19cd4 100644 --- a/modules/bags.lua +++ b/modules/bags.lua @@ -208,7 +208,7 @@ pfUI:RegisterModule("bags", "vanilla:tbc", function () if object == "bank" then if not pfUI.bag.left then pfUI.bag.left = CreateFrame("Frame", "pfBank", UIParent) end - anchor = { "BOTTOMLEFT", (pfUI.chat and pfUI.chat.left or nil), "BOTTOMRIGHT" } + anchor = { "BOTTOMLEFT", (pfUI.chat and pfUI.chat.left or nil), "BOTTOMRIGHT", "TOPLEFT", "TOPRIGHT" } rowlength = tonumber(C.appearance.bags.bankrowlength) cwidth = C.chat.left.width iterate = pfUI.BANK @@ -216,7 +216,7 @@ pfUI:RegisterModule("bags", "vanilla:tbc", function () else if not pfUI.bag.right then pfUI.bag.right = CreateFrame("Frame", "pfBag", UIParent) end rowlength = tonumber(C.appearance.bags.bagrowlength) - anchor = { "BOTTOMRIGHT", (pfUI.chat and pfUI.chat.right or nil), "BOTTOMLEFT" } + anchor = { "BOTTOMRIGHT", (pfUI.chat and pfUI.chat.right or nil), "BOTTOMLEFT", "TOPRIGHT", "TOPLEFT" } cwidth = C.chat.right.width iterate = pfUI.BACKPACK frame = pfUI.bag.right @@ -246,8 +246,13 @@ pfUI:RegisterModule("bags", "vanilla:tbc", function () frame:SetPoint(anchor[1], anchor[2], anchor[1], 0, 0) elseif pfUI.chat then -- use chat frame as anchor if existing - frame:SetPoint(anchor[1], anchor[2], anchor[1], 0, 0) - frame:SetPoint(anchor[3], anchor[2], anchor[3], 0, 0) + if C.appearance.bags.abovechat == "0" then + frame:SetPoint(anchor[1], anchor[2], anchor[1], 0, 0) + frame:SetPoint(anchor[3], anchor[2], anchor[3], 0, 0) + else + frame:SetPoint(anchor[3], anchor[2], anchor[5], 0, 3*default_border) + frame:SetPoint(anchor[1], anchor[2], anchor[4], 0, 3*default_border) + end else -- align frame to UIParent if no anchor is available frame:SetPoint(anchor[1], UIParent, anchor[1], 5, 5) diff --git a/modules/gui.lua b/modules/gui.lua index c5c4a82c..367f9fc1 100644 --- a/modules/gui.lua +++ b/modules/gui.lua @@ -1825,6 +1825,7 @@ pfUI:RegisterModule("gui", "vanilla:tbc", function () CreateConfig(nil, T["Highlight Unusable Items"], C.appearance.bags, "unusable", "checkbox") CreateConfig(nil, T["Unusable Item Color"], C.appearance.bags, "unusable_color", "color") CreateConfig(nil, T["Enable Movable Bags"], C.appearance.bags, "movable", "checkbox") + CreateConfig(nil, T["Anchor Bags Above Chat"], C.appearance.bags, "abovechat", "checkbox") CreateConfig(nil, T["Hide Chat When Bags Are Opened"], C.appearance.bags, "hidechat", "checkbox") CreateConfig(nil, T["Bagslots Per Row"], C.appearance.bags, "bagrowlength") CreateConfig(nil, T["Bankslots Per Row"], C.appearance.bags, "bankrowlength")