On Wed, Oct 16, 2013 at 2:19 PM, Bogdan Marinov <daggerstab@gmail.com> wrote:
I'll have a look at it and find out to what degree it will be suitable for use in Stellarium. Of course, to actually work on time zones in Stellarium I'll need a computer that supports OpenGL 2.0. Which is somewhat possible in November.

A small update on this: I've been trying to build Qt with MinGW and ANGLE support, so that I can run it on Windows with DirectX.

I took the chance to look at the source code of the Time Zone class. An unpleasant surprise: while the code itself uses the Olson database clock names (the familiar Linux tz database), it uses different implementations on different platforms. The proper Olson/IANA database is used only on Linux, everything else uses whatever timezones are used on that OS, with their identifiers mapped to Olson's.


This means I'll probably have to write my own time zone classes after all. Fortunately, the existing implementation means that I can "borrow" the code of Qt-based tz database reader (with the appropriate attribution, of course :)).

A possible solution is to roll it out in two step: the first step is to use Qt time zones, introducing the new GUI to the users; the second step just will be to re-factor the necessary parts of the back-end (all the boring data entry would be already done for the first step). This will have the advantage of quickly shipping a time zone feature without waiting for me to finish the more tricky advanced code.

I am also investigating the option to force Qt to use ICU instead of a platform-specific implementation. ICU's time zone library is based on the Olson database  and can be updated:
Unfortunately, this means using a custom build of Qt on platforms that don't support the proper database.

Oh, and the bad news: after more than 9 hours of building, my Qt installation failed to build successfully. Now I have to fix the problem, clean, reconfigure and rebuild.

P.S. The Qt documentation calls it the "Olsen" database, but it's Olson. I'm going to file a bug report. :D Qt 5.2 is scheduled to ship in early December. :DD

Bogdan Marinov