Nothing major in this release - I've commented out some deprecated API functions (thanks to Carl Gross), and done some minor enhancements - see the previous news items for more information.
Hi everyone. Yes, I'm still alive. It's just that I have other priorities now than improving the library, and I already feel that the library is in a nice stable state with few enhancements needed.
I've just committed in two minor tweaks:
* I've added a function stub for the Sync API 2.5 method SyncCallDeviceApplication. Thanks to Todd Grigsby for informing me about it
* I've added a DataPos parameter to the OnWriteField event. This lets you know what position the record packer is up to when constructing a record to save to the Palm - I found it invaluable when dealing with complicated records where I needed to manually worry about handling byte alignment.... read more
For some time people have been asking me for an example of offloading the Datebook entries, and since I didn't have time to spare, I was only able to give out some general advice on how to do it.
Well, I finally had some time, so presenting.. the Datebook offload example. The conduit by default installs using the Calculator creator Id, so you won't have to unregister the existing Datebook conduit. It will create a text file in the c:\ folder containing a list of all the datebook entries.... read more
A minor update.. two new methods have been added to the pelDateTime unit - DateTimeToTimSeconds, and TimSecondsToDateTime. These can be used to convert between TDateTime and TimSeconds values
The UTCTimeToDateTime used a cast for the system time bias from GMT to LongWord - this was incorrect, since the bias can be negative. This method is now fixed. This also affects the PalmInfo system information object, since it has several date fields
The fixed pelDateTime.pas is available on the project CVS
It was brought to my attention that I goofed in the translation of the pfgHsLog/LogAddEntry method when making the library dynamically load DLLs - I accidentally removed the cdecl suffix, with the result that any logging calls got screwed up.
I consider this a big enough problem that I've re-released Version 1.15 with an update pfgHsLog.pas file to correct the problem. The developer CVS is also updated. Sorry for any inconvenience
I've put together a distribution containing the new features as version 1.15 for download
It was brought to my attention that several of the events of TpfgPalmRemoteTable weren't actually being used. This has now been corrected
The conduit library has just had a major enhancement - it now no longer needs all the Palm DLLs to be on the search path! It now dynamically loads the DLLs, using the following Palm approved method of locating the DLLs:
1) It looks for a userdata.dll file in the same directory as your conduit, and if found, calls it's UmGetRootDirectory to get the palm directory
2) If not found, it uses the Palm Desktop registry entry to locate the palm directory... read more
I just noticed that the fields for the OnReadField and OnWriteField fields weren't being explicitly initialised to nil in the table constructor. This was causing some weird problems in one of my own projects, where I repeatedly created and destroyed a table component, and the field read handler for a previous table instance was being reused again in a future one.
I've now added an explicit initialization of the fields to nil
The Palm library now properly supports noTime constants in Palm tables. I've also added an IsNull property and Clear methods to the field class to make it easier to check for null values.
Note: a side-effect of adding TimeType null support is that existing date values can no longer default to a "legitimate" value (particularly since null times are actually a valid 12AM time). So when reading a Palm table with a date or time field that can be null, your code should explicitly check to see whether it's null or not.
This is the version 1.14 release, and the opening of the project on SourceForge. Give me a few days to get everything sorted out to my liking. If you're anxious, I've already committed the source code to CVS if you want to grab a copy