You're testing for the wrong thing. The navFtrVersion returns the version
of five-way navigation support that's in the system. This is the
combination of fnav resource support and FrmNav APIs that was introduced
on the Treo 600. The use of vchrRocker codes is orthogonal to that;
TapWave Zodiac devices use those codes, but they don't support the
five-way navigation APIs.
However, you really don't need to detect the device type just to pick what
set of nav key codes to use. Just accept all three or four different sets
of codes -- the main ones are the palmOne five-way keys used on older
PDAs, the PalmSource standard vchrRocker keys, and the scroll wheel codes
from the Sony and early Treo devices. If you just write a translator
routine that turns any instances of the older key codes into the standard
vchrRocker codes and then have your main code just deal with vchrRocker,
you'll be in good shape.
Thanks Ben. That solves most of my problem. The only remaining issue is on
the navigatorless devices, like the much older Palms, the low-end Zires,
etc., I map some of the navigator functions to the hardkeys. So, if
hardkey1 gets pressed, its function is dependant on whether or not a
navigator is present. So, even if the navigator isn't used, I need to
detect if it's there -- how would you recommend I do this for the Tapwave?
Should I just test the device type for this special case?
Thanks,
Rich
--
For information on using the PalmSource Developer Forums, or to unsubscribe,
please see http://www.palmos.com/dev/support/forums/