Drag and Drop

If I remember correctly, the scroll boxes do not understand scaling (none of the slots do, I think) - the desired size of the widget does not change as you scale it. Even if you zoom in/out, the scroll box still sees the original size rather than the new dimensions affected by the scaling. Translation - panning should work fine, though.

That’s what I recall; not necessarily how it is. I remember someone mentioning (back on AnswerHub) that they used the example and successfully incorporated scrollboxes into it.

implement other methods to move it left or right.

In the thread I linked, all the calculations are shown. It even accounts for zooming onto the mouse cursor which I found somewhat challenging to figure out.