Fixed TDIS-4588 : SetDate API setting wrong value in EditDate.
authorsyed khaja moinuddin <moinuddin.s@samsung.com>
Mon, 18 Mar 2013 05:21:44 +0000 (10:51 +0530)
committersyed khaja moinuddin <moinuddin.s@samsung.com>
Mon, 18 Mar 2013 05:21:44 +0000 (10:51 +0530)
Signed-off-by: syed khaja moinuddin <moinuddin.s@samsung.com>
Change-Id: Ic0e71ab248893fe9bfd249c2b7bef04075858ed5

src/ui/controls/FUiCtrl_EditDateImpl.cpp
src/ui/inc/FUiCtrl_EditDateImpl.h

index 88ff0de..2078ded 100644 (file)
@@ -221,7 +221,8 @@ _EditDateImpl::GetYear(void) const
 void
 _EditDateImpl::SetDate(const DateTime& date)
 {
-       ClearLastResult();
+       result r = ValidateYear(date.GetYear());
+       SysTryReturnVoidResult(NID_UI_CTRL, r == E_SUCCESS, r, "[E_INVALID_ARG] Invalid argument is used. year (%d)", date.GetYear());
 
        GetCore().SetPropertyDate(Variant(date));
        return;
@@ -239,6 +240,19 @@ _EditDateImpl::SetCurrentDate(void)
 result
 _EditDateImpl::SetYear(int year)
 {
+       result r = ValidateYear(year);
+       SysTryReturn(NID_UI_CTRL, r == E_SUCCESS, r, r,
+                       "[E_INVALID_ARG] Invalid argument is used. year (%d).", year);
+
+       r = GetCore().SetPropertyYear(Variant(year));
+       SysTryLog(NID_UI_CTRL, r == E_SUCCESS, "[%s] Propagating.", GetErrorMessage(r));
+
+       return r;
+}
+
+result
+_EditDateImpl::ValidateYear(int year)
+{
        ClearLastResult();
        SysTryReturn(NID_UI_CTRL, (year >= DATETIME_YEAR_MIN && year <= DATETIME_YEAR_MAX), E_INVALID_ARG, E_INVALID_ARG,
                        "[E_INVALID_ARG] Invalid argument is used. year (%d).", year);
@@ -251,11 +265,7 @@ _EditDateImpl::SetYear(int year)
        SysTryReturn(NID_UI_CTRL, (year >= minYear && year <= maxYear), E_INVALID_ARG, E_INVALID_ARG,
                        "[E_INVALID_ARG] Invalid argument is used. year (%d).", year);
 
-       result r = GetCore().SetPropertyYear(Variant(year));
-
-       SysTryLog(NID_UI_CTRL, r == E_SUCCESS, "[%s] Propagating.", GetErrorMessage(r));
-
-       return r;
+       return E_SUCCESS;
 }
 
 result
index 936984a..7cb008c 100644 (file)
@@ -61,6 +61,7 @@ public:
        void SetDate(const Tizen::Base::DateTime& date);
        void SetCurrentDate(void);
        result SetYear(int year);
+       result ValidateYear(int year);
        result SetMonth(int month);
        result SetDay(int day);
        void SetDatePickerEnabled(bool enable);