>> 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/

Reply via email to