I recently started a thread in which we ended up discussing the possibility of adding support for navigating DirectGUI via keyboard or gamepad. Built-in support seems likely to be some time away, so, for my current main project, I want to look at implementing such support on my end.
I have ideas for the actual navigation–how to handle moving between UI-elements. What I’m rather uncertain about is the question of how to highlight the currently-selected item.
The ideal, I would imagine, would be to have DirectGUI elements highlight as though the mouse were hovering over them–that would at least be consistent with mouse-interaction. But, as I mentioned in the thread linked-to above, DirectGUI (or DirectButton, at least) seems to be implemented in a way that runs counter to that.
Which is where I find myself uncertain.
I do have two potential expedients in mind:
First, I could add an indicator-image of some sort that shows up when a non-mouse input-device is used, and vanishes when the mouse is moved. This would be placed near the selected UI-element to convey that selection.
Second, I could (perhaps–I’m not sure that it would work) just warp the mouse to the selected UI-element, hoping that DirectGUI would treat that as a mouse-over.
Thoughts?