public static IEnumerable <BaseView> GetViewsUnderMouse() { var uis = SimpleGestures.GetUIObjectsUnderPosition(Input.mousePosition).Select(r => r.gameObject); foreach (var ui in uis) { var view = ui.GetComponentsInParent <BaseView>().FirstOrDefault(v => v.VisibleState != VisibleState.Closed); while (view != null) { yield return(view); view = view.Owner; } } }
private void InitGestures() { //init gestures Gestures = GetComponent <SimpleGestures>(); Gestures.onSwipeHoriz += (i) => ProcessGesture(i < 0 ? Gesture.SwipeLeft : Gesture.SwipeRight); Gestures.onSwipeVert += (i) => ProcessGesture(i < 0 ? Gesture.SwipeDown : Gesture.SwipeUp); Gestures.onTap += (i) => ProcessGesture(Gesture.Tap); Gestures.onLongTap += (i) => ProcessGesture(Gesture.LongTap); Gestures.onDoubleTap += (i) => ProcessGesture(Gesture.DoubleTap); Gestures.onPan += (v) => { if (dragger.IsDragging) { dragger.OnDragging(v); } }; Gestures.onDragStart += (v) => dragger.OnDragStart(v, Gestures.LastTouchedUI); Gestures.onDragEnd += dragger.OnDragEnd; }
public static IEnumerable <GameObject> GetObjectsUnderMouse() { return(SimpleGestures.GetUIObjectsUnderPosition(Input.mousePosition).Select(r => r.gameObject)); }