Hallo again !
Since it's the weekend again, I've been playing around with a couple of new modules, neither finished as yet, but perhaps of interest anyway :-)
The first, BaH.Persistence, is an Object serializer, which can handle most things you can throw at it. The only things it doesn't like very much are multi-dimension arrays and Byte Ptr data. The arrays issue I think is due to the Reflection module.
It uses the Libxml module to build and load the persistence data.
Perhaps the most interesting bit about the module is that it was designed from the beginning to properly handle circular references. This means that you can serialize a TList and be sure that when you de-serialize it, you will end up with a TList in exactly the same state as it was in at the time.
...
The second, BaH.XLWriter, allows you to create .xlsx files using a very simple interface. xlsx is the file format for Excel 2007, and is also readable by apps such as Numbers (Apple) and Open Office. It is actually a special zip file containing lots of different types of xml files.
It's currently in the very early stages of development, but it is already able to create basic spreadsheets of text, numbers and formulas. At the moment, it is using BaH.Libxml, BaH.RegEx and wxMax. wxMax is required for access to the Zip output stream, which means it can create all the files for the zip as it creates the zip itself - ie. no external files created.
...
The Libxml that both modules require is the one currently in SVN at maxmods. I should hopefully be releasing the update fairly soon.
You can find the mods at the same location.
Docs are a bit on the sparse side for both at the moment, but there is a small example for each, and suggestions/comments are very welcome.
Anyway, thought you might be interested to see what's on-going :-)
Since it's the weekend again, I've been playing around with a couple of new modules, neither finished as yet, but perhaps of interest anyway :-)
The first, BaH.Persistence, is an Object serializer, which can handle most things you can throw at it. The only things it doesn't like very much are multi-dimension arrays and Byte Ptr data. The arrays issue I think is due to the Reflection module.
It uses the Libxml module to build and load the persistence data.
Perhaps the most interesting bit about the module is that it was designed from the beginning to properly handle circular references. This means that you can serialize a TList and be sure that when you de-serialize it, you will end up with a TList in exactly the same state as it was in at the time.
...
The second, BaH.XLWriter, allows you to create .xlsx files using a very simple interface. xlsx is the file format for Excel 2007, and is also readable by apps such as Numbers (Apple) and Open Office. It is actually a special zip file containing lots of different types of xml files.
It's currently in the very early stages of development, but it is already able to create basic spreadsheets of text, numbers and formulas. At the moment, it is using BaH.Libxml, BaH.RegEx and wxMax. wxMax is required for access to the Zip output stream, which means it can create all the files for the zip as it creates the zip itself - ie. no external files created.
...
The Libxml that both modules require is the one currently in SVN at maxmods. I should hopefully be releasing the update fairly soon.
You can find the mods at the same location.
Docs are a bit on the sparse side for both at the moment, but there is a small example for each, and suggestions/comments are very welcome.
Anyway, thought you might be interested to see what's on-going :-)