Qt5 Locale and Date / Time (and apologies)

John Layt jlayt at kde.org
Sat Jan 14 20:54:16 UTC 2012


Hi guys,

First up my apologies for having been so incommunicado these last couple of 
months, unfotunately I over-committed myself out in the real world and ended 
up with little time for KDE.  I've now dropped some of my Uni studies so I now 
have some time to try sort this little mess out.

So current status.  Most of the new API we needed in QLocale outside of 
date/time was actually added in Qt 4.8 (e.g. preferred language list), so not 
much work is needed there.  This mostly leaves the date/time API and loading 
of KDE settings as the two main issues, of which only the date/time API 
probably requires to be in 5.0.

I had made good progress on the changes with the QDate clean-up and a new 
QDateCalculator/QCalendarSystem class [1], pulling the required settings and 
translations in from CLDR data, Windows and OSX.

However Lars has proposed Qt5 actually switch to using ICU instead for 
localisation functions. This meant throwing away most of what I had done and 
replacing it with ICU calls, and I had started to try figure that out when the 
time crunch hit.  Generally speaking, it is a good idea with several benefits, 
but it's a major rewrite of the backend and a lot of spaghetti to unravel 
which I don't think people quite appreciate.

What needs doing now?  
* I'm about to push for review my QDate changes excluding calendars to get 
them in asap. [2]
* I need to post to the Qt5 list to get more direction on how to do the CLDR 
integration and what the parameters on it are.
* We need to discuss time zones more and see the minimal changes needed for 
5.0 as we won't have time for a full solution.
* We need to figure out the right solution for getting KDE locale settings 
used in QLocale, which has a high standard to reach to get past Thiago :-)

I've got about 3 weeks to get the bones of this done, so heads down :-)

Cheers!

John.

[1] https://qt.gitorious.org/~odysseus/qt/odysseus-qtbase/commits/qt5-
qdatetime-all
[2] https://qt.gitorious.org/~odysseus/qt/odysseus-qtbase/commits/qt5-
qdatetime



More information about the Kde-frameworks-devel mailing list