Ok, scrolling with mouse wheel in y-direction works indeed fine. (Maybe in n-column reading views, it should scroll also in n-column steps, as classical scrolling with classical paper pages does.)
My proposal was to add scrolling in x-direction (for some newer mice) in such a way that one can scroll through the TOC, and lands at the beginning of each item in the viewer.
According to Qt-Documentation, the rotation of the mouse wheel can be discerned by angleDelta of the wheel event:
def wheelEvent(self,e):
print("x: ", e.angleDelta().x())
print("y: ", e.angleDelta().y())
I've just implemented this via plain PyQt6, for testing purpose, and looked at your Handlewheel function in paged_mode.pyj.

I just would add
if deltaX:
toc-item+= sgn(deltaX)
showTocItem(toc-item)
but unfortunately, I'm still not able to get the cmake tool to work properly for building and testing this of my own. But I will try. Maybe other users/programmers can help here.

For usual one-dimensional mouse wheels, one could use this toc-item-scrolling when hovering over the TOC and using the common mouse wheel.