vanilla-wow-addons – Rev 1
?pathlinks?
--[[
Paging.lua
Scripts for the Paging panel of the Bongos Options menu
--]]
local list;
local function sortList(bar1, bar2)
if tonumber(bar1.id) and tonumber(bar2.id) then
return bar1.id < bar2.id;
elseif not(tonumber(bar1.id) or tonumber(bar2.id)) then
return bar1.id < bar2.id;
elseif tonumber(bar1.id) then
return false;
end
return true;
end
function BOptionsPaging_OnMousewheel(scrollframe, direction)
local scrollbar = getglobal(scrollframe:GetName() .. "ScrollBar");
scrollbar:SetValue(scrollbar:GetValue() - direction * (scrollbar:GetHeight() / 2));
BOptionsPagingScrollBar_Update()
end
function BOptionsPaging_OnLoad()
local name = this:GetName()
local allButton = CreateFrame("CheckButton", name .. "All", this, "BOptionsPagingButton");
allButton:SetPoint("TOPLEFT", this, "TOPLEFT", 4, 4);
allButton:SetText("all");
allButton:SetScript("OnClick", function()
for i = 1, BActionBar.GetNumber() do
BActionBar.SetPaging(i, this:GetChecked())
end
BOptionsPagingScrollBar_Update();
end)
local firstOfRow;
local name = this:GetName();
for i = 1, 6 do
local button = CreateFrame("CheckButton", name .. (i-1)*3 + 1, this, "BOptionsPagingButton");
if not firstOfRow then
button:SetPoint("TOPLEFT", allButton, "BOTTOMLEFT");
else
button:SetPoint("TOPLEFT", firstOfRow, "BOTTOMLEFT");
end
firstOfRow = button;
for j = 2, 3 do
local button = CreateFrame("CheckButton", name .. (i-1)*3 + j, this, "BOptionsPagingButton");
button:SetPoint("LEFT", name .. (i-1)*3 + j-1, "RIGHT", 34, 0);
end
end
end
function BOptionsPaging_OnShow()
this.onShow = 1
getglobal(this:GetName() .. "Skip"):SetMinMaxValues(0, BActionBar.GetNumber() - 1);
getglobal(this:GetName() .. "SkipHigh"):SetText(BActionBar.GetNumber() - 1);
getglobal(this:GetName() .. "Skip"):SetValue(BActionSets.g.skip or 0);
BOptionsPagingScrollBar_Update();
this.onShow = nil
end
function BOptionsPagingScrollBar_Update()
local size = BActionBar.GetNumber();
local offset = BOptionsPanelPagingScrollFrame.offset;
FauxScrollFrame_Update(BOptionsPanelPagingScrollFrame, size - 1, 18, 18);
for index = 1, 18 do
local rIndex = index + offset;
local button = getglobal("BOptionsPanelPaging".. index);
if rIndex <= size then
button:SetText(rIndex);
button:SetChecked(BActionBar.CanPage(rIndex));
button:Show();
else
button:Hide();
end
end
end
Generated by GNU Enscript 1.6.5.90.