The hooks just run after the original called function is actioned so they don't change hoe clicking an item fundamentally works. That would take a much more complicated approach which would change the bags/bank workings entirely.
The protected function can only be used in response to a hardware event (keyboard/mouse click) usually on a widget that derives from a secure template
I think this
thread might be useful, at least in terms of the idea of how it works using a
SecureActionButtonTemplate in conjunction with macro text.