you call the ProcessKey function of the cOsdMenu class. It will manage
the arrows and the back key. The 'navigation' in the menu will be ready
out of the box. Perhaps you have a problem: you don't see the 'SetTitle'
changing the title in the menu. I don't know if this is a bug or a
feature, but you have to call Display() after SetTitle. If you use
SetStatus you don't need it.
The rest of the code is ok I think, however I could suggest you to
change it a bit: