Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
Loading...
Searching...
No Matches
CGenericTouchPinchDetector Class Reference

Implementation of IGenericTouchGestureDetector to detect pinch/zoom gestures with at least two active touch pointers. More...

#include <GenericTouchPinchDetector.h>

Inheritance diagram for CGenericTouchPinchDetector:
IGenericTouchGestureDetector ITouchInputHandling ITouchActionHandler

Public Member Functions

 CGenericTouchPinchDetector (ITouchActionHandler *handler, float dpi)
 
 ~CGenericTouchPinchDetector () override=default
 
bool OnTouchDown (unsigned int index, const Pointer &pointer) override
 A new touch pointer has been recognised.
 
bool OnTouchUp (unsigned int index, const Pointer &pointer) override
 An active touch pointer has vanished.
 
bool OnTouchMove (unsigned int index, const Pointer &pointer) override
 An active touch pointer has moved.
 
- Public Member Functions inherited from IGenericTouchGestureDetector
 IGenericTouchGestureDetector (ITouchActionHandler *handler, float dpi)
 
 ~IGenericTouchGestureDetector () override=default
 
bool IsDone ()
 Check whether the gesture recognition is finished or not.
 
virtual bool OnTouchUpdate (unsigned int index, const Pointer &pointer)
 An active touch pointer's values have been updated but no event has occurred.
 
- Public Member Functions inherited from ITouchInputHandling
 ITouchInputHandling ()
 
 ~ITouchInputHandling () override=default
 
void RegisterHandler (ITouchActionHandler *touchHandler)
 Register a touch input handler.
 
void UnregisterHandler ()
 Unregister the previously registered touch handler.
 

Additional Inherited Members

- Static Public Attributes inherited from IGenericTouchGestureDetector
static constexpr int MAX_POINTERS = 2
 
- Protected Member Functions inherited from ITouchInputHandling
void OnTouchAbort () override
 A touch action has been aborted.
 
bool OnSingleTouchStart (float x, float y) override
 A single touch has started.
 
bool OnSingleTouchHold (float x, float y) override
 A single touch has been held down for a certain amount of time.
 
bool OnSingleTouchMove (float x, float y, float offsetX, float offsetY, float velocityX, float velocityY) override
 A single touch has moved.
 
bool OnSingleTouchEnd (float x, float y) override
 A single touch has been lifted.
 
bool OnMultiTouchDown (float x, float y, int32_t pointer) override
 An additional touch has been performed.
 
bool OnMultiTouchHold (float x, float y, int32_t pointers=2) override
 Multiple simultaneous touches have been held down for a certain amount of time.
 
bool OnMultiTouchMove (float x, float y, float offsetX, float offsetY, float velocityX, float velocityY, int32_t pointer) override
 A touch has moved.
 
bool OnMultiTouchUp (float x, float y, int32_t pointer) override
 A touch has been lifted (but there are still active touches)
 
bool OnTouchGestureStart (float x, float y) override
 A pan gesture with a single touch has been started.
 
bool OnTouchGesturePan (float x, float y, float offsetX, float offsetY, float velocityX, float velocityY) override
 A pan gesture with a single touch is in progress.
 
bool OnTouchGestureEnd (float x, float y, float offsetX, float offsetY, float velocityX, float velocityY) override
 A pan gesture with a single touch has ended.
 
void OnTap (float x, float y, int32_t pointers=1) override
 A tap with a one or more touches has been performed.
 
void OnLongPress (float x, float y, int32_t pointers=1) override
 One or more touches have been held down for a certain amount of time.
 
void OnSwipe (TouchMoveDirection direction, float xDown, float yDown, float xUp, float yUp, float velocityX, float velocityY, int32_t pointers=1) override
 One or more touches has been moved quickly in a single direction in a short time.
 
void OnZoomPinch (float centerX, float centerY, float zoomFactor) override
 Two simultaneous touches have been held down and moved to perform a zooming/pinching gesture.
 
void OnRotate (float centerX, float centerY, float angle) override
 Two simultaneous touches have been held down and moved to perform a rotating gesture.
 
- Protected Member Functions inherited from ITouchActionHandler
virtual ~ITouchActionHandler ()=default
 
- Protected Attributes inherited from IGenericTouchGestureDetector
bool m_done = false
 Whether the gesture recognition is finished or not.
 
float m_dpi
 DPI value of the touch screen.
 
std::array< Pointer, MAX_POINTERSm_pointers
 Local list of all known touch pointers.
 

Detailed Description

Implementation of IGenericTouchGestureDetector to detect pinch/zoom gestures with at least two active touch pointers.

See also
IGenericTouchGestureDetector

Constructor & Destructor Documentation

◆ CGenericTouchPinchDetector()

CGenericTouchPinchDetector::CGenericTouchPinchDetector ( ITouchActionHandler * handler,
float dpi )
inline

◆ ~CGenericTouchPinchDetector()

CGenericTouchPinchDetector::~CGenericTouchPinchDetector ( )
overridedefault

Member Function Documentation

◆ OnTouchDown()

bool CGenericTouchPinchDetector::OnTouchDown ( unsigned int index,
const Pointer & pointer )
overridevirtual

A new touch pointer has been recognised.

Parameters
indexIndex of the given touch pointer
pointerTouch pointer that has changed
Returns
True if the event was handled otherwise false

Implements IGenericTouchGestureDetector.

◆ OnTouchMove()

bool CGenericTouchPinchDetector::OnTouchMove ( unsigned int index,
const Pointer & pointer )
overridevirtual

An active touch pointer has moved.

Parameters
indexIndex of the given touch pointer
pointerTouch pointer that has changed
Returns
True if the event was handled otherwise false

Reimplemented from IGenericTouchGestureDetector.

◆ OnTouchUp()

bool CGenericTouchPinchDetector::OnTouchUp ( unsigned int index,
const Pointer & pointer )
overridevirtual

An active touch pointer has vanished.

If the first touch pointer is lifted and there are more active touch pointers, the remaining pointers change their index.

Parameters
indexIndex of the given touch pointer
pointerTouch pointer that has changed
Returns
True if the event was handled otherwise false

Reimplemented from IGenericTouchGestureDetector.


The documentation for this class was generated from the following files: