   }
 
   override func beginTrackingWithTouch(touch: UITouch, withEvent event: UIEvent) -> Bool {
+    if isSnapping {
+      println("Canceled snapping")
+      snapAnimUIDynamicAnimator.removeAllBehaviors()
+      isSnapping = false
+    }
     expanded = true
     continueTrackingWithTouch(touch, withEvent: event)
     return true  // Track continuously

      setupMidPoints()
    }
  }
  
  /// Seconds from the time user lifts touch until the control auto-closes
  var secondsToClose: CGFloat? = 0.5

      let snapPoint = CGPoint(x: t.frame.midX,y: snapPointY)
      let snap = UISnapBehavior(item: centerTick!, snapToPoint: snapPoint)
      snap.damping = 0.1
      isSnapping = true
//      snap.action = {
//        println("Snapping")
//      }
      snapAnimUIDynamicAnimator.addBehavior(snap)
    } else {
      closeLater()
    }
