void Timespan::SetValue(const unsigned int days, const unsigned int hours, const unsigned int minutes, const double seconds) { time_span_ = static_cast<double> (days); AddHours(hours); AddMinutes(minutes); AddSeconds(seconds); }
void Duration::SetInfo(const ods::DurationInfo &info) { if (info_ == nullptr) info_ = new ods::DurationInfo(); info_->CopyFrom(info); /** <number:time-style style:name="N40"> <number:hours number:style="long"/> <number:text>:</number:text> <number:minutes number:style="long"/> </number:time-style> **/ /** enum class Order : quint8 { HOURS_MINUTES, HOURS_MINUTES_SECONDS }; **/ const auto order = info_->order(); if (order == ods::duration::Order::HOURS_MINUTES) { AddHours(); AddSeparator(0); AddMinutes(); } else if (order == ods::duration::Order::HOURS_MINUTES_SECONDS) { AddHours(); AddSeparator(0); AddMinutes(); AddSeparator(1); AddSeconds(); } QString s = info_->truncate_on_overflow() ? "true" : "false"; tag_->AttrSet(tag_->ns().number(), ods::style::kTruncateOnOverflow, s); }
FX_BOOL CFX_DateTime::AddMinutes(int32_t iMinutes) { if (iMinutes == 0) { return FALSE; } iMinutes += m_DateTime.Time.sTime.minute; int32_t iHours = iMinutes / 60; iMinutes %= 60; if (iMinutes < 0) { iHours--, iMinutes += 60; } m_DateTime.Time.sTime.minute = (uint8_t)iMinutes; if (iHours != 0) { AddHours(iHours); } return TRUE; }
DateTime DateTimeAdapter::ToUTC( DateTime value ) { int hour = value.hour(), day = value.day(), month = value.month(), year = value.year(), dow = value.dayOfWeek() - 1; int daylightSavingOffset = IsDaylightSaving(day, month, year, dow) ? -1 : 0; int timeZoneOffset = System::DT_getTimeZoneOffset(); int offset = timeZoneOffset + daylightSavingOffset; AddHours( &hour, &day, &month, &year, -offset ); return DateTime(year, month, day, hour, value.minute(), value.second()); }