ok heres what i have found...
-- create main header. This is the 'workhorse'
-- state descriptions:
-- 0 - hide
-- 1-3 - show that bar.
-- 4-5 - show bar with paging. Paging only works on mouseover.
-- 3 states for no mouseover so that we change from page 2 to 1
-- we don't change the menu's position.
-- thus page2 = state 3, and page1 starts at 1, and from then on is 2.
local hdr = CreateFrame("Frame", "$parentHeader", anchor, "SecureStateHeaderTemplate")
-- set it so we can move it around
if not hdr:IsUserPlaced() then
hdr:SetMovable(true)
hdr:SetPoint("CENTER",UIParent,"CENTER")
hdr:SetUserPlaced(true)
end
-- also we want the layout positioning to be saved as well
-- hdr:SetUserPlaced(true)
hdr.isdebugging = debug
-- set state based on 'key' anchor keybind being pressed.
hdr:SetAttribute("statemap-anchor-keybinds", "0-1")
-- set state based on 'click' anchor being clicked.
hdr:SetAttribute("statemap-anchor-click", "0:2;*:0;")
-- set state based on button being moused over.
hdr:SetAttribute("statemap-anchor-enter", "1,2:4;3:5")
-- set state based on mouse leaving button.
hdr:SetAttribute("statemap-anchor-leave", "4:2;5:3")
-- accept paging from page buttons
hdr:SetAttribute("statemap-page", "$input")
-- set location on show to cursor
if movetomouse then
hdr:SetAttribute("headofsrelpoint", "cursor")
hdr:SetAttribute("headofsx", "1:0")
hdr:SetAttribute("headofsy", "1:0")
end
-- clear bindings in state 0-3, state 4-5 add paging buttons.
hdr:SetAttribute("statebindings","0-3:;4-5
aging")
-- set initial state
hdr:SetAttribute("state", showstartup or "0")
-- debug code
hdr.StateChanged = function(self,state)
if self.isdebugging then ChatFrame1:AddMessage(state) end
end
-- add header to anchors
anchor:SetAttribute("anchorchild", hdr)
----------
-- page up button
----------
local pageu = CreateFrame("Button", "$parentPageUp", anchor, "SecureActionButtonTemplate")
-- reuse anchoring points
pageu:SetAllPoints(anchor)
pageu:SetAttribute("hidestates","0")
-- export the state to the header as 'page'. Required for header to process the change!
pageu:SetAttribute("exportstate","page")
-- change from page 5 to 4
pageu:SetAttribute("newstate","5:4")
-- set binding. This only operates if the button is visible.
pageu:SetAttribute("bindings-paging", "MOUSEWHEELUP")
-- add the button to the header
hdr:SetAttribute("addchild", pageu)
----------
-- page down button
----------
local paged = CreateFrame("Button", "$parentPageDown", anchor, "SecureActionButtonTemplate")
paged:SetAllPoints(anchor)
paged:SetAttribute("hidestates", "0")
paged:SetAttribute("exportstate", "page")
paged:SetAttribute("newstate", "4:5")
paged:SetAttribute("bindings-paging", "MOUSEWHEELDOWN")
hdr:SetAttribute("addchild", paged)
-- declare locals
local relpt,relptr,numbtn,first = hdr, hdr,0,nil
hooksecurefunc("SecureStateAnchor_RunChild", function(self,button, remapButton)
--ChatFrame1:AddMessage(this:GetName())
-- pass up if we are not with the context menu.
if not this.NeedsTooltip then return end;
-- otherwise handle enter/leave
if button == "OnEnter" then
ActionButton_SetTooltip();
elseif button == "OnLeave" then
this.updateTooltip = nil;
GameTooltip:Hide();
end
end)
Im thinking the problem is in there somewhere because if it has to do with paging and mouseovers could be kinda the same thing thats happening with Bongos having buttons spamed all the same after paging to new buttons ...hummmm.
As far as the hud and all that havent messed with anything but what was said to do about the contextmenu. but that fix was really only a work around it all works but bug sack still catches the errors from it which are made by mousing over the context menu. So something within the mouseover code via above or the paging code which has effected both bongos paging and contextmenu paging.
I'm no coder i have 0 knowledge of this stuff but im kinda seeing the problem from what i think it could be