On 06/07/2011 21:18, David Jarvie wrote:
On Wednesday 06 July 2011 21:10:06 Thiago Macieira wrote:
Em Wednesday, 6 de July de 2011, às 20:54:54, David Jarvie escreveu:
Duration is simply the number of seconds or milliseconds between two
dates,  appropriately given in their universal time. So duration is not
affected by daylight savings.
Duration must record whether it was specified in terms of
hours/minutes/seconds, or days/weeks/whatever so that daylight savings
changes can be taken into account when calculating the end time of a
duration, given a start time.

If the duration class provides methods to calculate the end time, given a
start time, then it must take account of daylight savings changes.

See kdepimlibs/kcalcore/duration.h for example.
That's not what QTimeSpan is supposed to be. It's simply a quantity of
seconds.
Ok. Being more limited, it won't be a suitable replacement for 
KCalCore::Duration.
I would need to take a closer look at KCalCore::Duration but from what you have said it should be very simple to implement an equivalent to it in terms of QTimeSpan given that a duration is a fixed quantity (within an inertial frame). QTimeSpan has the facility to specify a start datetime and to calculate the end of the span but where it would fall short is the representation of that end time if it lies in a period of daylight savings different to the start time.

QDateTime simply stores a QDateTime as the optional start (or end time if the span is negative) and the duration in milliseconds as a qint64. It was meant as a simple convenience class for cases like displaying a label with "Download has x:y remaining" or for working with datetime mathematical operations analogous to QRect for e.g.

All the best,

Sean

--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.

Reply via email to