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 FUiTouchPinchGestureDetector.cpp
19 * @brief This is the implementation file for %TouchPinchGestureDetector class
22 * This file contains the implementation of %TouchPinchGestureDetector class.
26 #include <FUiITouchPinchGestureEventListener.h>
27 #include <FBaseSysLog.h>
28 #include "FUi_TouchPinchGestureDetectorImpl.h"
30 namespace Tizen { namespace Ui
32 TouchPinchGestureDetector::TouchPinchGestureDetector(void)
36 TouchPinchGestureDetector::~TouchPinchGestureDetector(void)
41 TouchPinchGestureDetector::Construct(void)
43 SysAssertf(__pTouchGestureDetectorImpl == null, "Already constructed. Calling Construct() twice or more on a same instance is not allowed for this class.");
45 _TouchGestureDetectorImpl* pImpl = _TouchPinchGestureDetectorImpl::CreateInstanceN(this);
46 result r = GetLastResult();
47 SysTryReturn(NID_UI, pImpl, r, r, "[%s] Propagating.", GetErrorMessage(r));
49 __pTouchGestureDetectorImpl = pImpl;
55 TouchPinchGestureDetector::AddPinchGestureEventListener(ITouchPinchGestureEventListener& listener)
57 SysAssertf(__pTouchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
59 return __pTouchGestureDetectorImpl->AddGestureEventListener(listener);
63 TouchPinchGestureDetector::RemovePinchGestureEventListener(ITouchPinchGestureEventListener& listener)
65 SysAssertf(__pTouchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
67 return __pTouchGestureDetectorImpl->RemoveGestureEventListener(listener);
70 Tizen::Graphics::Point
71 TouchPinchGestureDetector::GetCenterPoint(void) const
73 SysAssertf(__pTouchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
75 const _TouchPinchGestureDetectorImpl* pTouchPinchGestureDetectorImpl = _TouchPinchGestureDetectorImpl::GetInstance(*this);
76 SysAssertf(pTouchPinchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
78 return pTouchPinchGestureDetectorImpl->GetCenterPoint();
81 Tizen::Graphics::FloatPoint
82 TouchPinchGestureDetector::GetCenterPointF(void) const
84 SysAssertf(__pTouchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
86 const _TouchPinchGestureDetectorImpl* pTouchPinchGestureDetectorImpl = _TouchPinchGestureDetectorImpl::GetInstance(*this);
87 SysAssertf(pTouchPinchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
89 return pTouchPinchGestureDetectorImpl->GetCenterPointF();
93 TouchPinchGestureDetector::GetScale(void) const
95 SysAssertf(__pTouchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
97 const _TouchPinchGestureDetectorImpl* pTouchPinchGestureDetectorImpl = _TouchPinchGestureDetectorImpl::GetInstance(*this);
98 SysAssertf(pTouchPinchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
100 return pTouchPinchGestureDetectorImpl->GetScale();
104 TouchPinchGestureDetector::GetScaleF(void) const
106 SysAssertf(__pTouchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
108 const _TouchPinchGestureDetectorImpl* pTouchPinchGestureDetectorImpl = _TouchPinchGestureDetectorImpl::GetInstance(*this);
109 SysAssertf(pTouchPinchGestureDetectorImpl != null, "Not yet constructed. Construct() should be called before used.");
111 return pTouchPinchGestureDetectorImpl->GetScaleF();