 
 class SSASideMenu: UIViewController, UIGestureRecognizerDelegate {
     
-    enum SSASideMenuPanDirection: Int {
-        case Edge = 0
-        case EveryWhere = 1
+    enum SSASideMenuPanDirection {
+        case Edge
+        case EveryWhere
+        case Rect(CGRect)
+        case EdgeAndRect(CGRect)
     }
     
     enum SSASideMenuType: Int {

            
        }
        
        let completionClosure: () -> () =  {[unowned self] () -> () in
            
            visibleMenuViewController?.endAppearanceTransition()
            
            if isRightMenuVisible, let viewController = self.rightMenuViewController {
                self.delegate?.sideMenuDidHideMenuViewController?(self, menuViewController: viewController)
            }
            
            if !isRightMenuVisible, let viewController = self.leftMenuViewController {
                self.delegate?.sideMenuDidHideMenuViewController?(self, menuViewController: viewController)
            }
            
        }

                menuViewScale = max(menuViewScale, 1.0)
            }
            
            menuViewContainer.alpha = fadeMenuView ? delta : 1
            contentViewContainer.alpha = 1 - (1 - CGFloat(contentViewFadeOutAlpha)) * delta
            
            if scaleBackgroundImageView {
