From e2d2adc5d1e1953710536fff0509bbc3b9d10f13 Mon Sep 17 00:00:00 2001 From: Brian Corbin Date: Thu, 12 Jan 2017 10:02:34 -0800 Subject: [PATCH] release 0.5.1. Added minimum distance and fixed bug where you would be unable to move sliders if they were on top of each other and at the minimum value. Fixed bug where if the minimum and maximum values were the same it was giving a NaN error. Now returns 0. --- Examples/SwiftRangeSliderExample/Podfile | 4 +- Examples/SwiftRangeSliderExample/Podfile.lock | 12 +- .../SwiftRangeSlider.podspec.json | 8 +- .../Pods/Manifest.lock | 12 +- .../Pods/Pods.xcodeproj/project.pbxproj | 368 +++++++++--------- .../SwiftRangeSlider/Info.plist | 2 +- SwiftRangeSlider.podspec | 2 +- .../UserInterfaceState.xcuserstate | Bin 13378 -> 25722 bytes SwiftRangeSlider/RangeSlider.swift | 49 ++- 9 files changed, 256 insertions(+), 201 deletions(-) diff --git a/Examples/SwiftRangeSliderExample/Podfile b/Examples/SwiftRangeSliderExample/Podfile index fd4cf22..9cb7430 100644 --- a/Examples/SwiftRangeSliderExample/Podfile +++ b/Examples/SwiftRangeSliderExample/Podfile @@ -3,6 +3,6 @@ use_frameworks! target 'SwiftRangeSliderExample' do - pod 'RappleColorPicker' - pod 'SwiftRangeSlider' + pod 'RappleColorPicker' + pod 'SwiftRangeSlider' end diff --git a/Examples/SwiftRangeSliderExample/Podfile.lock b/Examples/SwiftRangeSliderExample/Podfile.lock index 42ff8e9..770605b 100644 --- a/Examples/SwiftRangeSliderExample/Podfile.lock +++ b/Examples/SwiftRangeSliderExample/Podfile.lock @@ -1,15 +1,19 @@ PODS: - RappleColorPicker (1.2.5) - - SwiftRangeSlider (0.2.2) + - SwiftRangeSlider (0.5.0) DEPENDENCIES: - RappleColorPicker - - SwiftRangeSlider + - SwiftRangeSlider (from `~/Documents/Programming/Mobile/Pods/SwiftRangeSlider`) + +EXTERNAL SOURCES: + SwiftRangeSlider: + :path: ~/Documents/Programming/Mobile/Pods/SwiftRangeSlider SPEC CHECKSUMS: RappleColorPicker: a65830bf046b27e45f7d9fcbe8f70c11c85a32d6 - SwiftRangeSlider: eba9c63d16027fbe38c7845f0d35a243b96a00bc + SwiftRangeSlider: 97f3b77bf4e1c362f1098800a54a2eddcfafccd4 -PODFILE CHECKSUM: 9c89086eec65e07f35c8b5e0bc6f716929b99709 +PODFILE CHECKSUM: a6ec3acdb63abddbefce9d0c219ed991b694d743 COCOAPODS: 1.1.1 diff --git a/Examples/SwiftRangeSliderExample/Pods/Local Podspecs/SwiftRangeSlider.podspec.json b/Examples/SwiftRangeSliderExample/Pods/Local Podspecs/SwiftRangeSlider.podspec.json index 2c705f9..ce103c2 100644 --- a/Examples/SwiftRangeSliderExample/Pods/Local Podspecs/SwiftRangeSlider.podspec.json +++ b/Examples/SwiftRangeSliderExample/Pods/Local Podspecs/SwiftRangeSlider.podspec.json @@ -1,11 +1,11 @@ { "name": "SwiftRangeSlider", "platforms": { - "ios": "9.0" + "ios": "8.0" }, - "summary": "Description", + "summary": "A Swift implementation of a custom UIControl for selecting a range of values on a slider bar.", "requires_arc": true, - "version": "0.1.0", + "version": "0.5.0", "license": { "type": "MIT", "file": "LICENSE" @@ -16,7 +16,7 @@ "homepage": "https://github.com/BrianCorbin/SwiftRangeSlider", "source": { "git": "https://github.com/BrianCorbin/SwiftRangeSlider.git", - "tag": "0.1.0" + "tag": "0.5.0" }, "frameworks": "UIKit", "source_files": "SwiftRangeSlider/**/*.{swift}" diff --git a/Examples/SwiftRangeSliderExample/Pods/Manifest.lock b/Examples/SwiftRangeSliderExample/Pods/Manifest.lock index 42ff8e9..770605b 100644 --- a/Examples/SwiftRangeSliderExample/Pods/Manifest.lock +++ b/Examples/SwiftRangeSliderExample/Pods/Manifest.lock @@ -1,15 +1,19 @@ PODS: - RappleColorPicker (1.2.5) - - SwiftRangeSlider (0.2.2) + - SwiftRangeSlider (0.5.0) DEPENDENCIES: - RappleColorPicker - - SwiftRangeSlider + - SwiftRangeSlider (from `~/Documents/Programming/Mobile/Pods/SwiftRangeSlider`) + +EXTERNAL SOURCES: + SwiftRangeSlider: + :path: ~/Documents/Programming/Mobile/Pods/SwiftRangeSlider SPEC CHECKSUMS: RappleColorPicker: a65830bf046b27e45f7d9fcbe8f70c11c85a32d6 - SwiftRangeSlider: eba9c63d16027fbe38c7845f0d35a243b96a00bc + SwiftRangeSlider: 97f3b77bf4e1c362f1098800a54a2eddcfafccd4 -PODFILE CHECKSUM: 9c89086eec65e07f35c8b5e0bc6f716929b99709 +PODFILE CHECKSUM: a6ec3acdb63abddbefce9d0c219ed991b694d743 COCOAPODS: 1.1.1 diff --git a/Examples/SwiftRangeSliderExample/Pods/Pods.xcodeproj/project.pbxproj b/Examples/SwiftRangeSliderExample/Pods/Pods.xcodeproj/project.pbxproj index 23b7d67..a0b32fd 100644 --- a/Examples/SwiftRangeSliderExample/Pods/Pods.xcodeproj/project.pbxproj +++ b/Examples/SwiftRangeSliderExample/Pods/Pods.xcodeproj/project.pbxproj @@ -7,21 +7,21 @@ objects = { /* Begin PBXBuildFile section */ - 08E10B739A8DA5CB5991F7C253A7931E /* RangeSliderTrackLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = A2980F8BBAA35F048F53BBF59481C750 /* RangeSliderTrackLayer.swift */; }; - 0F2BD40322043C14AC594576CBDF2FA9 /* RappleColorPicker-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = DB75DC8833BCA944F312692A08544FBF /* RappleColorPicker-dummy.m */; }; + 0F2BD40322043C14AC594576CBDF2FA9 /* RappleColorPicker-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 8AC32695EC537D7BE22A739A711C40E5 /* RappleColorPicker-dummy.m */; }; + 1D0C4F02BC99B15BD93FEB8689BDF8AC /* RangeSliderTrackLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8FC1116A1B5C69A844EC2EBAB8895EB7 /* RangeSliderTrackLayer.swift */; }; 20750B239D1A013BEE1940248FBE2CFE /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7EC994CDC2D681BA26389F78A7E4B325 /* UIKit.framework */; }; + 2E89FE7FAF20110D089F8732FFA20E90 /* RangeSliderThumbLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = DB31CB979AD2D3871879A48F45D7A15A /* RangeSliderThumbLayer.swift */; }; 559105C96E38090776ED728793C35C86 /* Pods-SwiftRangeSliderExample-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 1F039BB3377EE238747C39BCEC4AC5D2 /* Pods-SwiftRangeSliderExample-dummy.m */; }; - 6D1476C9EA9D09E217CB3D21BFED8BAF /* RappleColorPickerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 26285BB10187B18239722DD4563D6150 /* RappleColorPickerViewController.swift */; }; - 7829F2A03C8FD12C51B7635B9353938A /* SwiftRangeSlider-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 667C68C757E6502B140424DBB0974599 /* SwiftRangeSlider-dummy.m */; }; - 925A0F84FBCDF713FFFD66F73911F412 /* RangeSliderThumbLayer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 23739293B264E85025A4966547B86029 /* RangeSliderThumbLayer.swift */; }; - 9D8AC040B5A96178DEDC3D3734F5B0DB /* RappleColorPicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 918C1803CC5759C025D6C6C3162A41C8 /* RappleColorPicker.swift */; }; + 6D1476C9EA9D09E217CB3D21BFED8BAF /* RappleColorPickerViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = E47998FBB3D7D606F747CA93A5C47C42 /* RappleColorPickerViewController.swift */; }; + 9770BC12F6C32258301FB7D1F7261024 /* SwiftRangeSlider-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = E421ECD4B84D59DF95B8B710B67475F9 /* SwiftRangeSlider-dummy.m */; }; + 9D8AC040B5A96178DEDC3D3734F5B0DB /* RappleColorPicker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84D392A73F6B57B389D345879BA1F5A6 /* RappleColorPicker.swift */; }; 9DC84B4DC9D013B33973895AD36B5D6B /* Pods-SwiftRangeSliderExample-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = DA87491650FE8A88FA63546A56B93BEE /* Pods-SwiftRangeSliderExample-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 9F9184BBAAACF6E3E5EBED021A97D6C8 /* RappleColorPicker-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = DEF9A0D17DA15D13C37D3295A65C0FCF /* RappleColorPicker-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + 9F9184BBAAACF6E3E5EBED021A97D6C8 /* RappleColorPicker-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 76416E78FA7D9156A26C062422AAD77A /* RappleColorPicker-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; A3B8C00A872511760D1F3FBB701CA9B1 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 616BEB51ECCAD129BDBCB7A956B56CC6 /* Foundation.framework */; }; AED8903A7F6C970E7A6C8821693FF5F1 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 616BEB51ECCAD129BDBCB7A956B56CC6 /* Foundation.framework */; }; B76288E7FE1C88C93E5A06D37AF1880C /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 616BEB51ECCAD129BDBCB7A956B56CC6 /* Foundation.framework */; }; - BAD2CCFF296AF1DCD88BCE6026880B77 /* SwiftRangeSlider-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = F10AEC26DB6BBBAF58DB87EF15FCDA28 /* SwiftRangeSlider-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; - F473928E0F4F2F616F88BDD19F8C4769 /* RangeSlider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 01831B61A8D7FDF76C16CB603E767CEA /* RangeSlider.swift */; }; + BAD2CCFF296AF1DCD88BCE6026880B77 /* SwiftRangeSlider-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = A91DDBFCF8A290CF72FCA044A7B9A313 /* SwiftRangeSlider-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + C634CC175570793A9F6D568E7EC3E53F /* RangeSlider.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3B68751CE3B5A2AFEFA0FDF65B0D4E71 /* RangeSlider.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -42,38 +42,38 @@ /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 01831B61A8D7FDF76C16CB603E767CEA /* RangeSlider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RangeSlider.swift; path = SwiftRangeSlider/RangeSlider.swift; sourceTree = ""; }; - 041D590BE5BADBF1FA96227E05087D50 /* RappleColorPicker.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = RappleColorPicker.modulemap; sourceTree = ""; }; + 11A5824A1AD186053E449C1F0F1202D1 /* SwiftRangeSlider.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SwiftRangeSlider.xcconfig; sourceTree = ""; }; + 1D0F476FE9EEC42D35C5F8465C7E1191 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 1EAC00B4303AF2EF67269883B0F39F79 /* Pods-SwiftRangeSliderExample-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwiftRangeSliderExample-frameworks.sh"; sourceTree = ""; }; 1F039BB3377EE238747C39BCEC4AC5D2 /* Pods-SwiftRangeSliderExample-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SwiftRangeSliderExample-dummy.m"; sourceTree = ""; }; - 1F4E240A5836D4C1C47780FAE505725B /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 20E05F3DA36BC6D224BE328CE03C6C24 /* Pods-SwiftRangeSliderExample-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwiftRangeSliderExample-resources.sh"; sourceTree = ""; }; - 23739293B264E85025A4966547B86029 /* RangeSliderThumbLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RangeSliderThumbLayer.swift; path = SwiftRangeSlider/RangeSliderThumbLayer.swift; sourceTree = ""; }; - 26285BB10187B18239722DD4563D6150 /* RappleColorPickerViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RappleColorPickerViewController.swift; path = Pod/Classes/RappleColorPickerViewController.swift; sourceTree = ""; }; - 26EF478AC5C8500E24BEECD0CC2A52EC /* SwiftRangeSlider.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = SwiftRangeSlider.modulemap; sourceTree = ""; }; - 36560CC16451B3B4F918CDE4B2EE2269 /* Pods-SwiftRangeSliderExample.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = "Pods-SwiftRangeSliderExample.modulemap"; sourceTree = ""; }; + 2606037036AB9EDBE7D4DBAEA9694EA8 /* RappleColorPicker.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RappleColorPicker.xcconfig; sourceTree = ""; }; + 36560CC16451B3B4F918CDE4B2EE2269 /* Pods-SwiftRangeSliderExample.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; path = "Pods-SwiftRangeSliderExample.modulemap"; sourceTree = ""; }; + 3B68751CE3B5A2AFEFA0FDF65B0D4E71 /* RangeSlider.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = RangeSlider.swift; sourceTree = ""; }; + 3B89F74B23870A729C8643E3389CD95D /* RappleColorPicker-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RappleColorPicker-prefix.pch"; sourceTree = ""; }; 40FA3DB35DAF15292BBA53A190BE1A47 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 47FD74DB82FD49226475B34AA3B2E657 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 51680B88FB590C4FF2AFF7C862BA3C30 /* SwiftRangeSlider-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SwiftRangeSlider-prefix.pch"; sourceTree = ""; }; 616BEB51ECCAD129BDBCB7A956B56CC6 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; - 667C68C757E6502B140424DBB0974599 /* SwiftRangeSlider-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "SwiftRangeSlider-dummy.m"; sourceTree = ""; }; 682C372EB7226868422C6536FD8D2BB6 /* Pods-SwiftRangeSliderExample.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwiftRangeSliderExample.release.xcconfig"; sourceTree = ""; }; 71FD3CB1B697FE995A34B5C1D2882F3F /* Pods-SwiftRangeSliderExample-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-SwiftRangeSliderExample-acknowledgements.markdown"; sourceTree = ""; }; - 72BCEBE6DCD58900D494B8C03A2012D4 /* RappleColorPicker-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RappleColorPicker-prefix.pch"; sourceTree = ""; }; - 7D3BE9CF47F0EB90587CD79B53EB0AC0 /* RappleColorPicker.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = RappleColorPicker.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 76416E78FA7D9156A26C062422AAD77A /* RappleColorPicker-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RappleColorPicker-umbrella.h"; sourceTree = ""; }; + 7D3BE9CF47F0EB90587CD79B53EB0AC0 /* RappleColorPicker.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = RappleColorPicker.framework; path = RappleColorPicker.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 7EC994CDC2D681BA26389F78A7E4B325 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.0.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; }; - 8AC9FB47F3DE22A969AA4791B471CB76 /* SwiftRangeSlider.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = SwiftRangeSlider.xcconfig; sourceTree = ""; }; - 918C1803CC5759C025D6C6C3162A41C8 /* RappleColorPicker.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RappleColorPicker.swift; path = Pod/Classes/RappleColorPicker.swift; sourceTree = ""; }; - 9316738A356F2F9C3D87467A709D0757 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - 9D0BBB3347D65FA489A1D2DB227EFC36 /* RappleColorPicker.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = RappleColorPicker.xcconfig; sourceTree = ""; }; - A2980F8BBAA35F048F53BBF59481C750 /* RangeSliderTrackLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RangeSliderTrackLayer.swift; path = SwiftRangeSlider/RangeSliderTrackLayer.swift; sourceTree = ""; }; - A41FDEB7C15DDD47BB8CCB39630FDC5D /* SwiftRangeSlider-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SwiftRangeSlider-prefix.pch"; sourceTree = ""; }; - A4FDAF6BD7B28ADAAECF15C436EB7C54 /* Pods_SwiftRangeSliderExample.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_SwiftRangeSliderExample.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 84D392A73F6B57B389D345879BA1F5A6 /* RappleColorPicker.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RappleColorPicker.swift; path = Pod/Classes/RappleColorPicker.swift; sourceTree = ""; }; + 8AC32695EC537D7BE22A739A711C40E5 /* RappleColorPicker-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RappleColorPicker-dummy.m"; sourceTree = ""; }; + 8FC1116A1B5C69A844EC2EBAB8895EB7 /* RangeSliderTrackLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = RangeSliderTrackLayer.swift; sourceTree = ""; }; + 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + A4FDAF6BD7B28ADAAECF15C436EB7C54 /* Pods_SwiftRangeSliderExample.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = Pods_SwiftRangeSliderExample.framework; path = "Pods-SwiftRangeSliderExample.framework"; sourceTree = BUILT_PRODUCTS_DIR; }; + A91DDBFCF8A290CF72FCA044A7B9A313 /* SwiftRangeSlider-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SwiftRangeSlider-umbrella.h"; sourceTree = ""; }; AFC7CEF5EB180349E8CC0B2090B15CCA /* Pods-SwiftRangeSliderExample-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwiftRangeSliderExample-acknowledgements.plist"; sourceTree = ""; }; DA87491650FE8A88FA63546A56B93BEE /* Pods-SwiftRangeSliderExample-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SwiftRangeSliderExample-umbrella.h"; sourceTree = ""; }; - DB75DC8833BCA944F312692A08544FBF /* RappleColorPicker-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "RappleColorPicker-dummy.m"; sourceTree = ""; }; - DEF9A0D17DA15D13C37D3295A65C0FCF /* RappleColorPicker-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "RappleColorPicker-umbrella.h"; sourceTree = ""; }; - E60DEDDFD033499A0F1D7EB664C96933 /* SwiftRangeSlider.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = SwiftRangeSlider.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - F10AEC26DB6BBBAF58DB87EF15FCDA28 /* SwiftRangeSlider-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "SwiftRangeSlider-umbrella.h"; sourceTree = ""; }; + DB31CB979AD2D3871879A48F45D7A15A /* RangeSliderThumbLayer.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = RangeSliderThumbLayer.swift; sourceTree = ""; }; + E421ECD4B84D59DF95B8B710B67475F9 /* SwiftRangeSlider-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "SwiftRangeSlider-dummy.m"; sourceTree = ""; }; + E47998FBB3D7D606F747CA93A5C47C42 /* RappleColorPickerViewController.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = RappleColorPickerViewController.swift; path = Pod/Classes/RappleColorPickerViewController.swift; sourceTree = ""; }; + E60DEDDFD033499A0F1D7EB664C96933 /* SwiftRangeSlider.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; name = SwiftRangeSlider.framework; path = SwiftRangeSlider.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + ED2ECE788318CD6A5C13F6399903BFF2 /* RappleColorPicker.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; path = RappleColorPicker.modulemap; sourceTree = ""; }; + FEC62B544504F83D49F41901AABCEC82 /* SwiftRangeSlider.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; path = SwiftRangeSlider.modulemap; sourceTree = ""; }; FF4547ECF19D3F3C1DB979C967898347 /* Pods-SwiftRangeSliderExample.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwiftRangeSliderExample.debug.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ @@ -106,15 +106,6 @@ /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 3120B83DBC73975D0D090A81B41B29E1 /* Pods */ = { - isa = PBXGroup; - children = ( - CE032B0AA27035D1B7955BD82DAA1651 /* RappleColorPicker */, - 4C4BC90C84CAC12830D3001C4909E6BA /* SwiftRangeSlider */, - ); - name = Pods; - sourceTree = ""; - }; 433CD3331B6C3787F473C941B61FC68F /* Frameworks */ = { isa = PBXGroup; children = ( @@ -123,17 +114,6 @@ name = Frameworks; sourceTree = ""; }; - 4C4BC90C84CAC12830D3001C4909E6BA /* SwiftRangeSlider */ = { - isa = PBXGroup; - children = ( - 01831B61A8D7FDF76C16CB603E767CEA /* RangeSlider.swift */, - 23739293B264E85025A4966547B86029 /* RangeSliderThumbLayer.swift */, - A2980F8BBAA35F048F53BBF59481C750 /* RangeSliderTrackLayer.swift */, - 646A8C218F36D459EF8AF22B8F30C314 /* Support Files */, - ); - path = SwiftRangeSlider; - sourceTree = ""; - }; 617216A8760A5916ACA8E1EA7B0A69B5 /* Targets Support Files */ = { isa = PBXGroup; children = ( @@ -142,20 +122,6 @@ name = "Targets Support Files"; sourceTree = ""; }; - 646A8C218F36D459EF8AF22B8F30C314 /* Support Files */ = { - isa = PBXGroup; - children = ( - 9316738A356F2F9C3D87467A709D0757 /* Info.plist */, - 26EF478AC5C8500E24BEECD0CC2A52EC /* SwiftRangeSlider.modulemap */, - 8AC9FB47F3DE22A969AA4791B471CB76 /* SwiftRangeSlider.xcconfig */, - 667C68C757E6502B140424DBB0974599 /* SwiftRangeSlider-dummy.m */, - A41FDEB7C15DDD47BB8CCB39630FDC5D /* SwiftRangeSlider-prefix.pch */, - F10AEC26DB6BBBAF58DB87EF15FCDA28 /* SwiftRangeSlider-umbrella.h */, - ); - name = "Support Files"; - path = "../Target Support Files/SwiftRangeSlider"; - sourceTree = ""; - }; 6CDA2D448C2BF0C185FE341545D8D0D5 /* Pods-SwiftRangeSliderExample */ = { isa = PBXGroup; children = ( @@ -174,39 +140,73 @@ path = "Target Support Files/Pods-SwiftRangeSliderExample"; sourceTree = ""; }; + 723FA949CC742E3E4F6F7CBC8E5313D4 /* SwiftRangeSlider */ = { + isa = PBXGroup; + children = ( + 3B68751CE3B5A2AFEFA0FDF65B0D4E71 /* RangeSlider.swift */, + DB31CB979AD2D3871879A48F45D7A15A /* RangeSliderThumbLayer.swift */, + 8FC1116A1B5C69A844EC2EBAB8895EB7 /* RangeSliderTrackLayer.swift */, + ); + name = SwiftRangeSlider; + path = SwiftRangeSlider; + sourceTree = ""; + }; + 77F8F1F1E3BA4F8F520C05DC9CC3A8D3 /* Development Pods */ = { + isa = PBXGroup; + children = ( + 8AE69E11B7CECC0EB0862E054AE5EE68 /* SwiftRangeSlider */, + ); + name = "Development Pods"; + sourceTree = ""; + }; 7DB346D0F39D3F0E887471402A8071AB = { isa = PBXGroup; children = ( 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */, + 77F8F1F1E3BA4F8F520C05DC9CC3A8D3 /* Development Pods */, 433CD3331B6C3787F473C941B61FC68F /* Frameworks */, - 3120B83DBC73975D0D090A81B41B29E1 /* Pods */, + EBF38D0D64519C3CE392592E345AE434 /* Pods */, D31D5867817CE6059A25C7D969E7DEF8 /* Products */, 617216A8760A5916ACA8E1EA7B0A69B5 /* Targets Support Files */, ); sourceTree = ""; }; - 94FC928B90B220C5CCDFFE2B4583B052 /* Support Files */ = { + 8AE69E11B7CECC0EB0862E054AE5EE68 /* SwiftRangeSlider */ = { + isa = PBXGroup; + children = ( + 8B7F1965CF521D3EB96BFEDAEA0A41E9 /* Support Files */, + 723FA949CC742E3E4F6F7CBC8E5313D4 /* SwiftRangeSlider */, + ); + name = SwiftRangeSlider; + path = /Users/briancorbin/Documents/Programming/Mobile/Pods/SwiftRangeSlider; + sourceTree = ""; + }; + 8B7F1965CF521D3EB96BFEDAEA0A41E9 /* Support Files */ = { isa = PBXGroup; children = ( - 1F4E240A5836D4C1C47780FAE505725B /* Info.plist */, - 041D590BE5BADBF1FA96227E05087D50 /* RappleColorPicker.modulemap */, - 9D0BBB3347D65FA489A1D2DB227EFC36 /* RappleColorPicker.xcconfig */, - DB75DC8833BCA944F312692A08544FBF /* RappleColorPicker-dummy.m */, - 72BCEBE6DCD58900D494B8C03A2012D4 /* RappleColorPicker-prefix.pch */, - DEF9A0D17DA15D13C37D3295A65C0FCF /* RappleColorPicker-umbrella.h */, + 47FD74DB82FD49226475B34AA3B2E657 /* Info.plist */, + FEC62B544504F83D49F41901AABCEC82 /* SwiftRangeSlider.modulemap */, + 11A5824A1AD186053E449C1F0F1202D1 /* SwiftRangeSlider.xcconfig */, + E421ECD4B84D59DF95B8B710B67475F9 /* SwiftRangeSlider-dummy.m */, + 51680B88FB590C4FF2AFF7C862BA3C30 /* SwiftRangeSlider-prefix.pch */, + A91DDBFCF8A290CF72FCA044A7B9A313 /* SwiftRangeSlider-umbrella.h */, ); name = "Support Files"; - path = "../Target Support Files/RappleColorPicker"; + path = "Examples/SwiftRangeSliderExample/Pods/Target Support Files/SwiftRangeSlider"; sourceTree = ""; }; - CE032B0AA27035D1B7955BD82DAA1651 /* RappleColorPicker */ = { + B04E4D4922F8E72AC1CB9F3F3B7DDB7A /* Support Files */ = { isa = PBXGroup; children = ( - 918C1803CC5759C025D6C6C3162A41C8 /* RappleColorPicker.swift */, - 26285BB10187B18239722DD4563D6150 /* RappleColorPickerViewController.swift */, - 94FC928B90B220C5CCDFFE2B4583B052 /* Support Files */, + 1D0F476FE9EEC42D35C5F8465C7E1191 /* Info.plist */, + ED2ECE788318CD6A5C13F6399903BFF2 /* RappleColorPicker.modulemap */, + 2606037036AB9EDBE7D4DBAEA9694EA8 /* RappleColorPicker.xcconfig */, + 8AC32695EC537D7BE22A739A711C40E5 /* RappleColorPicker-dummy.m */, + 3B89F74B23870A729C8643E3389CD95D /* RappleColorPicker-prefix.pch */, + 76416E78FA7D9156A26C062422AAD77A /* RappleColorPicker-umbrella.h */, ); - path = RappleColorPicker; + name = "Support Files"; + path = "../Target Support Files/RappleColorPicker"; sourceTree = ""; }; D31D5867817CE6059A25C7D969E7DEF8 /* Products */ = { @@ -228,6 +228,25 @@ name = iOS; sourceTree = ""; }; + E7119FEC132BD49DF148E554CCB9E5C5 /* RappleColorPicker */ = { + isa = PBXGroup; + children = ( + 84D392A73F6B57B389D345879BA1F5A6 /* RappleColorPicker.swift */, + E47998FBB3D7D606F747CA93A5C47C42 /* RappleColorPickerViewController.swift */, + B04E4D4922F8E72AC1CB9F3F3B7DDB7A /* Support Files */, + ); + name = RappleColorPicker; + path = RappleColorPicker; + sourceTree = ""; + }; + EBF38D0D64519C3CE392592E345AE434 /* Pods */ = { + isa = PBXGroup; + children = ( + E7119FEC132BD49DF148E554CCB9E5C5 /* RappleColorPicker */, + ); + name = Pods; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ @@ -298,7 +317,7 @@ isa = PBXNativeTarget; buildConfigurationList = 8BC88D85DBF5209D00C590783A30F169 /* Build configuration list for PBXNativeTarget "SwiftRangeSlider" */; buildPhases = ( - D33D604418820AED71956FC29AFA7D64 /* Sources */, + 4E519E7529AA991F3ECCAA5B98C16ECB /* Sources */, F150E17404DF9730662E85DD02BD2500 /* Frameworks */, 229418264FA233C8247ADBD0A5FA52D9 /* Headers */, ); @@ -319,17 +338,6 @@ attributes = { LastSwiftUpdateCheck = 0730; LastUpgradeCheck = 0700; - TargetAttributes = { - 0B4BA581A0C940B36F7032EF4FA27096 = { - LastSwiftMigration = 0820; - }; - 1D3B7AB1C012080838B02EAB0F81BF0F = { - LastSwiftMigration = 0820; - }; - 8D0A821CA52BE39C8DF7064FAA00FE75 = { - LastSwiftMigration = 0820; - }; - }; }; buildConfigurationList = 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */; compatibilityVersion = "Xcode 3.2"; @@ -351,32 +359,32 @@ /* End PBXProject section */ /* Begin PBXSourcesBuildPhase section */ - 95C6184FF8CC9858E4AA2508497F3F8C /* Sources */ = { + 4E519E7529AA991F3ECCAA5B98C16ECB /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 559105C96E38090776ED728793C35C86 /* Pods-SwiftRangeSliderExample-dummy.m in Sources */, + C634CC175570793A9F6D568E7EC3E53F /* RangeSlider.swift in Sources */, + 2E89FE7FAF20110D089F8732FFA20E90 /* RangeSliderThumbLayer.swift in Sources */, + 1D0C4F02BC99B15BD93FEB8689BDF8AC /* RangeSliderTrackLayer.swift in Sources */, + 9770BC12F6C32258301FB7D1F7261024 /* SwiftRangeSlider-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - C68D48AE81DE2CDAF7C61177285951B1 /* Sources */ = { + 95C6184FF8CC9858E4AA2508497F3F8C /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 0F2BD40322043C14AC594576CBDF2FA9 /* RappleColorPicker-dummy.m in Sources */, - 9D8AC040B5A96178DEDC3D3734F5B0DB /* RappleColorPicker.swift in Sources */, - 6D1476C9EA9D09E217CB3D21BFED8BAF /* RappleColorPickerViewController.swift in Sources */, + 559105C96E38090776ED728793C35C86 /* Pods-SwiftRangeSliderExample-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - D33D604418820AED71956FC29AFA7D64 /* Sources */ = { + C68D48AE81DE2CDAF7C61177285951B1 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - F473928E0F4F2F616F88BDD19F8C4769 /* RangeSlider.swift in Sources */, - 925A0F84FBCDF713FFFD66F73911F412 /* RangeSliderThumbLayer.swift in Sources */, - 08E10B739A8DA5CB5991F7C253A7931E /* RangeSliderTrackLayer.swift in Sources */, - 7829F2A03C8FD12C51B7635B9353938A /* SwiftRangeSlider-dummy.m in Sources */, + 0F2BD40322043C14AC594576CBDF2FA9 /* RappleColorPicker-dummy.m in Sources */, + 9D8AC040B5A96178DEDC3D3734F5B0DB /* RappleColorPicker.swift in Sources */, + 6D1476C9EA9D09E217CB3D21BFED8BAF /* RappleColorPickerViewController.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -442,9 +450,42 @@ }; name = Debug; }; - 48566088856984673EDC5F341A6B143C /* Release */ = { + 14ABD66092B797F14E58666C7E40D7E3 /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 682C372EB7226868422C6536FD8D2BB6 /* Pods-SwiftRangeSliderExample.release.xcconfig */; + baseConfigurationReference = 2606037036AB9EDBE7D4DBAEA9694EA8 /* RappleColorPicker.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; + "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREFIX_HEADER = "Target Support Files/RappleColorPicker/RappleColorPicker-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/RappleColorPicker/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/RappleColorPicker/RappleColorPicker.modulemap"; + MTL_ENABLE_DEBUG_INFO = YES; + PRODUCT_NAME = RappleColorPicker; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 3.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 1EC5ECFC28B41362992E3794A454DC91 /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 2606037036AB9EDBE7D4DBAEA9694EA8 /* RappleColorPicker.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; @@ -457,18 +498,14 @@ DYLIB_INSTALL_NAME_BASE = "@rpath"; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_NO_COMMON_BLOCKS = YES; - INFOPLIST_FILE = "Target Support Files/Pods-SwiftRangeSliderExample/Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/RappleColorPicker/RappleColorPicker-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/RappleColorPicker/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.3; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MACH_O_TYPE = staticlib; - MODULEMAP_FILE = "Target Support Files/Pods-SwiftRangeSliderExample/Pods-SwiftRangeSliderExample.modulemap"; + MODULEMAP_FILE = "Target Support Files/RappleColorPicker/RappleColorPicker.modulemap"; MTL_ENABLE_DEBUG_INFO = NO; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = Pods_SwiftRangeSliderExample; + PRODUCT_NAME = RappleColorPicker; SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_VERSION = 3.0; @@ -478,38 +515,40 @@ }; name = Release; }; - 6748B3DA2C03DEE9A69ACCEB458B49DF /* Debug */ = { + 48566088856984673EDC5F341A6B143C /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 8AC9FB47F3DE22A969AA4791B471CB76 /* SwiftRangeSlider.xcconfig */; + baseConfigurationReference = 682C372EB7226868422C6536FD8D2BB6 /* Pods-SwiftRangeSliderExample.release.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = dwarf; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_NO_COMMON_BLOCKS = YES; - GCC_PREFIX_HEADER = "Target Support Files/SwiftRangeSlider/SwiftRangeSlider-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/SwiftRangeSlider/Info.plist"; + INFOPLIST_FILE = "Target Support Files/Pods-SwiftRangeSliderExample/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.3; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/SwiftRangeSlider/SwiftRangeSlider.modulemap"; - MTL_ENABLE_DEBUG_INFO = YES; - PRODUCT_NAME = SwiftRangeSlider; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-SwiftRangeSliderExample/Pods-SwiftRangeSliderExample.modulemap"; + MTL_ENABLE_DEBUG_INFO = NO; + OTHER_LDFLAGS = ""; + OTHER_LIBTOOLFLAGS = ""; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = Pods_SwiftRangeSliderExample; SDKROOT = iphoneos; SKIP_INSTALL = YES; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 3.0; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Debug; + name = Release; }; 862AF3139CD84E18D34FAF2F43CD0DA6 /* Release */ = { isa = XCBuildConfiguration; @@ -551,70 +590,70 @@ }; name = Release; }; - 917D9A7AD903C566273F45CA56F68EFC /* Release */ = { + C0C85B883D774AECB8760F85AF992AAD /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 9D0BBB3347D65FA489A1D2DB227EFC36 /* RappleColorPicker.xcconfig */; + baseConfigurationReference = 11A5824A1AD186053E449C1F0F1202D1 /* SwiftRangeSlider.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEBUG_INFORMATION_FORMAT = dwarf; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_NO_COMMON_BLOCKS = YES; - GCC_PREFIX_HEADER = "Target Support Files/RappleColorPicker/RappleColorPicker-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/RappleColorPicker/Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/SwiftRangeSlider/SwiftRangeSlider-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/SwiftRangeSlider/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/RappleColorPicker/RappleColorPicker.modulemap"; - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_NAME = RappleColorPicker; + MODULEMAP_FILE = "Target Support Files/SwiftRangeSlider/SwiftRangeSlider.modulemap"; + MTL_ENABLE_DEBUG_INFO = YES; + PRODUCT_NAME = SwiftRangeSlider; SDKROOT = iphoneos; SKIP_INSTALL = YES; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 3.0; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Release; + name = Debug; }; - B98E9CB0D242F2D5ED209A7336A2DF25 /* Debug */ = { + D895C6167FB183C63EC4030B0C87BB84 /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 9D0BBB3347D65FA489A1D2DB227EFC36 /* RappleColorPicker.xcconfig */; + baseConfigurationReference = 11A5824A1AD186053E449C1F0F1202D1 /* SwiftRangeSlider.xcconfig */; buildSettings = { "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = dwarf; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; DEFINES_MODULE = YES; DYLIB_COMPATIBILITY_VERSION = 1; DYLIB_CURRENT_VERSION = 1; DYLIB_INSTALL_NAME_BASE = "@rpath"; ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_NO_COMMON_BLOCKS = YES; - GCC_PREFIX_HEADER = "Target Support Files/RappleColorPicker/RappleColorPicker-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/RappleColorPicker/Info.plist"; + GCC_PREFIX_HEADER = "Target Support Files/SwiftRangeSlider/SwiftRangeSlider-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/SwiftRangeSlider/Info.plist"; INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; IPHONEOS_DEPLOYMENT_TARGET = 8.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/RappleColorPicker/RappleColorPicker.modulemap"; - MTL_ENABLE_DEBUG_INFO = YES; - PRODUCT_NAME = RappleColorPicker; + MODULEMAP_FILE = "Target Support Files/SwiftRangeSlider/SwiftRangeSlider.modulemap"; + MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_NAME = SwiftRangeSlider; SDKROOT = iphoneos; SKIP_INSTALL = YES; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; SWIFT_VERSION = 3.0; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; - name = Debug; + name = Release; }; EE69558A00CB2A2A659AD4F95573B215 /* Debug */ = { isa = XCBuildConfiguration; @@ -646,45 +685,12 @@ SDKROOT = iphoneos; SKIP_INSTALL = YES; SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 3.0; TARGETED_DEVICE_FAMILY = "1,2"; VERSIONING_SYSTEM = "apple-generic"; VERSION_INFO_PREFIX = ""; }; name = Debug; }; - FFED694CCA9272B3976F99321CB5F69A /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 8AC9FB47F3DE22A969AA4791B471CB76 /* SwiftRangeSlider.xcconfig */; - buildSettings = { - "CODE_SIGN_IDENTITY[sdk=appletvos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = ""; - "CODE_SIGN_IDENTITY[sdk=watchos*]" = ""; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_PREFIX_HEADER = "Target Support Files/SwiftRangeSlider/SwiftRangeSlider-prefix.pch"; - INFOPLIST_FILE = "Target Support Files/SwiftRangeSlider/Info.plist"; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MODULEMAP_FILE = "Target Support Files/SwiftRangeSlider/SwiftRangeSlider.modulemap"; - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_NAME = SwiftRangeSlider; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - SWIFT_VERSION = 3.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ @@ -709,8 +715,8 @@ 8BC88D85DBF5209D00C590783A30F169 /* Build configuration list for PBXNativeTarget "SwiftRangeSlider" */ = { isa = XCConfigurationList; buildConfigurations = ( - 6748B3DA2C03DEE9A69ACCEB458B49DF /* Debug */, - FFED694CCA9272B3976F99321CB5F69A /* Release */, + C0C85B883D774AECB8760F85AF992AAD /* Debug */, + D895C6167FB183C63EC4030B0C87BB84 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -718,8 +724,8 @@ ADC47520729B2E2851E6D1F7DB7D2682 /* Build configuration list for PBXNativeTarget "RappleColorPicker" */ = { isa = XCConfigurationList; buildConfigurations = ( - B98E9CB0D242F2D5ED209A7336A2DF25 /* Debug */, - 917D9A7AD903C566273F45CA56F68EFC /* Release */, + 14ABD66092B797F14E58666C7E40D7E3 /* Debug */, + 1EC5ECFC28B41362992E3794A454DC91 /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; diff --git a/Examples/SwiftRangeSliderExample/Pods/Target Support Files/SwiftRangeSlider/Info.plist b/Examples/SwiftRangeSliderExample/Pods/Target Support Files/SwiftRangeSlider/Info.plist index 3f68a24..324eeb2 100644 --- a/Examples/SwiftRangeSliderExample/Pods/Target Support Files/SwiftRangeSlider/Info.plist +++ b/Examples/SwiftRangeSliderExample/Pods/Target Support Files/SwiftRangeSlider/Info.plist @@ -15,7 +15,7 @@ CFBundlePackageType FMWK CFBundleShortVersionString - 0.2.2 + 0.5.0 CFBundleSignature ???? CFBundleVersion diff --git a/SwiftRangeSlider.podspec b/SwiftRangeSlider.podspec index 51addc4..951f258 100644 --- a/SwiftRangeSlider.podspec +++ b/SwiftRangeSlider.podspec @@ -6,7 +6,7 @@ s.name = "SwiftRangeSlider" s.summary = "A Swift implementation of a custom UIControl for selecting a range of values on a slider bar." s.requires_arc = true -s.version = "0.5.0" +s.version = "0.5.1" s.license = { :type => "MIT", :file => "LICENSE" } s.author = { "Brian Corbin" => "brian.william.corbin@gmail.com" } s.homepage = "https://github.com/BrianCorbin/SwiftRangeSlider" diff --git a/SwiftRangeSlider.xcworkspace/xcuserdata/briancorbin.xcuserdatad/UserInterfaceState.xcuserstate b/SwiftRangeSlider.xcworkspace/xcuserdata/briancorbin.xcuserdatad/UserInterfaceState.xcuserstate index 9d69e4f2bff9919b60e4d1bed6c314b75c71903e..e3ce2297fff26acdde2e848e814572fe0ea7d9ce 100644 GIT binary patch literal 25722 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 N{6*Vu`_JM9{~zwK;y3^R delta 7306 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 diff --git a/SwiftRangeSlider/RangeSlider.swift b/SwiftRangeSlider/RangeSlider.swift index ee61ea5..83f4b77 100644 --- a/SwiftRangeSlider/RangeSlider.swift +++ b/SwiftRangeSlider/RangeSlider.swift @@ -9,6 +9,12 @@ import UIKit import QuartzCore +enum Knob { + case Neither + case Lower + case Upper + case Both +} ///Class that represents the RangeSlider object. @IBDesignable open class RangeSlider: UIControl { @@ -21,6 +27,7 @@ import QuartzCore updateLayerFrames() } } + ///The maximum value selectable on the RangeSlider @IBInspectable open var maximumValue: Double = 1.0 { didSet { @@ -28,6 +35,13 @@ import QuartzCore } } + ///The minimum difference in value between the knobs + @IBInspectable open var minimumDistance: Double = 0.0 { + didSet { + updateLayerFrames() + } + } + ///The current lower value selected on the RangeSlider @IBInspectable open var lowerValue: Double = 0.2 { didSet { @@ -97,6 +111,7 @@ import QuartzCore } var previousLocation = CGPoint() + var previouslySelectedKnob = Knob.Neither let trackLayer = RangeSliderTrackLayer() let lowerThumbLayer = RangeSliderThumbLayer() @@ -173,7 +188,15 @@ import QuartzCore CATransaction.commit() } + + /** + Returns the position of the knob to be placed on the slider given the value it should be on the slider + */ func positionForValue(_ value: Double) -> Double { + if maximumValue == minimumValue { + return 0 + } + return Double(bounds.width - thumbWidth) * (value - minimumValue) / (maximumValue - minimumValue) + Double(thumbWidth / 2.0) } @@ -190,13 +213,31 @@ import QuartzCore override open func beginTracking(_ touch: UITouch, with event: UIEvent?) -> Bool { previousLocation = touch.location(in: self) + if lowerThumbLayer.frame.contains(previousLocation) && upperThumbLayer.frame.contains(previousLocation) && (previouslySelectedKnob == Knob.Lower || previouslySelectedKnob == Knob.Neither) { + lowerThumbLayer.highlighted = true + previouslySelectedKnob = Knob.Lower + return true + } + + if lowerThumbLayer.frame.contains(previousLocation) && upperThumbLayer.frame.contains(previousLocation) && previouslySelectedKnob == Knob.Upper { + upperThumbLayer.highlighted = true + previouslySelectedKnob = Knob.Upper + return true + } + if lowerThumbLayer.frame.contains(previousLocation) { lowerThumbLayer.highlighted = true - } else if upperThumbLayer.frame.contains(previousLocation) { + previouslySelectedKnob = Knob.Lower + return true + } + + if upperThumbLayer.frame.contains(previousLocation) { upperThumbLayer.highlighted = true + previouslySelectedKnob = Knob.Upper + return true } - return lowerThumbLayer.highlighted || upperThumbLayer.highlighted + return false } /** @@ -215,10 +256,10 @@ import QuartzCore if lowerThumbLayer.highlighted { lowerValue += deltaValue - lowerValue = boundValue(lowerValue, toLowerValue: minimumValue, upperValue: upperValue) + lowerValue = boundValue(lowerValue, toLowerValue: minimumValue, upperValue: (upperValue - minimumDistance)) } else if upperThumbLayer.highlighted { upperValue += deltaValue - upperValue = boundValue(upperValue, toLowerValue: lowerValue, upperValue: maximumValue) + upperValue = boundValue(upperValue, toLowerValue: (lowerValue + minimumDistance), upperValue: maximumValue) } sendActions(for: .valueChanged)