public sealed class GestureOptions
{
private static readonly GestureOptions instance = new GestureOptions();
+ private static uint panGestureMinimumTouchesRequired;
+ private static uint panGestureMaximumTouchesRequired;
/// <summary>
/// Constructor.
if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
}
+ /// <summary>
+ /// Sets the minimum number of touches required for the pan gesture to be detected.
+ /// </summary>
+ /// <param name="minimum"></param>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public void SetPanGestureMinimumTouchesRequired(uint minimum)
+ {
+ panGestureMinimumTouchesRequired = minimum;
+ }
+
+ /// <summary>
+ /// Gets the minimum number of touches required for the pan gesture to be detected.
+ /// </summary>
+ /// <returns>The minimum number of touches required</returns>
+ internal uint GetPanGestureMinimumTouchesRequired()
+ {
+ return panGestureMinimumTouchesRequired;
+ }
+
+ /// <summary>
+ /// Sets the maximum number of touches required for the pan gesture to be detected.
+ /// </summary>
+ /// <param name="minimum"></param>
+ [EditorBrowsable(EditorBrowsableState.Never)]
+ public void SetPanGestureMaximumTouchesRequired(uint maximum)
+ {
+ panGestureMaximumTouchesRequired = maximum;
+ }
+
+ /// <summary>
+ /// Gets the maximum number of touches required for the pan gesture to be detected.
+ /// </summary>
+ /// <returns>The maximum number of touches required</returns>
+ internal uint GetPanGestureMaximumTouchesRequired()
+ {
+ return panGestureMaximumTouchesRequired;
+ }
+
/// <summary>
/// Sets the minimum distance required to start a pinch event
/// </summary>
public PanGestureDetector() : this(Interop.PanGestureDetector.New(), true)
{
if (NDalicPINVOKE.SWIGPendingException.Pending) throw NDalicPINVOKE.SWIGPendingException.Retrieve();
-
}
/// <summary>
internal PanGestureDetector(global::System.IntPtr cPtr, bool cMemoryOwn) : this(cPtr, cMemoryOwn, cMemoryOwn)
{
+ Initialized();
}
internal PanGestureDetector(global::System.IntPtr cPtr, bool cMemoryOwn, bool cRegister) : base(cPtr, cMemoryOwn, cRegister)
{
+ Initialized();
+ }
+
+ private void Initialized()
+ {
+ if (HasBody())
+ {
+ if (GestureOptions.Instance.GetPanGestureMinimumTouchesRequired() > 0)
+ {
+ SetMinimumTouchesRequired(GestureOptions.Instance.GetPanGestureMinimumTouchesRequired());
+ }
+
+ if (GestureOptions.Instance.GetPanGestureMaximumTouchesRequired() > 0)
+ {
+ SetMaximumTouchesRequired(GestureOptions.Instance.GetPanGestureMaximumTouchesRequired());
+ }
+ }
}
private DaliEventHandler<object, DetectedEventArgs> detectedEventHandler;