Partager via


Gesture Recognizer Classes and Functions (Compact 7)

3/12/2014

This topic describes the GestureRecognizer class and other classes of the built-in gesture recognizer, as well as some of the methods implemented by these classes.

The GestureRecognizer class provides the following public methods:

  • Instance
  • RecognizeGesture
  • SetSettings
  • GetSettings

When a touch event occurs, the gesture core calls the RecognizeGesture function (in entry.cpp), as discussed in Touch Event from Gesture Core to the Recognizers. RecognizeGesture calls the GestureRecognizer::RecognizeGesture method (in GestureRecognizer.cpp). The GestureRecognizer class uses either the DMRecognizer class (in DMRecognizer.cpp) or the TouchGesture class (in TouchRecognizer.cpp) to perform the recognition task. It uses DMRecognizer if the window that generated the event is a direct manipulation window (that is, the direct manipulation gesture is enabled for the window); otherwise, it uses the TouchGesture class. These two classes, DMRecognizer and TouchGesture, both provide the following public methods:

  • OnBeginGestureSession
  • OnEndGestureSession
  • HandleTouchEvent

DMRecognizer provides the following additional methods:

  • OnHoldComplete
  • IsDMWindow

The GestureRecognizer class uses IsDMWindow to determine, at the start of a gesture session, whether the window has direct manipulation gestures enabled.

The TouchGesture class makes uses of other classes for specific gestures. The gesture-specific classes are as follows:

  • FlickRecognizer
  • HoldRecognizer
  • SelectRecognizer (handles both single-and double-tap gestures)

These classes implement methods according to their recognition needs. The following table shows some of the methods implemented in some of the classes.

Public method Classes

AddPoint

FlickRecognizer

OnContactDown

HoldRecognizer, SelectRecognizer

OnContactMove

HoldRecognizer, SelectRecognizer

RecognizeFlick

FlickRecognizer

OnContactUp

HoldRecognizer

See Also

Concepts

Gesture Recognition