Module: MotionWiretap::Gestures
- Defined in:
- lib/motion-wiretap/ios/wiretap_gestures.rb
Overview
Some gesture recognizer translators. Based on SugarCube’s gesture recognizer methods.
Class Method Summary collapse
- .pan(target, fingers_or_options = nil) {|recognizer| ... } ⇒ Object
- .pinch(target) {|recognizer| ... } ⇒ Object
- .press(target, duration_or_options = nil) {|recognizer| ... } ⇒ Object
- .rotate(target) {|recognizer| ... } ⇒ Object
- .swipe(target, direction_or_options) {|recognizer| ... } ⇒ Object
- .tap(target, taps_or_options = nil) {|recognizer| ... } ⇒ Object
Class Method Details
.tap(taps) ⇒ Object .tap(options) ⇒ Object
87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 |
# File 'lib/motion-wiretap/ios/wiretap_gestures.rb', line 87 def pan(target, =nil) fingers = nil min_fingers = nil max_fingers = nil if if .is_a? Hash fingers = [:fingers] || fingers min_fingers = [:min_fingers] || min_fingers max_fingers = [:max_fingers] || max_fingers else fingers = end end # if fingers is assigned, but not min/max, assign it as a default min_fingers ||= fingers max_fingers ||= fingers recognizer = UIPanGestureRecognizer.alloc.initWithTarget(target, action: :handle_gesture) recognizer.maximumNumberOfTouches = min_fingers if min_fingers recognizer.minimumNumberOfTouches = max_fingers if max_fingers return recognizer end |
.pinch(target) {|recognizer| ... } ⇒ Object
33 34 35 36 |
# File 'lib/motion-wiretap/ios/wiretap_gestures.rb', line 33 def pinch(target) recognizer = UIPinchGestureRecognizer.alloc.initWithTarget(target, action: :handle_gesture) return recognizer end |
.press(duration) ⇒ Object .press(options) ⇒ Object
119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 |
# File 'lib/motion-wiretap/ios/wiretap_gestures.rb', line 119 def press(target, =nil) duration = nil taps = nil fingers = nil if if .is_a? Hash duration = [:duration] || duration taps = [:taps] || taps fingers = [:fingers] || fingers else duration = end end recognizer = UILongPressGestureRecognizer.alloc.initWithTarget(target, action: :handle_gesture) recognizer.minimumPressDuration = duration if duration recognizer.numberOfTapsRequired = taps if taps recognizer.numberOfTouchesRequired = fingers if fingers return recognizer end |
.rotate(target) {|recognizer| ... } ⇒ Object
39 40 41 42 |
# File 'lib/motion-wiretap/ios/wiretap_gestures.rb', line 39 def rotate(target) recognizer = UIRotationGestureRecognizer.alloc.initWithTarget(target, action: :handle_gesture) return recognizer end |
.swipe(taps) ⇒ Object .swipe(options) ⇒ Object
50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
# File 'lib/motion-wiretap/ios/wiretap_gestures.rb', line 50 def swipe(target, ) direction = nil fingers = nil if if .is_a? Hash direction = [:direction] || direction fingers = [:fingers] || fingers else direction = end end case direction when :left direction = UISwipeGestureRecognizerDirectionLeft when :right direction = UISwipeGestureRecognizerDirectionRight when :up direction = UISwipeGestureRecognizerDirectionUp when :down direction = UISwipeGestureRecognizerDirectionDown end recognizer = UISwipeGestureRecognizer.alloc.initWithTarget(target, action: :handle_gesture) recognizer.direction = direction if direction recognizer.numberOfTouchesRequired = fingers if fingers return recognizer end |
.tap(taps) ⇒ Object .tap(options) ⇒ Object
13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/motion-wiretap/ios/wiretap_gestures.rb', line 13 def tap(target, =nil) taps = nil fingers = nil if if .is_a? Hash taps = [:taps] || taps fingers = [:fingers] || fingers else taps = end end recognizer = UITapGestureRecognizer.alloc.initWithTarget(target, action: :handle_gesture) recognizer.numberOfTapsRequired = taps if taps recognizer.numberOfTouchesRequired = fingers if fingers return recognizer end |