     var pageControl:UIPageControl!
     var backgroundView:UIView!
     var closeButton:UIButton!
+    var scrollMode:PhotoSliderControllerScrollMode = .None
 
     public var delegate: PhotoSliderDelegate? = nil
     public var visiblePageControl = true

    
    public func scrollViewDidEndDragging(scrollView: UIScrollView, willDecelerate decelerate: Bool) {

        let screenHeight = UIScreen.mainScreen().bounds.size.height
        let screenWidth = UIScreen.mainScreen().bounds.size.width
        let velocity = scrollView.panGestureRecognizer.velocityInView(scrollView)

        if velocity.y < -500 {
            self.collectionView.frame = scrollView.frame;

            if self.delegate!.respondsToSelector("photoSliderControllerWillDismiss:") {
                self.delegate!.photoSliderControllerWillDismiss!(self)
            }
            
            UIView.animateWithDuration(
                0.4,
                delay: 0,
                options: UIViewAnimationOptions.CurveEaseOut,
                animations: { () -> Void in
                    self.collectionView.frame = CGRectMake(0, -screenHeight, screenWidth, screenHeight)
                    self.backgroundView.alpha = 0.0
                    self.closeButton.alpha = 0.0
                    self.view.alpha = 0.0
                },
                completion: {(result) -> Void in
                    self.dissmissViewControllerAnimated(false)
                }
            )

            
        } else if velocity.y > 500 {
            self.collectionView.frame = scrollView.frame;

            if self.delegate!.respondsToSelector("photoSliderControllerWillDismiss:") {
                self.delegate!.photoSliderControllerWillDismiss!(self)
            }

            UIView.animateWithDuration(
                0.4,
                delay: 0,
                options: UIViewAnimationOptions.CurveEaseOut,
                animations: { () -> Void in
                    self.collectionView.frame = CGRectMake(0, screenHeight, screenWidth, screenHeight)
                    self.backgroundView.alpha = 0.0
                    self.closeButton.alpha = 0.0
                    self.view.alpha = 0.0
                },
                completion: {(result) -> Void in
                    self.dissmissViewControllerAnimated(false)
                }
            )
            
        }
    }

    // MARK: - Button Actions

    case None = 0, Vertical, Horizontal
}

public class ViewController:UIViewController, UICollectionViewDataSource, UICollectionViewDelegate, UICollectionViewDelegateFlowLayout {

    var collectionView: UICollectionView!
