diff --git a/SlideMenuControllerSwift.xcodeproj/project.pbxproj b/SlideMenuControllerSwift.xcodeproj/project.pbxproj index b7cc546..df3c363 100644 --- a/SlideMenuControllerSwift.xcodeproj/project.pbxproj +++ b/SlideMenuControllerSwift.xcodeproj/project.pbxproj @@ -328,6 +328,7 @@ TargetAttributes = { 0E75C5951BE3CA7900844634 = { CreatedOnToolsVersion = 7.1; + LastSwiftMigration = 1010; }; C539E6401A315E87003B7CC7 = { CreatedOnToolsVersion = 6.1.1; @@ -487,7 +488,7 @@ PRODUCT_BUNDLE_IDENTIFIER = dekatotoro.SlideMenuControllerSwift; PRODUCT_NAME = "$(PROJECT_NAME)"; SKIP_INSTALL = YES; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 4.2; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; @@ -512,7 +513,7 @@ PRODUCT_BUNDLE_IDENTIFIER = dekatotoro.SlideMenuControllerSwift; PRODUCT_NAME = "$(PROJECT_NAME)"; SKIP_INSTALL = YES; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 4.2; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; @@ -628,7 +629,7 @@ LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "dekatotoro.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; }; name = Debug; @@ -643,7 +644,7 @@ ONLY_ACTIVE_ARCH = YES; PRODUCT_BUNDLE_IDENTIFIER = "dekatotoro.$(PRODUCT_NAME:rfc1034identifier)"; PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 4.0; + SWIFT_VERSION = 4.2; TARGETED_DEVICE_FAMILY = "1,2"; }; name = Release; diff --git a/SlideMenuControllerSwift/AppDelegate.swift b/SlideMenuControllerSwift/AppDelegate.swift index afe18f3..0b25960 100644 --- a/SlideMenuControllerSwift/AppDelegate.swift +++ b/SlideMenuControllerSwift/AppDelegate.swift @@ -37,7 +37,7 @@ class AppDelegate: UIResponder, UIApplicationDelegate { self.window?.makeKeyAndVisible() } - func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { + func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { self.createMenuView() diff --git a/SlideMenuControllerSwift/BaseTableViewCell.swift b/SlideMenuControllerSwift/BaseTableViewCell.swift index 9927cec..2606587 100644 --- a/SlideMenuControllerSwift/BaseTableViewCell.swift +++ b/SlideMenuControllerSwift/BaseTableViewCell.swift @@ -15,7 +15,7 @@ open class BaseTableViewCell : UITableViewCell { setup() } - override init(style: UITableViewCellStyle, reuseIdentifier: String?) { + override init(style: UITableViewCell.CellStyle, reuseIdentifier: String?) { super.init(style: style, reuseIdentifier: reuseIdentifier) setup() } diff --git a/SlideMenuControllerSwift/ExSlideMenuController.swift b/SlideMenuControllerSwift/ExSlideMenuController.swift index 870822b..3238e17 100644 --- a/SlideMenuControllerSwift/ExSlideMenuController.swift +++ b/SlideMenuControllerSwift/ExSlideMenuController.swift @@ -10,7 +10,7 @@ import UIKit class ExSlideMenuController : SlideMenuController { - override func isTagetViewController() -> Bool { + override func isTargetViewController() -> Bool { if let vc = UIApplication.topViewController() { if vc is MainViewController || vc is SwiftViewController || diff --git a/SlideMenuControllerSwift/LeftViewController.swift b/SlideMenuControllerSwift/LeftViewController.swift index ba71992..337ae34 100644 --- a/SlideMenuControllerSwift/LeftViewController.swift +++ b/SlideMenuControllerSwift/LeftViewController.swift @@ -120,7 +120,7 @@ extension LeftViewController : UITableViewDataSource { if let menu = LeftMenu(rawValue: indexPath.row) { switch menu { case .main, .swift, .java, .go, .nonMenu: - let cell = BaseTableViewCell(style: UITableViewCellStyle.subtitle, reuseIdentifier: BaseTableViewCell.identifier) + let cell = BaseTableViewCell(style: UITableViewCell.CellStyle.subtitle, reuseIdentifier: BaseTableViewCell.identifier) cell.setData(menus[indexPath.row]) return cell } diff --git a/Source/SlideMenuController.swift b/Source/SlideMenuController.swift index 08bc88c..9ca3805 100644 --- a/Source/SlideMenuController.swift +++ b/Source/SlideMenuController.swift @@ -29,7 +29,7 @@ public struct SlideMenuOptions { public static var shadowOffset: CGSize = CGSize(width: 0,height: 0) public static var panFromBezel: Bool = true public static var animationDuration: CGFloat = 0.4 - public static var animationOptions: UIViewAnimationOptions = [] + public static var animationOptions: UIView.AnimationOptions = [] public static var rightViewWidth: CGFloat = 270.0 public static var rightBezelWidth: CGFloat? = 16.0 public static var rightPanFromBezel: Bool = true @@ -128,7 +128,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { opacityframe.size.height = opacityframe.size.height - opacityOffset opacityView = UIView(frame: opacityframe) opacityView.backgroundColor = SlideMenuOptions.opacityViewBackgroundColor - opacityView.autoresizingMask = [UIViewAutoresizing.flexibleHeight, UIViewAutoresizing.flexibleWidth] + opacityView.autoresizingMask = [.flexibleHeight, .flexibleWidth] opacityView.layer.opacity = 0.0 view.insertSubview(opacityView, at: 1) @@ -141,7 +141,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { leftFrame.size.height = leftFrame.size.height - leftOffset leftContainerView = UIView(frame: leftFrame) leftContainerView.backgroundColor = UIColor.clear - leftContainerView.autoresizingMask = UIViewAutoresizing.flexibleHeight + leftContainerView.autoresizingMask = .flexibleHeight view.insertSubview(leftContainerView, at: 2) addLeftGestures() } @@ -155,7 +155,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { rightFrame.size.height = rightFrame.size.height - rightOffset rightContainerView = UIView(frame: rightFrame) rightContainerView.backgroundColor = UIColor.clear - rightContainerView.autoresizingMask = UIViewAutoresizing.flexibleHeight + rightContainerView.autoresizingMask = .flexibleHeight view.insertSubview(rightContainerView, at: 3) addRightGestures() } @@ -173,12 +173,12 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { self.leftContainerView.isHidden = false self.rightContainerView.isHidden = false - if self.leftPanGesture != nil && self.leftPanGesture != nil { + if self.leftPanGesture != nil && self.leftTapGesture != nil { self.removeLeftGestures() self.addLeftGestures() } - if self.rightPanGesture != nil && self.rightPanGesture != nil { + if self.rightPanGesture != nil && self.rightTapGesture != nil { self.removeRightGestures() self.addRightGestures() } @@ -340,7 +340,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { } } - open func isTagetViewController() -> Bool { + open func isTargetViewController() -> Bool { // Function to determine the target ViewController // Please to override it if necessary return true @@ -356,12 +356,12 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { static var startPointOfPan: CGPoint = CGPoint.zero static var wasOpenAtStartOfPan: Bool = false static var wasHiddenAtStartOfPan: Bool = false - static var lastState : UIGestureRecognizerState = .ended + static var lastState : UIGestureRecognizer.State = .ended } @objc func handleLeftPanGesture(_ panGesture: UIPanGestureRecognizer) { - if !isTagetViewController() { + if !isTargetViewController() { return } @@ -370,7 +370,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { } switch panGesture.state { - case UIGestureRecognizerState.began: + case .began: if LeftPanState.lastState != .ended && LeftPanState.lastState != .cancelled && LeftPanState.lastState != .failed { return } @@ -389,7 +389,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { leftViewController?.beginAppearanceTransition(LeftPanState.wasHiddenAtStartOfPan, animated: true) addShadowToView(leftContainerView) setOpenWindowLevel() - case UIGestureRecognizerState.changed: + case .changed: if LeftPanState.lastState != .began && LeftPanState.lastState != .changed { return } @@ -398,7 +398,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { leftContainerView.frame = applyLeftTranslation(translation, toFrame: LeftPanState.frameAtStartOfPan) applyLeftOpacity() applyLeftContentViewScale() - case UIGestureRecognizerState.ended, UIGestureRecognizerState.cancelled: + case .ended, .cancelled: if LeftPanState.lastState != .changed { setCloseWindowLevel() return @@ -424,7 +424,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { track(.leftFlickClose) } - case UIGestureRecognizerState.failed, UIGestureRecognizerState.possible: + case .failed, .possible: break } @@ -436,12 +436,12 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { static var startPointOfPan: CGPoint = CGPoint.zero static var wasOpenAtStartOfPan: Bool = false static var wasHiddenAtStartOfPan: Bool = false - static var lastState : UIGestureRecognizerState = .ended + static var lastState : UIGestureRecognizer.State = .ended } @objc func handleRightPanGesture(_ panGesture: UIPanGestureRecognizer) { - if !isTagetViewController() { + if !isTargetViewController() { return } @@ -450,7 +450,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { } switch panGesture.state { - case UIGestureRecognizerState.began: + case .began: if RightPanState.lastState != .ended && RightPanState.lastState != .cancelled && RightPanState.lastState != .failed { return } @@ -470,7 +470,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { addShadowToView(rightContainerView) setOpenWindowLevel() - case UIGestureRecognizerState.changed: + case .changed: if RightPanState.lastState != .began && RightPanState.lastState != .changed { return } @@ -480,7 +480,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { applyRightOpacity() applyRightContentViewScale() - case UIGestureRecognizerState.ended, UIGestureRecognizerState.cancelled: + case .ended, .cancelled: if RightPanState.lastState != .changed { setCloseWindowLevel() return @@ -505,7 +505,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { track(.rightFlickClose) } - case UIGestureRecognizerState.failed, UIGestureRecognizerState.possible: + case .failed, .possible: break } @@ -521,7 +521,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { var duration: TimeInterval = Double(SlideMenuOptions.animationDuration) if velocity != 0.0 { - duration = Double(fabs(xOrigin - finalXOrigin) / velocity) + duration = Double(abs(xOrigin - finalXOrigin) / velocity) duration = Double(fmax(0.1, fmin(1.0, duration))) } @@ -555,7 +555,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { var duration: TimeInterval = Double(SlideMenuOptions.animationDuration) if velocity != 0.0 { - duration = Double(fabs(xOrigin - view.bounds.width) / velocity) + duration = Double(abs(xOrigin - view.bounds.width) / velocity) duration = Double(fmax(0.1, fmin(1.0, duration))) } @@ -587,7 +587,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { var duration: TimeInterval = Double(SlideMenuOptions.animationDuration) if velocity != 0.0 { - duration = Double(fabs(xOrigin - finalXOrigin) / velocity) + duration = Double(abs(xOrigin - finalXOrigin) / velocity) duration = Double(fmax(0.1, fmin(1.0, duration))) } @@ -618,7 +618,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { var duration: TimeInterval = Double(SlideMenuOptions.animationDuration) if velocity != 0.0 { - duration = Double(fabs(xOrigin - view.bounds.width) / velocity) + duration = Double(abs(xOrigin - view.bounds.width) / velocity) duration = Double(fmax(0.1, fmin(1.0, duration))) } @@ -900,7 +900,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { if SlideMenuOptions.hideStatusBar { DispatchQueue.main.async(execute: { if let window = UIApplication.shared.keyWindow { - window.windowLevel = UIWindowLevelStatusBar + 1 + window.windowLevel = UIWindow.Level.statusBar + 1 } }) } @@ -910,7 +910,7 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { if SlideMenuOptions.hideStatusBar { DispatchQueue.main.async(execute: { if let window = UIApplication.shared.keyWindow { - window.windowLevel = UIWindowLevelNormal + window.windowLevel = UIWindow.Level.normal } }) } @@ -920,10 +920,10 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { if let viewController = targetViewController { viewController.view.frame = targetView.bounds - if (!childViewControllers.contains(viewController)) { - addChildViewController(viewController) + if (!children.contains(viewController)) { + addChild(viewController) targetView.addSubview(viewController.view) - viewController.didMove(toParentViewController: self) + viewController.didMove(toParent: self) } } } @@ -932,9 +932,9 @@ open class SlideMenuController: UIViewController, UIGestureRecognizerDelegate { fileprivate func removeViewController(_ viewController: UIViewController?) { if let _viewController = viewController { _viewController.view.layer.removeAllAnimations() - _viewController.willMove(toParentViewController: nil) + _viewController.willMove(toParent: nil) _viewController.view.removeFromSuperview() - _viewController.removeFromParentViewController() + _viewController.removeFromParent() } } @@ -1042,12 +1042,12 @@ extension UIViewController { } public func addLeftBarButtonWithImage(_ buttonImage: UIImage) { - let leftButton: UIBarButtonItem = UIBarButtonItem(image: buttonImage, style: UIBarButtonItemStyle.plain, target: self, action: #selector(self.toggleLeft)) + let leftButton: UIBarButtonItem = UIBarButtonItem(image: buttonImage, style: UIBarButtonItem.Style.plain, target: self, action: #selector(self.toggleLeft)) navigationItem.leftBarButtonItem = leftButton } public func addRightBarButtonWithImage(_ buttonImage: UIImage) { - let rightButton: UIBarButtonItem = UIBarButtonItem(image: buttonImage, style: UIBarButtonItemStyle.plain, target: self, action: #selector(self.toggleRight)) + let rightButton: UIBarButtonItem = UIBarButtonItem(image: buttonImage, style: UIBarButtonItem.Style.plain, target: self, action: #selector(self.toggleRight)) navigationItem.rightBarButtonItem = rightButton }