mirror of https://github.com/SnapKit/SnapKit
Updated for Swift 2.0
This commit is contained in:
parent
581d30e812
commit
c1de30ac5c
|
@ -279,7 +279,8 @@
|
|||
DDC9FD8D1981B4DD009612C7 /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 0600;
|
||||
LastSwiftUpdateCheck = 0700;
|
||||
LastUpgradeCheck = 0700;
|
||||
ORGANIZATIONNAME = "SnapKit Team";
|
||||
TargetAttributes = {
|
||||
EEBCC9D719CC627D0083B827 = {
|
||||
|
@ -433,6 +434,7 @@
|
|||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
COPY_PHASE_STRIP = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
|
@ -506,6 +508,7 @@
|
|||
INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist";
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "io.snapkit.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = SnapKit;
|
||||
SKIP_INSTALL = YES;
|
||||
SUPPORTED_PLATFORMS = "iphonesimulator iphoneos";
|
||||
|
@ -526,6 +529,7 @@
|
|||
INFOPLIST_FILE = "$(SRCROOT)/Source/Info.plist";
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "io.snapkit.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = SnapKit;
|
||||
SKIP_INSTALL = YES;
|
||||
SUPPORTED_PLATFORMS = "iphonesimulator iphoneos";
|
||||
|
@ -537,12 +541,10 @@
|
|||
EEBCC9EC19CC627E0083B827 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(SDKROOT)/Developer/Library/Frameworks",
|
||||
"$(inherited)",
|
||||
);
|
||||
FRAMEWORK_SEARCH_PATHS = "$(inherited)";
|
||||
INFOPLIST_FILE = "$(SRCROOT)/Tests/Info.plist";
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "io.snapkit.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
};
|
||||
name = Debug;
|
||||
|
@ -550,12 +552,10 @@
|
|||
EEBCC9ED19CC627E0083B827 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(SDKROOT)/Developer/Library/Frameworks",
|
||||
"$(inherited)",
|
||||
);
|
||||
FRAMEWORK_SEARCH_PATHS = "$(inherited)";
|
||||
INFOPLIST_FILE = "$(SRCROOT)/Tests/Info.plist";
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "io.snapkit.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
};
|
||||
name = Release;
|
||||
|
@ -578,6 +578,7 @@
|
|||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks";
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.10;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "io.snapkit.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = SnapKit;
|
||||
SDKROOT = macosx;
|
||||
SKIP_INSTALL = YES;
|
||||
|
@ -602,6 +603,7 @@
|
|||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/Frameworks";
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.10;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "io.snapkit.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = SnapKit;
|
||||
SDKROOT = macosx;
|
||||
SKIP_INSTALL = YES;
|
||||
|
@ -615,13 +617,11 @@
|
|||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
COMBINE_HIDPI_IMAGES = YES;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(DEVELOPER_FRAMEWORKS_DIR)",
|
||||
"$(inherited)",
|
||||
);
|
||||
FRAMEWORK_SEARCH_PATHS = "$(inherited)";
|
||||
INFOPLIST_FILE = "$(SRCROOT)/Tests/Info.plist";
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.10;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "io.snapkit.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = macosx;
|
||||
};
|
||||
|
@ -633,13 +633,11 @@
|
|||
COMBINE_HIDPI_IMAGES = YES;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(DEVELOPER_FRAMEWORKS_DIR)",
|
||||
"$(inherited)",
|
||||
);
|
||||
FRAMEWORK_SEARCH_PATHS = "$(inherited)";
|
||||
INFOPLIST_FILE = "$(SRCROOT)/Tests/Info.plist";
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks";
|
||||
MACOSX_DEPLOYMENT_TARGET = 10.10;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "io.snapkit.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SDKROOT = macosx;
|
||||
};
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "0620"
|
||||
LastUpgradeVersion = "0700"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
|
@ -62,6 +62,8 @@
|
|||
ReferencedContainer = "container:SnapKit.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
|
@ -71,6 +73,7 @@
|
|||
buildConfiguration = "Debug"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "0620"
|
||||
LastUpgradeVersion = "0700"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
|
@ -62,6 +62,8 @@
|
|||
ReferencedContainer = "container:SnapKit.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
|
@ -71,6 +73,7 @@
|
|||
buildConfiguration = "Debug"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
|
|
|
@ -130,7 +130,7 @@ internal class ConcreteConstraint: Constraint {
|
|||
}
|
||||
|
||||
internal override func install() -> [LayoutConstraint] {
|
||||
return self.installOnView(updateExisting: false)
|
||||
return self.installOnViewUpdatingExisting(false)
|
||||
}
|
||||
|
||||
internal override func uninstall() -> Void {
|
||||
|
@ -197,7 +197,7 @@ internal class ConcreteConstraint: Constraint {
|
|||
internal func installOnView(updateExisting: Bool = false, file: String? = nil, line: UInt? = nil) -> [LayoutConstraint] {
|
||||
var installOnView: View? = nil
|
||||
if self.toItem.view != nil {
|
||||
installOnView = closestCommonSuperviewBetween(self.fromItem.view, self.toItem.view)
|
||||
installOnView = closestCommonSuperviewFromView(self.fromItem.view, toView: self.toItem.view)
|
||||
if installOnView == nil {
|
||||
NSException(name: "Cannot Install Constraint", reason: "No common superview between views (@\(self.makerFile)#\(self.makerLine))", userInfo: nil).raise()
|
||||
return []
|
||||
|
@ -242,7 +242,7 @@ internal class ConcreteConstraint: Constraint {
|
|||
let layoutToAttribute = (layoutToAttributes.count > 0) ? layoutToAttributes[0] : layoutFromAttribute
|
||||
|
||||
// get layout constant
|
||||
var layoutConstant: CGFloat = layoutToAttribute.snp_constantForValue(self.constant)
|
||||
let layoutConstant: CGFloat = layoutToAttribute.snp_constantForValue(self.constant)
|
||||
|
||||
// get layout to
|
||||
var layoutTo: View? = self.toItem.view
|
||||
|
@ -272,7 +272,7 @@ internal class ConcreteConstraint: Constraint {
|
|||
// special logic for updating
|
||||
if updateExisting {
|
||||
// get existing constraints for this view
|
||||
let existingLayoutConstraints = reverse(layoutFrom!.snp_installedLayoutConstraints)
|
||||
let existingLayoutConstraints = layoutFrom!.snp_installedLayoutConstraints.reverse()
|
||||
|
||||
// array that will contain only new layout constraints to keep
|
||||
var newLayoutConstraintsToKeep = [LayoutConstraint]()
|
||||
|
@ -336,7 +336,7 @@ internal class ConcreteConstraint: Constraint {
|
|||
// remove the constraints from the from item view
|
||||
if let fromView = self.fromItem.view {
|
||||
fromView.snp_installedLayoutConstraints = fromView.snp_installedLayoutConstraints.filter {
|
||||
return !contains(installedLayoutConstraints, $0)
|
||||
return !installedLayoutConstraints.contains($0)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -438,11 +438,11 @@ private extension NSLayoutAttribute {
|
|||
}
|
||||
}
|
||||
|
||||
private func closestCommonSuperviewBetween(fromView: View?, toView: View?) -> View? {
|
||||
private func closestCommonSuperviewFromView(fromView: View?, toView: View?) -> View? {
|
||||
var views = Set<View>()
|
||||
var fromView = fromView
|
||||
var toView = toView
|
||||
do {
|
||||
repeat {
|
||||
if let view = toView {
|
||||
if views.contains(view) {
|
||||
return view
|
||||
|
@ -468,4 +468,4 @@ private func ==(left: ConcreteConstraint, right: ConcreteConstraint) -> Bool {
|
|||
left.relation == right.relation &&
|
||||
left.multiplier == right.multiplier &&
|
||||
left.priority == right.priority)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -146,11 +146,7 @@ public class ConstraintMaker {
|
|||
}
|
||||
|
||||
internal class func makeConstraints(#view: View, file: String = "Unknown", line: UInt = 0, @noescape closure: (make: ConstraintMaker) -> Void) {
|
||||
#if os(iOS)
|
||||
view.setTranslatesAutoresizingMaskIntoConstraints(false)
|
||||
#else
|
||||
view.translatesAutoresizingMaskIntoConstraints = false
|
||||
#endif
|
||||
let maker = ConstraintMaker(view: view, file: file, line: line)
|
||||
closure(make: maker)
|
||||
|
||||
|
@ -163,11 +159,7 @@ public class ConstraintMaker {
|
|||
}
|
||||
|
||||
internal class func remakeConstraints(#view: View, file: String = "Unknown", line: UInt = 0, @noescape closure: (make: ConstraintMaker) -> Void) {
|
||||
#if os(iOS)
|
||||
view.setTranslatesAutoresizingMaskIntoConstraints(false)
|
||||
#else
|
||||
view.translatesAutoresizingMaskIntoConstraints = false
|
||||
#endif
|
||||
let maker = ConstraintMaker(view: view, file: file, line: line)
|
||||
closure(make: maker)
|
||||
|
||||
|
@ -181,11 +173,7 @@ public class ConstraintMaker {
|
|||
}
|
||||
|
||||
internal class func updateConstraints(#view: View, file: String = "Unknown", line: UInt = 0, @noescape closure: (make: ConstraintMaker) -> Void) {
|
||||
#if os(iOS)
|
||||
view.setTranslatesAutoresizingMaskIntoConstraints(false)
|
||||
#else
|
||||
view.translatesAutoresizingMaskIntoConstraints = false
|
||||
#endif
|
||||
let maker = ConstraintMaker(view: view, file: file, line: line)
|
||||
closure(make: maker)
|
||||
|
||||
|
@ -202,4 +190,4 @@ public class ConstraintMaker {
|
|||
existingLayoutConstraint.snp_constraint?.uninstall()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -37,7 +37,7 @@ public extension View {
|
|||
return objc_getAssociatedObject(self, &labelKey) as? String
|
||||
}
|
||||
set {
|
||||
objc_setAssociatedObject(self, &labelKey, newValue, objc_AssociationPolicy(OBJC_ASSOCIATION_COPY_NONATOMIC))
|
||||
objc_setAssociatedObject(self, &labelKey, newValue, objc_AssociationPolicy.OBJC_ASSOCIATION_COPY_NONATOMIC)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -53,7 +53,7 @@ public extension LayoutConstraint {
|
|||
return objc_getAssociatedObject(self, &labelKey) as? String
|
||||
}
|
||||
set {
|
||||
objc_setAssociatedObject(self, &labelKey, newValue, objc_AssociationPolicy(OBJC_ASSOCIATION_COPY_NONATOMIC))
|
||||
objc_setAssociatedObject(self, &labelKey, newValue, objc_AssociationPolicy.OBJC_ASSOCIATION_COPY_NONATOMIC)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<key>CFBundleExecutable</key>
|
||||
<string>$(EXECUTABLE_NAME)</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>io.snapkit.$(PRODUCT_NAME:rfc1034identifier)</string>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
|
|
|
@ -172,7 +172,7 @@ public extension View {
|
|||
return []
|
||||
}
|
||||
set {
|
||||
objc_setAssociatedObject(self, &installedLayoutConstraintsKey, newValue, UInt(OBJC_ASSOCIATION_RETAIN_NONATOMIC))
|
||||
objc_setAssociatedObject(self, &installedLayoutConstraintsKey, newValue, objc_AssociationPolicy.OBJC_ASSOCIATION_RETAIN_NONATOMIC)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
<key>CFBundleExecutable</key>
|
||||
<string>$(EXECUTABLE_NAME)</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>io.snapkit.$(PRODUCT_NAME:rfc1034identifier)</string>
|
||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
import UIKit
|
||||
typealias View = UIView
|
||||
extension View {
|
||||
var snp_constraints: [AnyObject] { return self.constraints() }
|
||||
var snp_constraints: [AnyObject] { return self.constraints }
|
||||
}
|
||||
#else
|
||||
import AppKit
|
||||
|
|
Loading…
Reference in New Issue