class MotionWiretap::WiretapView

Public Class Methods

new(target, &block) click to toggle source
Calls superclass method MotionWiretap::WiretapTarget::new
# File lib/motion-wiretap/ios/wiretap_ios.rb, line 7
def initialize(target, &block)
  super
  @gesture_recognizers = []
end

Public Instance Methods

handle_gesture(gesture) click to toggle source
# File lib/motion-wiretap/ios/wiretap_ios.rb, line 40
def handle_gesture(gesture)
  trigger_changed(gesture)
end
on(recognizer, options=nil, &block) click to toggle source
# File lib/motion-wiretap/ios/wiretap_ios.rb, line 12
def on(recognizer, options=nil, &block)
  if recognizer
    case recognizer
    when :tap
      recognizer = Gestures.tap(self, options)
    when :pinch
      recognizer = Gestures.pinch(self, options)
    when :rotate
      recognizer = Gestures.rotate(self, options)
    when :swipe
      recognizer = Gestures.swipe(self, options)
    when :pan
      recognizer = Gestures.pan(self, options)
    when :press
      recognizer = Gestures.press(self, options)
    else
      raise GestureNotFound.new(recognizer.to_s)
    end

    self.target.addGestureRecognizer(recognizer)
    @gesture_recognizers << recognizer
  end

  listen(&block) if block

  return self
end
teardown() click to toggle source
Calls superclass method MotionWiretap::Wiretap#teardown
# File lib/motion-wiretap/ios/wiretap_ios.rb, line 44
def teardown
  remove_gesture = (-> (recognizer) {
    self.target.removeGestureRecognizer(recognizer)
  }).weak!
  @gesture_recognizers.each(&remove_gesture)
  super
end