Commit 4a1008d8 by Daniel Dahan

removed enum CAMediaTimingFunctionType

parent b969bc18
......@@ -33,7 +33,7 @@ internal class MotionCoreAnimationViewContext: MotionAnimatorViewContext {
fileprivate var transitionStates = [String: (Any?, Any?)]()
/// A reference to the animation timing function.
fileprivate var timingFunction = CAMediaTimingFunction.from(mediaTimingFunctionType: .standard)
fileprivate var timingFunction = CAMediaTimingFunction.standard
/// Layer which holds the content.
fileprivate var contentLayer: CALayer? {
......
......@@ -28,18 +28,6 @@
import UIKit
public enum CAMediaTimingFunctionType {
case linear
case easeIn
case easeOut
case easeInOut
case standard
case deceleration
case acceleration
case sharp
case easeOutBack
}
public extension CAMediaTimingFunction {
// default
static let linear = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear)
......@@ -56,32 +44,3 @@ public extension CAMediaTimingFunction {
// easing.net
static let easeOutBack = CAMediaTimingFunction(controlPoints: 0.175, 0.885, 0.32, 1.75)
}
public extension CAMediaTimingFunction {
/**
Converts a CAMediaTimingFunctionType to a CAMediaTimingFunction value.
- Parameter mediaTimingFunctionType: A CAMediaTimingFunctionType.
*/
static func from(mediaTimingFunctionType: CAMediaTimingFunctionType) -> CAMediaTimingFunction {
switch mediaTimingFunctionType {
case .linear:
return .linear
case .easeIn:
return .easeIn
case .easeOut:
return .easeOut
case .easeInOut:
return .easeInOut
case .standard:
return .standard
case .deceleration:
return .deceleration
case .acceleration:
return .acceleration
case .sharp:
return .sharp
case .easeOutBack:
return .easeOutBack
}
}
}
......@@ -820,15 +820,15 @@ extension Motion {
Runs an animation with a specified duration.
- Parameter duration: An animation duration time.
- Parameter animations: An animation block.
- Parameter mediaTimingFunctionType: An CAMediaTimingFunctionType value.
- Parameter timingFunction: A CAMediaTimingFunction.
- Parameter completion: A completion block that is executed once
the animations have completed.
*/
public class func animate(duration: CFTimeInterval, mediaTimingFunctionType: CAMediaTimingFunctionType = .easeInOut, animations: (() -> Void), completion: (() -> Void)? = nil) {
public class func animate(duration: CFTimeInterval, timingFunction: CAMediaTimingFunction = .easeInOut, animations: (() -> Void), completion: (() -> Void)? = nil) {
CATransaction.begin()
CATransaction.setAnimationDuration(duration)
CATransaction.setCompletionBlock(completion)
CATransaction.setAnimationTimingFunction(CAMediaTimingFunction.from(mediaTimingFunctionType: mediaTimingFunctionType))
CATransaction.setAnimationTimingFunction(timingFunction)
animations()
CATransaction.commit()
}
......@@ -836,17 +836,17 @@ extension Motion {
/**
Creates a CAAnimationGroup.
- Parameter animations: An Array of CAAnimation objects.
- Parameter mediaTimingFunctionType: An CAMediaTimingFunctionType value.
- Parameter timingFunction: A CAMediaTimingFunction.
- Parameter duration: An animation duration time for the group.
- Returns: A CAAnimationGroup.
*/
public class func animate(group animations: [CAAnimation], mediaTimingFunctionType: CAMediaTimingFunctionType = .easeInOut, duration: CFTimeInterval = 0.5) -> CAAnimationGroup {
public class func animate(group animations: [CAAnimation], timingFunction: CAMediaTimingFunction = .easeInOut, duration: CFTimeInterval = 0.5) -> CAAnimationGroup {
let group = CAAnimationGroup()
group.fillMode = MotionAnimationFillModeToValue(mode: .both)
group.isRemovedOnCompletion = false
group.animations = animations
group.duration = duration
group.timingFunction = CAMediaTimingFunction.from(mediaTimingFunctionType: mediaTimingFunctionType)
group.timingFunction = timingFunction
return group
}
}
......@@ -380,15 +380,6 @@ public extension MotionAnimation {
}
/**
Sets the view's timing function for the animation.
- Parameter type: A CAMediaTimingFunctionType.
- Returns: A MotionAnimation.
*/
static func timingFunction(type: CAMediaTimingFunctionType) -> MotionAnimation {
return .timingFunction(CAMediaTimingFunction.from(mediaTimingFunctionType: type))
}
/**
Available in iOS 9+, animates a view using the spring API,
given a stiffness and damping.
- Parameter stiffness: A CGFlloat.
......
......@@ -84,7 +84,7 @@ public struct MotionAnimationState {
public var duration: TimeInterval = 0.35
/// The timing function value of the animation.
public var timingFunction = CAMediaTimingFunction.from(mediaTimingFunctionType: .easeInOut)
public var timingFunction = CAMediaTimingFunction.easeInOut
/// Custom target states.
public var custom: [String: Any]?
......
......@@ -395,15 +395,6 @@ public extension MotionTransition {
}
/**
Sets the view's timing function for the transition.
- Parameter type: A CAMediaTimingFunctionType.
- Returns: A MotionAnimation.
*/
static func timingFunction(type: CAMediaTimingFunctionType) -> MotionTransition {
return .timingFunction(CAMediaTimingFunction.from(mediaTimingFunctionType: type))
}
/**
Available in iOS 9+, animates a view using the spring API,
given a stiffness and damping.
- Parameter stiffness: A CGFlloat.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment