2 // Open Service Platform
3 // Copyright (c) 2012-2013 Samsung Electronics Co., Ltd.
5 // Licensed under the Apache License, Version 2.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://www.apache.org/licenses/LICENSE-2.0/
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 FUiCtrl_Scroll.cpp
20 * @brief This is the implementation file for the _Scroll class.
23 #include <FBaseSysLog.h>
24 #include "FUiCtrl_Scroll.h"
25 #include "FUiCtrl_ScrollPresenter.h"
27 using namespace Tizen::Base;
28 using namespace Tizen::Graphics;
29 using namespace Tizen::Ui::Animations;
31 namespace Tizen { namespace Ui { namespace Controls
34 _Scroll::_Scroll(void)
39 _Scroll::~_Scroll(void)
46 _Scroll::CreateScrollN(Tizen::Ui::_Control& parentCtrl,
47 _ScrollDirection scrollDir,
48 bool enableFadeEffect,
59 _Scroll* pScroll = new (std::nothrow) _Scroll();
60 SysTryReturn(NID_UI_CTRL, pScroll, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Memory allocation failed.");
63 r = pScroll->Construct(parentCtrl,
72 SysTryCatch(NID_UI_CTRL, r == E_SUCCESS, , r, "[%s] Propagating", GetErrorMessage(r));
82 _Scroll::Construct(Tizen::Ui::_Control& parentCtrl,
83 _ScrollDirection scrollDir,
84 bool enableFadeEffect,
92 _ScrollPresenter* pPresenter = _ScrollPresenter::CreateScrollPresenterN(parentCtrl,
102 SysTryReturnResult(NID_UI_CTRL, pPresenter, GetLastResult(), "[%s] Propagating.", GetErrorMessage(GetLastResult()));
104 SetPresenter((_ScrollPresenter &)*pPresenter);
113 _Scroll::SetPresenter(_ScrollPresenter& scrollPresenter)
115 __pPresenter = &scrollPresenter;
119 _Scroll::GetPresenter(void) const
121 return *__pPresenter;
125 _Scroll::SetScrollDirection(_ScrollDirection scrollDir)
127 return GetPresenter().SetScrollDirection(scrollDir);
131 _Scroll::GetScrollDirection(void) const
133 return GetPresenter().GetScrollDirection();
137 _Scroll::SetScrollRange(float viewRange, float scrollRange)
139 return GetPresenter().SetScrollRange(viewRange, scrollRange);
143 _Scroll::GetScrollRange(float* pViewRange, float* pScrollRange) const
145 GetPresenter().GetScrollRange(pViewRange, pScrollRange);
149 _Scroll::SetScrollPosition(float scrollPosition)
151 return GetPresenter().SetScrollPosition(scrollPosition);
155 _Scroll::GetScrollPosition(void) const
157 return GetPresenter().GetScrollPosition();
161 _Scroll::SetContextMenuScrollType(bool isContextMenu)
163 return GetPresenter().SetContextMenuScrollType(isContextMenu);
167 _Scroll::EnableFadeEffect(bool enable)
169 GetPresenter().EnableFadeEffect(enable);
173 _Scroll::IsEnabledFadeEffect(void) const
175 return GetPresenter().IsEnabledFadeEffect();
179 _Scroll::IsOnFadeEffect(void) const
181 return GetPresenter().IsOnFadeEffect();
185 _Scroll::EnableScrollingEffect(bool enable)
187 GetPresenter().EnableScrollingEffect(enable);
191 _Scroll::IsEnabledScrollingEffect(void) const
193 return GetPresenter().IsEnabledScrollingEffect();
197 _Scroll::EnableOverScrollingEffect(bool enable)
199 GetPresenter().EnableOverScrollingEffect(enable);
203 _Scroll::IsEnabledOverScrollingEffect(void) const
205 return GetPresenter().IsEnabledOverScrollingEffect();
209 _Scroll::SetParentUsingViewport(bool useViewport)
211 GetPresenter().SetParentUsingViewport(useViewport);
215 _Scroll::IsParentUsingViewport(void) const
217 return GetPresenter().IsParentUsingViewport();
221 _Scroll::SetScrollVisibility(bool visibility)
223 return GetPresenter().SetScrollVisibility(visibility);
227 _Scroll::GetScrollVisibility(void) const
229 return GetPresenter().GetScrollVisibility();
233 _Scroll::CancelFadeEffect(void)
235 GetPresenter().CancelFadeEffect();
239 _Scroll::SetScrollingEffectVisibility(bool visibility)
241 return GetPresenter().SetScrollingEffectVisibility(visibility);
245 _Scroll::EnableJumpToTop(bool enable)
247 return GetPresenter().EnableJumpToTop(enable);
251 _Scroll::IsEnabledJumpToTop(void) const
253 return GetPresenter().IsEnabledJumpToTop();
257 _Scroll::EnableHandler(bool enable)
259 return GetPresenter().EnableHandler(enable);
263 _Scroll::IsEnabledHandler(void) const
265 return GetPresenter().IsEnabledHandler();
269 _Scroll::AddScrollEventListener(const Tizen::Ui::Controls::_IScrollEventListener& listener)
271 GetPresenter().AddScrollEventListener(listener);
275 _Scroll::RemoveScrollEventListener(const Tizen::Ui::Controls::_IScrollEventListener& listener)
277 GetPresenter().RemoveScrollEventListener(listener);
281 _Scroll::OnParentBoundsChanged(void)
283 GetPresenter().OnParentBoundsChanged();
287 _Scroll::OnDraw(void)
289 GetPresenter().OnDraw();
293 _Scroll::OnTouchPressed(const _Control& source, const _TouchInfo& touchinfo)
295 return GetPresenter().OnTouchPressed(source, touchinfo);
299 _Scroll::OnTouchReleased(const _Control& source, const _TouchInfo& touchinfo)
301 return GetPresenter().OnTouchReleased(source, touchinfo);
305 _Scroll::OnTouchMoved(const _Control& source, const _TouchInfo& touchinfo)
307 return GetPresenter().OnTouchMoved(source, touchinfo);
311 _Scroll::OnTouchMoveHandled(const _Control& control)
313 return GetPresenter().OnTouchMoveHandled(control);
317 _Scroll::HitTest(const Tizen::Graphics::FloatPoint& point)
319 return GetPresenter().HitTest(point);
322 }}} // Tizen::Ui::Controls