From: Hokwon Song Date: Thu, 28 Mar 2013 01:38:58 +0000 (+0900) Subject: Apply millisecond of DateTime for Calendar X-Git-Tag: accepted/tizen_2.1/20130425.034849~207^2 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c54b6a3c799697f4cc755503dafc2265329478df;p=platform%2Fframework%2Fnative%2Fappfw.git Apply millisecond of DateTime for Calendar Change-Id: I7d7f26e250d7cc0f27f4e3cdc3cd0931317e7b2d Signed-off-by: Hokwon Song --- diff --git a/src/locales/FLcl_CalendarImpl.cpp b/src/locales/FLcl_CalendarImpl.cpp index 2c55ae3..8e75857 100644 --- a/src/locales/FLcl_CalendarImpl.cpp +++ b/src/locales/FLcl_CalendarImpl.cpp @@ -225,14 +225,15 @@ _CalendarImpl::SetTimeInMillisecImpl(long long millisec) result _CalendarImpl::SetTimeImpl(const DateTime& dateTime) { - return SetTimeImpl(dateTime.GetYear(), dateTime.GetMonth(), dateTime.GetDay(), dateTime.GetHour(), dateTime.GetMinute(), dateTime.GetSecond()); + return SetTimeImpl(dateTime.GetYear(), dateTime.GetMonth(), dateTime.GetDay(), + dateTime.GetHour(), dateTime.GetMinute(), dateTime.GetSecond(), dateTime.GetMillisecond()); } result -_CalendarImpl::SetTimeImpl(int year, int month, int day, int hour, int minute, int second) +_CalendarImpl::SetTimeImpl(int year, int month, int day, int hour, int minute, int second, int millisecond) { SysAssertf(__pCalendar != null, "Not yet constructed! Construct() should be called before use."); - return __pCalendar->SetTime(year, month, day, hour, minute, second); + return __pCalendar->SetTime(year, month, day, hour, minute, second, millisecond); } result @@ -414,9 +415,10 @@ _CalendarImpl::GetTimeImpl(void) const int hour = __pCalendar->GetTimeField(TIME_FIELD_HOUR_OF_DAY); int minute = __pCalendar->GetTimeField(TIME_FIELD_MINUTE); int second = __pCalendar->GetTimeField(TIME_FIELD_SECOND); + int millisecond = __pCalendar->GetTimeField(TIME_FIELD_MILLISECOND); DateTime dateTime; - result r = dateTime.SetValue(year, month, date, hour, minute, second); + result r = dateTime.SetValue(year, month, date, hour, minute, second, millisecond); SysTryReturn(NID_LCL, r == E_SUCCESS, DateTime(), r, "[%s] Unable to set time in DateTime object", GetErrorMessage(r)); return dateTime; diff --git a/src/locales/FLcl_CalendarImpl.h b/src/locales/FLcl_CalendarImpl.h index 211d154..aafc35e 100644 --- a/src/locales/FLcl_CalendarImpl.h +++ b/src/locales/FLcl_CalendarImpl.h @@ -53,7 +53,7 @@ public: result SetTimeFieldImpl(TimeField field, int value); result SetTimeInMillisecImpl(long long millisec); result SetTimeImpl(const Tizen::Base::DateTime& dateTime); - result SetTimeImpl(int year, int month, int day, int hour = 0, int minute = 0, int second = 0); + result SetTimeImpl(int year, int month, int day, int hour = 0, int minute = 0, int second = 0, int millisecond = 0); result SetFirstDayOfWeekImpl(DayOfWeek dayOfWeek); result SetLenientImpl(bool lenient); diff --git a/src/locales/FLcl_IcuCalendarImpl.cpp b/src/locales/FLcl_IcuCalendarImpl.cpp index f3c29b1..2dc5a92 100644 --- a/src/locales/FLcl_IcuCalendarImpl.cpp +++ b/src/locales/FLcl_IcuCalendarImpl.cpp @@ -488,12 +488,13 @@ _IcuCalendarImpl::SetMinDaysInFirstWeek(short value) } result -_IcuCalendarImpl::SetTime(int year, int month, int day, int hour, int minute, int second) +_IcuCalendarImpl::SetTime(int year, int month, int day, int hour, int minute, int second, int millisecond) { SysAssertf(__pIcuCalendar != null, "Not yet constructed! Construct() should be called before use."); UErrorCode ec = U_ZERO_ERROR; UDate old = __pIcuCalendar->getTime(ec); __pIcuCalendar->set(year, month - 1, day, hour, minute, second); + __pIcuCalendar->set(UCAL_MILLISECOND, millisecond); ec = U_ZERO_ERROR; __pIcuCalendar->getTime(ec); diff --git a/src/locales/FLcl_IcuCalendarImpl.h b/src/locales/FLcl_IcuCalendarImpl.h index fc0b134..604ea16 100644 --- a/src/locales/FLcl_IcuCalendarImpl.h +++ b/src/locales/FLcl_IcuCalendarImpl.h @@ -55,7 +55,7 @@ public: virtual result AddTimeField(int field, int amount); // Affect all fields virtual result Roll(int field, int amount); // Does not affect higher fields - virtual result SetTime(int year, int month, int day, int hour = 0, int minute = 0, int second = 0); + virtual result SetTime(int year, int month, int day, int hour = 0, int minute = 0, int second = 0, int millisecond = 0); virtual int GetTimeField(int field) const; virtual result SetTimeField(int field, int value);