private MultiTouchBinding GetBinding(IMultiTouchObserver observer) { foreach (MultiTouchBinding binding in this.Bindings) { if (binding.Observer == observer) { return(binding); } } foreach (MultiTouchBinding binding in this.BindingsToAdd) { if (binding.Observer == observer) { return(binding); } } foreach (MultiTouchBinding binding in this.BindingsToRemove) { if (binding.Observer == observer) { return(binding); } } return(null); }
/// <summary> /// Removes the binding for the observer. /// </summary> /// <param name="observer">The observer to remove.</param> public void Remove(IMultiTouchObserver observer) { MultiTouchBinding binding; binding = this.GetBinding(observer); if (binding != null) { this.RemoveBinding(binding); } }
/// <summary> /// Adds a binding for the observer, unless one already exists. /// </summary> /// <param name="observer">The observer to add.</param> /// <param name="priority"> /// The priority of the observer. Observers with higher priority will /// receive touch events before observers with lower priority.The /// default value is zero. /// </param> public void Add(IMultiTouchObserver observer, int priority = 0) { MultiTouchBinding binding; binding = this.GetBinding(observer); if (binding == null) { binding = new MultiTouchBinding(); binding.Observer = observer; binding.Priority = priority; this.AddBinding(binding); } }
public void Remove(IMultiTouchObserver observer) { this.MultiTouchHandler.Remove(observer); }
public void Add(IMultiTouchObserver observer, int priority = 0) { this.MultiTouchHandler.Add(observer, priority); }