I want to use a gamepad to drive a custom cursor and interact with the NGUI menu as the mouse cursor would normally. I am doing this for an Ouya version of my game. (Yes I know, you can use the DPad to move between buttons, but this won't work for how I have structured my game)
I have the custom cursor working inside my game and interacting as a replacement for normal mouse.
However, I don't know if I am approaching this the wrong way, but I am finding this tricky to get it working with NGUI panels. i.e. getting events Hover, OnClick, etc to work as they normally would with the windows mouse.
I initially looked at using UICamera.onCustomInput, but I found that a lot of the stuff I needed to handle was already in UICamera.ProcessMouse()
So, for the first time, I started modding the base NGUI code. I have copied the ProcessMouse method to a new method ProcessGamepad and calling this instead of the ProcessMouse.
It is going Ok, but I am just hitting a few hurdles and I am not sure how many I have left to jump before I get this working.
So... as I am a lazy programmer

I searched this forum, but couldn't find any posts of a similar nature.
Before I leave, I just thought ask the community, if my approach is the easiest solution to achieve my objective?