2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
5 // Licensed under the Flora License, Version 1.0 (the License);
6 // you may not use this file except in compliance with the License.
7 // You may obtain a copy of the License at
9 // http://floralicense.org/license/
11 // Unless required by applicable law or agreed to in writing, software
12 // distributed under the License is distributed on an AS IS BASIS,
13 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14 // See the License for the specific language governing permissions and
15 // limitations under the License.
19 * @file FUiCtrlEditDate.cpp
20 * @brief This file contains implementation of EditDate class
23 #include <FUiCtrlEditDate.h>
24 #include <FBaseSysLog.h>
25 #include "FUiCtrl_EditDateImpl.h"
27 using namespace Tizen::Graphics;
28 using namespace Tizen::Base;
29 using namespace Tizen::Ui;
31 namespace Tizen { namespace Ui { namespace Controls
34 EditDate::EditDate(void)
38 EditDate::~EditDate(void)
43 EditDate::Construct(const Point& point, const String& title)
45 _EditDateImpl* pEditDateImpl = _EditDateImpl::GetInstance(*this);
46 SysAssertf((pEditDateImpl == null),
47 "Already constructed. Calling Construct() twice or more on a same instance is not allowed for this class.");
49 pEditDateImpl = _EditDateImpl::CreateEditDateImplN(this, point, title);
50 result r = GetLastResult();
51 SysTryReturn(NID_UI_CTRL, pEditDateImpl, r, r, "[%s] Propagating.", GetErrorMessage(r));
53 _pControlImpl = pEditDateImpl;
59 EditDate::AddDateChangeEventListener(IDateChangeEventListener& listener)
61 _EditDateImpl* pEditDateImpl = _EditDateImpl::GetInstance(*this);
62 SysAssertf((pEditDateImpl != null), "Not yet constructed. Construct() should be called before use.");
64 result r = pEditDateImpl->AddDateChangeEventListener(listener);
65 SysTryReturnVoidResult(NID_UI_CTRL, r == E_SUCCESS, r, "[%s] Propagating.", GetErrorMessage(r));
70 EditDate::RemoveDateChangeEventListener(IDateChangeEventListener& listener)
72 _EditDateImpl* pEditDateImpl = _EditDateImpl::GetInstance(*this);
73 SysAssertf((pEditDateImpl != null), "Not yet constructed. Construct() should be called before use.");
75 result r = pEditDateImpl->RemoveDateChangeEventListener(listener);
76 SysTryReturnVoidResult(NID_UI_CTRL, r == E_SUCCESS, r, "[%s] Propagating.", GetErrorMessage(r));
81 EditDate::GetDate(void) const
83 const _EditDateImpl* pEditDateImpl = _EditDateImpl::GetInstance(*this);
84 SysAssertf((pEditDateImpl != null), "Not yet constructed. Construct() should be called before use.");
86 return pEditDateImpl->GetDate();
90 EditDate::GetDay(void) const
92 const _EditDateImpl* pEditDateImpl = _EditDateImpl::GetInstance(*this);
93 SysAssertf((pEditDateImpl != null), "Not yet constructed. Construct() should be called before use.");
95 return pEditDateImpl->GetDay();
99 EditDate::GetMonth(void) const
101 const _EditDateImpl* pEditDateImpl = _EditDateImpl::GetInstance(*this);
102 SysAssertf((pEditDateImpl != null), "Not yet constructed. Construct() should be called before use.");
104 return pEditDateImpl->GetMonth();
108 EditDate::GetYear(void) const
110 const _EditDateImpl* pEditDateImpl = _EditDateImpl::GetInstance(*this);
111 SysAssertf((pEditDateImpl != null), "Not yet constructed. Construct() should be called before use.");
113 return pEditDateImpl->GetYear();
117 EditDate::SetDate(const DateTime& date)
119 _EditDateImpl* pEditDateImpl = _EditDateImpl::GetInstance(*this);
120 SysAssertf((pEditDateImpl != null), "Not yet constructed. Construct() should be called before use.");
122 pEditDateImpl->SetDate(date);
127 EditDate::SetCurrentDate(void)
129 _EditDateImpl* pEditDateImpl = _EditDateImpl::GetInstance(*this);
130 SysAssertf((pEditDateImpl != null), "Not yet constructed. Construct() should be called before use.");
132 pEditDateImpl->SetCurrentDate();
137 EditDate::SetYear(int year)
139 _EditDateImpl* pEditDateImpl = _EditDateImpl::GetInstance(*this);
140 SysAssertf((pEditDateImpl != null), "Not yet constructed. Construct() should be called before use.");
142 return pEditDateImpl->SetYear(year);
146 EditDate::SetMonth(int month)
148 _EditDateImpl* pEditDateImpl = _EditDateImpl::GetInstance(*this);
149 SysAssertf((pEditDateImpl != null), "Not yet constructed. Construct() should be called before use.");
151 return pEditDateImpl->SetMonth(month);
155 EditDate::SetDay(int day)
157 _EditDateImpl* pEditDateImpl = _EditDateImpl::GetInstance(*this);
158 SysAssertf((pEditDateImpl != null), "Not yet constructed. Construct() should be called before use.");
160 return pEditDateImpl->SetDay(day);
164 EditDate::SetDatePickerEnabled(bool enable)
166 _EditDateImpl* pEditDateImpl = _EditDateImpl::GetInstance(*this);
167 SysAssertf((pEditDateImpl != null), "Not yet constructed. Construct() should be called before use.");
169 pEditDateImpl->SetDatePickerEnabled(enable);
174 EditDate::IsDatePickerEnabled(void) const
176 const _EditDateImpl* pEditDateImpl = _EditDateImpl::GetInstance(*this);
177 SysAssertf((pEditDateImpl != null), "Not yet constructed. Construct() should be called before use.");
179 return pEditDateImpl->IsDatePickerEnabled();
183 EditDate::SetYearRange(int minYear, int maxYear)
185 _EditDateImpl* pEditDateImpl = _EditDateImpl::GetInstance(*this);
186 SysAssertf((pEditDateImpl != null), "Not yet constructed. Construct() should be called before use.");
188 return pEditDateImpl->SetYearRange(minYear, maxYear);
192 EditDate::GetYearRange(int& minYear, int& maxYear) const
194 const _EditDateImpl* pEditDateImpl = _EditDateImpl::GetInstance(*this);
195 SysAssertf((pEditDateImpl != null), "Not yet constructed. Construct() should be called before use.");
197 return pEditDateImpl->GetYearRange(minYear, maxYear);
200 }}} //Tizen::Ui::Controls