summaryrefslogtreecommitdiff
path: root/src/controls/FWebCtrl_GestureState.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/controls/FWebCtrl_GestureState.h')
-rwxr-xr-xsrc/controls/FWebCtrl_GestureState.h168
1 files changed, 168 insertions, 0 deletions
diff --git a/src/controls/FWebCtrl_GestureState.h b/src/controls/FWebCtrl_GestureState.h
new file mode 100755
index 0000000..ba1bc50
--- /dev/null
+++ b/src/controls/FWebCtrl_GestureState.h
@@ -0,0 +1,168 @@
+//
+// Open Service Platform
+// Copyright (c) 2012 Samsung Electronics Co., Ltd.
+//
+// Licensed under the Apache License, Version 2.0 (the License);
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+// http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License.
+//
+
+/**
+ * @file FWebCtrl_GestureState.h
+ * @brief The file contains the declaration of _TapGestureState, _PanningGestureState, _FlickGestureState and _PinchGestureState class.
+ *
+ * The file contains the declaration of _TapGestureState, _PanningGestureState, _FlickGestureState and _PinchGestureState class.
+ */
+#ifndef _FWEB_CTRL_INTERNAL_GESTURE_STATE_H_
+#define _FWEB_CTRL_INTERNAL_GESTURE_STATE_H_
+
+#include <FUi_ITouchEventListener.h>
+
+namespace Tizen { namespace Graphics
+{
+class Point;
+}} // Tizen::Graphics
+
+namespace Tizen { namespace Ui
+{
+class _Control;
+class _TouchInfo;
+}} // Tizen::Ui
+
+namespace Tizen { namespace Web { namespace Controls
+{
+
+class _Web;
+
+class _PinchGestureState
+ : public Tizen::Ui::_ITouchEventListener
+{
+public:
+ _PinchGestureState(_Web* pWeb);
+
+ virtual ~_PinchGestureState(void);
+
+ void InitializeFactor(void);
+
+ Tizen::Graphics::Point GetCenterPoint(const Tizen::Graphics::Point& firstFinger, const Tizen::Graphics::Point& secondFinger);
+
+ double GetZoomFactor(const Tizen::Graphics::Point& firstFinger, const Tizen::Graphics::Point& secondFinger);
+
+ virtual bool OnTouchPressed(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+ virtual bool OnTouchReleased(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+ virtual bool OnTouchMoved(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+ virtual bool OnTouchCanceled(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+private:
+ _Web* __pWebCore;
+
+ int __baseDistance;
+
+ int __distanceTolerance;
+};
+
+class _TapGestureState
+ : public Tizen::Ui::_ITouchEventListener
+{
+public:
+ _TapGestureState(_Web* pWeb, _PinchGestureState* pPinchListener);
+
+ virtual ~_TapGestureState(void);
+
+ void OnLongPressGestureDetected(const Tizen::Ui::_TouchLongPressGestureDetector& gesture);
+
+ virtual bool OnTouchPressed(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+ virtual bool OnTouchReleased(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+ virtual bool OnTouchMoved(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+ virtual bool OnTouchCanceled(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+private:
+ _Web* __pWebCore;
+
+ _PinchGestureState* __pPinchListener;
+
+ bool __longPressed;
+};
+
+class _DoubleTapGestureState
+ : public Tizen::Ui::_ITouchEventListener
+{
+public:
+ _DoubleTapGestureState(_Web* pWeb);
+
+ virtual ~_DoubleTapGestureState(void);
+
+ virtual bool OnTouchPressed(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+ virtual bool OnTouchReleased(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+ virtual bool OnTouchMoved(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+ virtual bool OnTouchCanceled(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+private:
+ _Web* __pWebCore;
+};
+
+class _PanningGestureState
+ : public Tizen::Ui::_ITouchEventListener
+{
+public:
+ _PanningGestureState(_Web* pWeb, _PinchGestureState* pPinchListener);
+
+ virtual ~_PanningGestureState(void);
+
+ virtual bool OnTouchPressed(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+ virtual bool OnTouchReleased(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+ virtual bool OnTouchMoved(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+ virtual bool OnTouchCanceled(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+private:
+ _Web* __pWebCore;
+
+ _PinchGestureState* __pPinchListener;
+};
+
+class _FlickGestureState
+ : public Tizen::Ui::_ITouchEventListener
+{
+public:
+ _FlickGestureState(_Web* pWeb);
+
+ virtual ~_FlickGestureState(void);
+
+ void OnFlickGestureDetected(const Tizen::Ui::_TouchFlickGestureDetector& gesture);
+
+ virtual bool OnTouchPressed(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+ virtual bool OnTouchReleased(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+ virtual bool OnTouchMoved(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+ virtual bool OnTouchCanceled(const Tizen::Ui::_Control& source, const Tizen::Ui::_TouchInfo& touchinfo);
+
+private:
+ _Web* __pWebCore;
+
+ Tizen::Graphics::Point __velocity;
+};
+
+}}} // Tizen::Web::Controls
+#endif // _FWEB_CTRL_INTERNAL_GESTURE_STATE_H_