>> its a lesson to know that just checking the presence of an API set
>> doesn't mean that the API will actually be used - this is particularly
>> true for API's that make it into standard release roms.
>
>
> But if I recall correctly, I was using the very code supplied by Palm in
> their DIA docs...
>
> Maybe they upgraded that doc since the Zire 22, I'd have to check, but I
> doubt.
I recently went through this same exercise, but with the TE2 as the oddball
device instead of a Z22. The TE2 includes the DIA feature set & APIs, but
does not have an expandable screen. I also came to the realization that the
SysGlueTrapExists test in the DIA docs was incorrect, and useless.
My solution was this:
bHASDIA = false;
// check device features to see if it supports DIA
err = FtrGet(pinCreator, pinFtrAPIVersion, &iPINAPIVERSION);
if (!err && (iPINAPIVERSION > 0))
{
// now check version and if V1.1 check additional feature
if (iPINAPIVERSION > 1)
{
err = FtrGet(sysFtrCreator, sysFtrNumInputAreaFlags, &flags);
if (!err && (flags & grfFtrInputAreaFlagDynamic))
bHASDIA = true;
else
bHASDIA = false; // has PINS API but no DIA hardware
}
else
bHASDIA = true;
}
This test correctly identifies the actual DIA-capable devices in my tests.
Regards,
--
David Thacker
http://www.SatelliteForms.net
The Premier RAD Tool for PalmOS & PocketPC
--
For information on using the PalmSource Developer Forums, or to unsubscribe,
please see http://www.palmos.com/dev/support/forums/