vanilla-wow-addons – Rev 1
?pathlinks?
--[[
Bagnon_Menu
Functions for the dropdown menu for Bagnon_Forever
Essentially the dropdown is used to switch between the inventory of other characters
Why not use a normal dropdown? It takes a lot of memory
--]]
--[[ Dropdown Menus --]]--
--create a player button, which is used to switch between characters
local function CreatePlayerButton(id, parent)
local button = CreateFrame("CheckButton", parent:GetName() .. id, parent, "BagnonForeverMenuNameBox");
if(id == 1) then
button:SetPoint("TOPLEFT", getglobal(parent:GetName() .. "Text"), "BOTTOMLEFT", -24, 2);
else
button:SetPoint("TOP", getglobal(parent:GetName() .. (id - 1) ), "BOTTOM", 0, 6);
end
return button;
end
function BagnonForeverMenu_Show(frame)
BagnonForeverMenu.frame = frame;
--update button info
local button, player;
local index = 0;
for player in BagnonDB[GetRealmName()] do
index = index + 1;
button = getglobal("BagnonForeverMenu" .. index) or CreatePlayerButton(index, BagnonForeverMenu);
button:SetText(player);
if(frame.player == player) then
button:SetChecked(true);
button:Show();
else
button:SetChecked(false);
end
end
local i = index + 1;
while getglobal("BagnonForeverMenu" .. i) do
getglobal("BagnonForeverMenu" .. i):Hide();
i = i + 1;
end
--resize and position the frame
BagnonForeverMenu:SetHeight(38 + index * 20);
local x, y = GetCursorPosition();
x = x / UIParent:GetScale();
y = y / UIParent:GetScale();
BagnonForeverMenu:ClearAllPoints();
BagnonForeverMenu:SetPoint("TOPLEFT", UIParent, "BOTTOMLEFT", x - 32, y + 32);
BagnonForeverMenu:Show();
end
Generated by GNU Enscript 1.6.5.90.