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.
18 * @file FUiTouchGestureDetector.cpp
19 * @brief This is the implementation file for TouchGestureDetector class
22 * This file contains the implementation of TouchGestureDetector class.
26 #include <FUiTouchGestureDetector.h>
27 #include <FBaseSysLog.h>
28 #include "FUi_TouchGestureDetectorImpl.h"
30 namespace Tizen { namespace Ui
32 TouchGestureDetector::TouchGestureDetector(void)
33 : __pTouchGestureDetectorImpl(null)
38 TouchGestureDetector::~TouchGestureDetector(void)
40 delete __pTouchGestureDetectorImpl;
41 __pTouchGestureDetectorImpl = null;
45 TouchGestureDetector::Construct(void)
47 SysAssertf(__pTouchGestureDetectorImpl == null, "Already constructed. Calling Construct() twice or more on a same instance is not allowed for this class.");
49 _TouchGestureDetectorImpl* pImpl = _TouchGestureDetectorImpl::CreateInstanceN(this);
50 result r = GetLastResult();
51 SysTryReturn(NID_UI, pImpl, r, r, "[%s] Propagating.", GetErrorMessage(r));
53 __pTouchGestureDetectorImpl = pImpl;
58 TouchGestureDetector::AddGestureEventListener(Tizen::Ui::ITouchGestureEventListener& listener)
60 SysAssertf(__pTouchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
62 result r = __pTouchGestureDetectorImpl->AddGestureEventListener(listener);
63 SysTryLog(NID_UI, r == E_SUCCESS, "[%s] Propagating.", GetErrorMessage(r));
69 TouchGestureDetector::RemoveGestureEventListener(Tizen::Ui::ITouchGestureEventListener& listener)
71 SysAssertf(__pTouchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
73 result r = __pTouchGestureDetectorImpl->RemoveGestureEventListener(listener);
74 SysTryLog(NID_UI, r == E_SUCCESS, "[%s] Propagating.", GetErrorMessage(r));
80 TouchGestureDetector::SetDetectorState(Tizen::Ui::TouchGestureDetectorState state)
82 SysAssertf(__pTouchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
84 result r = __pTouchGestureDetectorImpl->SetDetectorState(state);
85 SysTryLog(NID_UI, r == E_SUCCESS, "[%s] Propagating.", GetErrorMessage(r));
90 Tizen::Ui::TouchGestureDetectorState
91 TouchGestureDetector::GetDetectorState(void) const
93 SysAssertf(__pTouchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
95 return __pTouchGestureDetectorImpl->GetDetectorState();
99 TouchGestureDetector::GetControl(void) const
101 SysAssertf(__pTouchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
103 return __pTouchGestureDetectorImpl->GetControl();
107 TouchGestureDetector::SetDelayTouchEventEnabled(bool enable)
109 SysAssertf(__pTouchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
111 result r = __pTouchGestureDetectorImpl->SetDelayTouchEventEnabled(enable);
112 SysTryLog(NID_UI, r == E_SUCCESS, "[%s] Propagating.", GetErrorMessage(r));
118 TouchGestureDetector::IsDelayTouchEventEnabled(void) const
120 SysAssertf(__pTouchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
122 return __pTouchGestureDetectorImpl->IsDelayTouchEventEnabled();
126 TouchGestureDetector::SetCancelTouchEventOnSuccessEnabled(bool enable)
128 SysAssertf(__pTouchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
130 result r = __pTouchGestureDetectorImpl->SetCancelTouchEventOnSuccessEnabled(enable);
131 SysTryLog(NID_UI, r == E_SUCCESS, "[%s] Propagating.", GetErrorMessage(r));
137 TouchGestureDetector::IsCancelTouchEventOnSuccessEnabled(void) const
139 SysAssertf(__pTouchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
141 return __pTouchGestureDetectorImpl->IsCancelTouchEventOnSuccessEnabled();
145 TouchGestureDetector::StartOnFailureOf(const TouchGestureDetector& gesture)
147 return StartOnFailureOf(const_cast< TouchGestureDetector* >(&gesture));
151 TouchGestureDetector::StartOnFailureOf(TouchGestureDetector* pGestureDetector)
153 SysTryReturnResult(NID_UI, pGestureDetector != null, E_INVALID_ARG, "pGestureDetector is null.");
154 SysAssertf(__pTouchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
156 result r = __pTouchGestureDetectorImpl->StartOnFailureOf(*pGestureDetector);
157 SysTryLog(NID_UI, r == E_SUCCESS, "[%s] Propagating.", GetErrorMessage(r));
163 TouchGestureDetector::OnTouchPressed(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchInfo)
168 TouchGestureDetector::OnTouchMoved(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchInfo)
173 TouchGestureDetector::OnTouchReleased(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchInfo)
178 TouchGestureDetector::OnTouchCanceled(Tizen::Ui::Control& source, const Tizen::Ui::TouchEventInfo& touchInfo)