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.

http://doc-snapshot.qt-project.org/qt5-stable/qtimezone.html

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:
http://userguide.icu-project.org/datetime/timezone#TOC-Updating-the-Time-Zone-Data
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

Regards,
Bogdan Marinov