I've set the zoomRowList so `wrap="false"`. When I get to the top of the zoomRowList, the onKeyEvent() doesn't get triggered. How do I get the onKeyEvent() to trigger so I know that the user has reached the top of the list and when the user presses the "up" key, I can set a different UI element into focus?
You need set an observer to watch a field for the change of the focus you want: rowFocused, rowItemFocused, currFocusRow.
The observer calls a function/subroutine so you can react to the focus changes. It will pass in the field you requested it observe as an argument.
The ZoomRowList never loses focus because once you are at the top and press up again the OnKeyEvent will pass-through to the next node up. It filters up.
So where you call the ZoomRowList(in whatever calls this component) is where you could use the OnKeyEvent against if ZoomRowList has focus and they press up. If they are in the ZoomRowList and press up and are at the top the ZoomRowList OnKeyEvent doesn't care. It will pass this up. So you must catch this in the OnKeyEvent from where ZoomRowList is called. How you understand. You basically are stuck in the ZoomRowList until an observer reacts that brings focus somewhere else. This is how all scene graph works.
Even if it doesnt pass through the onKeyEvent you can get the focus it has by reading the observer. No I've never use ZoomRowList just normal RowList and it works.. well.. like normal. To escape the ZoomRowList you may have to make a selection or the user has to use back key. That may seriously be the only way. That is how some of these work. I know labellist and checklist let presses pass-through once you get to the outtermost/innermost (top/bottom left/right) selections. These behave differently.
This is not an option. I can observe that a row gets focus, but I cannot observe that the UP arrow was pressed.
This should work like RowList, but because ZoomRowList is new, I suspect it has a lot of bugs and is probably not ready for primetime.
You mentioned not having personal experience with ZoomRowList so I wonder if others who have had personal experience with ZoomRowList will confirm that this component is bug ridden or if there is another way I need to go about doing things. [/font]
What you could probably do is add a component to your zoomrowlist display, and set the added object to have focus, that way you can capture events using the added object and pass them through to the zoomrowlist. It's more complicated, but it should take care of the issue? Since zoomrowlist had focus by default though, you should be using an observver to determine what item in which row has highlighhtfocus to update the decoration instead of hacking in workarounds like this?