├── .gitignore ├── .travis.yml ├── Example ├── Podfile ├── Podfile.lock ├── Pods │ ├── Headers │ │ ├── Private │ │ │ └── SwishControl │ │ │ │ ├── BSSoundContainer.h │ │ │ │ ├── SwishControl.h │ │ │ │ └── UIControl+SwishControl.h │ │ └── Public │ │ │ └── SwishControl │ │ │ ├── SwishControl.h │ │ │ └── UIControl+SwishControl.h │ ├── Local Podspecs │ │ └── SwishControl.podspec.json │ ├── Manifest.lock │ ├── Pods.xcodeproj │ │ └── project.pbxproj │ └── Target Support Files │ │ ├── Pods-SwishControl-SwishControl │ │ ├── Pods-SwishControl-SwishControl-Private.xcconfig │ │ ├── Pods-SwishControl-SwishControl-dummy.m │ │ ├── Pods-SwishControl-SwishControl-prefix.pch │ │ └── Pods-SwishControl-SwishControl.xcconfig │ │ ├── Pods-SwishControl │ │ ├── Pods-SwishControl-acknowledgements.markdown │ │ ├── Pods-SwishControl-acknowledgements.plist │ │ ├── Pods-SwishControl-dummy.m │ │ ├── Pods-SwishControl-environment.h │ │ ├── Pods-SwishControl-resources.sh │ │ ├── Pods-SwishControl.debug.xcconfig │ │ └── Pods-SwishControl.release.xcconfig │ │ ├── Pods-Tests-SwishControl │ │ ├── Pods-Tests-SwishControl-Private.xcconfig │ │ ├── Pods-Tests-SwishControl-dummy.m │ │ ├── Pods-Tests-SwishControl-prefix.pch │ │ └── Pods-Tests-SwishControl.xcconfig │ │ └── Pods-Tests │ │ ├── Pods-Tests-acknowledgements.markdown │ │ ├── Pods-Tests-acknowledgements.plist │ │ ├── Pods-Tests-dummy.m │ │ ├── Pods-Tests-environment.h │ │ ├── Pods-Tests-resources.sh │ │ ├── Pods-Tests.debug.xcconfig │ │ └── Pods-Tests.release.xcconfig ├── SwishControl.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ └── contents.xcworkspacedata │ └── xcshareddata │ │ └── xcschemes │ │ └── SwishControl-Example.xcscheme ├── SwishControl.xcworkspace │ └── contents.xcworkspacedata ├── SwishControl │ ├── BSAppDelegate.h │ ├── BSAppDelegate.m │ ├── BSViewController.h │ ├── BSViewController.m │ ├── Base.lproj │ │ ├── Main_iPad.storyboard │ │ └── Main_iPhone.storyboard │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── SwishControl-Info.plist │ ├── SwishControl-Prefix.pch │ ├── click.wav │ ├── click2.wav │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m └── Tests │ ├── BSSwishControlTests.m │ ├── Tests-Info.plist │ ├── Tests-Prefix.pch │ └── en.lproj │ └── InfoPlist.strings ├── LICENSE ├── Pod ├── Assets │ └── .gitkeep └── Classes │ ├── .gitkeep │ ├── BSSoundContainer.h │ ├── BSSoundContainer.m │ ├── SwishControl.h │ ├── UIControl+SwishControl.h │ └── UIControl+SwishControl.m ├── README.md └── SwishControl.podspec /.gitignore: -------------------------------------------------------------------------------- 1 | # OS X 2 | .DS_Store 3 | 4 | # Xcode 5 | build/ 6 | *.pbxuser 7 | !default.pbxuser 8 | *.mode1v3 9 | !default.mode1v3 10 | *.mode2v3 11 | !default.mode2v3 12 | *.perspectivev3 13 | !default.perspectivev3 14 | xcuserdata 15 | *.xccheckout 16 | profile 17 | *.moved-aside 18 | DerivedData 19 | *.hmap 20 | *.ipa 21 | 22 | # Bundler 23 | .bundle 24 | 25 | # We recommend against adding the Pods directory to your .gitignore. However 26 | # you should judge for yourself, the pros and cons are mentioned at: 27 | # http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control 28 | # 29 | # Note: if you ignore the Pods directory, make sure to uncomment 30 | # `pod install` in .travis.yml 31 | # 32 | # Pods/ 33 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | # references: 2 | # * http://www.objc.io/issue-6/travis-ci.html 3 | # * https://github.com/supermarin/xcpretty#usage 4 | 5 | language: objective-c 6 | # cache: cocoapods 7 | podfile: Example/Podfile 8 | before_install: 9 | - gem install cocoapods # Since Travis is not always on latest version 10 | - pod install --project-directory=Example 11 | install: 12 | - gem install xcpretty --no-rdoc --no-ri --no-document --quiet 13 | script: 14 | - set -o pipefail && xcodebuild test -workspace Example/SwishControl.xcworkspace -scheme SwishControl-Example -sdk iphonesimulator ONLY_ACTIVE_ARCH=NO | xcpretty -c 15 | - pod lib lint --quick 16 | -------------------------------------------------------------------------------- /Example/Podfile: -------------------------------------------------------------------------------- 1 | source 'https://github.com/CocoaPods/Specs.git' 2 | 3 | target 'SwishControl', :exclusive => true do 4 | pod "SwishControl", :path => "../" 5 | end 6 | 7 | target 'Tests', :exclusive => true do 8 | pod "SwishControl", :path => "../" 9 | end 10 | -------------------------------------------------------------------------------- /Example/Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - SwishControl (0.1.0) 3 | 4 | DEPENDENCIES: 5 | - SwishControl (from `../`) 6 | 7 | EXTERNAL SOURCES: 8 | SwishControl: 9 | :path: "../" 10 | 11 | SPEC CHECKSUMS: 12 | SwishControl: d9b66eeb52ea88efbad862da563f228c98f165ed 13 | 14 | COCOAPODS: 0.36.3 15 | -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/SwishControl/BSSoundContainer.h: -------------------------------------------------------------------------------- 1 | ../../../../../Pod/Classes/BSSoundContainer.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/SwishControl/SwishControl.h: -------------------------------------------------------------------------------- 1 | ../../../../../Pod/Classes/SwishControl.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Private/SwishControl/UIControl+SwishControl.h: -------------------------------------------------------------------------------- 1 | ../../../../../Pod/Classes/UIControl+SwishControl.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/SwishControl/SwishControl.h: -------------------------------------------------------------------------------- 1 | ../../../../../Pod/Classes/SwishControl.h -------------------------------------------------------------------------------- /Example/Pods/Headers/Public/SwishControl/UIControl+SwishControl.h: -------------------------------------------------------------------------------- 1 | ../../../../../Pod/Classes/UIControl+SwishControl.h -------------------------------------------------------------------------------- /Example/Pods/Local Podspecs/SwishControl.podspec.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "SwishControl", 3 | "version": "0.1.0", 4 | "summary": "Attach sound effects to UIControls", 5 | "description": " A cateogory on UIControl for adding sound effects for different events.\n", 6 | "homepage": "https://github.com//SwishControl", 7 | "license": "MIT", 8 | "authors": { 9 | "Joakim Gyllstrom": "joakim@backslashed.se" 10 | }, 11 | "source": { 12 | "git": "https://github.com//SwishControl.git", 13 | "tag": "0.1.0" 14 | }, 15 | "platforms": { 16 | "ios": "7.0" 17 | }, 18 | "requires_arc": true, 19 | "source_files": "Pod/Classes/**/*", 20 | "public_header_files": "Pod/Classes/**/*.h", 21 | "private_header_files": "Pod/Classes/BSSoundContainer.h", 22 | "frameworks": [ 23 | "UIKit", 24 | "AudioToolbox" 25 | ] 26 | } 27 | -------------------------------------------------------------------------------- /Example/Pods/Manifest.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - SwishControl (0.1.0) 3 | 4 | DEPENDENCIES: 5 | - SwishControl (from `../`) 6 | 7 | EXTERNAL SOURCES: 8 | SwishControl: 9 | :path: "../" 10 | 11 | SPEC CHECKSUMS: 12 | SwishControl: d9b66eeb52ea88efbad862da563f228c98f165ed 13 | 14 | COCOAPODS: 0.36.3 15 | -------------------------------------------------------------------------------- /Example/Pods/Pods.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 1B59A9075478679DCF8847F6 /* UIControl+SwishControl.h in Headers */ = {isa = PBXBuildFile; fileRef = E627A40BA06A602FA1F36393 /* UIControl+SwishControl.h */; }; 11 | 25D18CEF538405C2D59148EC /* UIControl+SwishControl.m in Sources */ = {isa = PBXBuildFile; fileRef = 781B7B03CCEB67681B7FB32D /* UIControl+SwishControl.m */; }; 12 | 27AC0F21B51E79A7A1B964E6 /* BSSoundContainer.h in Headers */ = {isa = PBXBuildFile; fileRef = B32D90D9AD0E2E90A0ED92EA /* BSSoundContainer.h */; }; 13 | 3F72493D5B7E223D0BCFCB9E /* BSSoundContainer.m in Sources */ = {isa = PBXBuildFile; fileRef = 93CB06259439FD0C0B3F16A8 /* BSSoundContainer.m */; }; 14 | 46D90EE06C4BDDBCAF14C346 /* SwishControl.h in Headers */ = {isa = PBXBuildFile; fileRef = 54C0E1E1B0F53D249E77146A /* SwishControl.h */; }; 15 | 4FC258DAA79CEC81E5D2EAB5 /* Pods-Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = D16545E39E9FFE5527008C65 /* Pods-Tests-dummy.m */; }; 16 | 5331CE02CC65D7D4C0EE76EB /* UIControl+SwishControl.h in Headers */ = {isa = PBXBuildFile; fileRef = E627A40BA06A602FA1F36393 /* UIControl+SwishControl.h */; }; 17 | 5F15D02E7ECEF57335976D53 /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72460E1E11FB831461D31E0C /* AudioToolbox.framework */; }; 18 | 8060C0D4662BC7AAD92009A7 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3E737E3FC3E626AB157FDF05 /* UIKit.framework */; }; 19 | 8823F6981FD0AE92D0D81FE7 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 3E737E3FC3E626AB157FDF05 /* UIKit.framework */; }; 20 | 9F6B44AE698DF22078132C61 /* Pods-Tests-SwishControl-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 83283CBF1AD907ABCABDF605 /* Pods-Tests-SwishControl-dummy.m */; }; 21 | A2D9ECB6F7B00AA2FBDDBC17 /* Pods-SwishControl-SwishControl-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 40CC1C71176C13CA01C14F28 /* Pods-SwishControl-SwishControl-dummy.m */; }; 22 | B96DB935C5D1F50F27CFA62B /* BSSoundContainer.m in Sources */ = {isa = PBXBuildFile; fileRef = 93CB06259439FD0C0B3F16A8 /* BSSoundContainer.m */; }; 23 | BB6DCAC84D1D662423FC5038 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 47F667C82BD3EE629FB84EDA /* Foundation.framework */; }; 24 | C2749A3A250DFD00258438B7 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 47F667C82BD3EE629FB84EDA /* Foundation.framework */; }; 25 | C4B5B935A7441BC0A3BCC7F4 /* Pods-SwishControl-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 8821B094EE3E86A1760E4A42 /* Pods-SwishControl-dummy.m */; }; 26 | D64D01A7043C0447412A9ADB /* BSSoundContainer.h in Headers */ = {isa = PBXBuildFile; fileRef = B32D90D9AD0E2E90A0ED92EA /* BSSoundContainer.h */; }; 27 | D681AF4BE3BB420EEF380B00 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 47F667C82BD3EE629FB84EDA /* Foundation.framework */; }; 28 | D9F43ECE37CF416AAF1EDE3C /* UIControl+SwishControl.m in Sources */ = {isa = PBXBuildFile; fileRef = 781B7B03CCEB67681B7FB32D /* UIControl+SwishControl.m */; }; 29 | DDCB64A180A453B5C0130334 /* SwishControl.h in Headers */ = {isa = PBXBuildFile; fileRef = 54C0E1E1B0F53D249E77146A /* SwishControl.h */; }; 30 | E080116B383AAC086CEF6FEF /* AudioToolbox.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 72460E1E11FB831461D31E0C /* AudioToolbox.framework */; }; 31 | F9217BA6DFBC224778F023C7 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 47F667C82BD3EE629FB84EDA /* Foundation.framework */; }; 32 | /* End PBXBuildFile section */ 33 | 34 | /* Begin PBXContainerItemProxy section */ 35 | 74D60C0AD06342FDAEDDFFAD /* PBXContainerItemProxy */ = { 36 | isa = PBXContainerItemProxy; 37 | containerPortal = 44AE081BF0B9F4A0ADC65830 /* Project object */; 38 | proxyType = 1; 39 | remoteGlobalIDString = F2E072B806308364725CF771; 40 | remoteInfo = "Pods-Tests-SwishControl"; 41 | }; 42 | DB898E30D7A1ECC318A08C25 /* PBXContainerItemProxy */ = { 43 | isa = PBXContainerItemProxy; 44 | containerPortal = 44AE081BF0B9F4A0ADC65830 /* Project object */; 45 | proxyType = 1; 46 | remoteGlobalIDString = 2EDA4100A327AAC964331A7B; 47 | remoteInfo = "Pods-SwishControl-SwishControl"; 48 | }; 49 | /* End PBXContainerItemProxy section */ 50 | 51 | /* Begin PBXFileReference section */ 52 | 0721E6FEA1DC0D7F8BB1F049 /* Pods-Tests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-Tests-acknowledgements.plist"; sourceTree = ""; }; 53 | 3E737E3FC3E626AB157FDF05 /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/UIKit.framework; sourceTree = DEVELOPER_DIR; }; 54 | 40CC1C71176C13CA01C14F28 /* Pods-SwishControl-SwishControl-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SwishControl-SwishControl-dummy.m"; sourceTree = ""; }; 55 | 4704CF868754BE8B5331170A /* Pods-SwishControl-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-SwishControl-resources.sh"; sourceTree = ""; }; 56 | 47F667C82BD3EE629FB84EDA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; 57 | 4FEDAB921C27D9994F5881F5 /* Pods-SwishControl-SwishControl-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SwishControl-SwishControl-prefix.pch"; sourceTree = ""; }; 58 | 54C0E1E1B0F53D249E77146A /* SwishControl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = SwishControl.h; sourceTree = ""; }; 59 | 6CF4A85F689F96C365ABFCEE /* Podfile */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; 60 | 6EEE9ABDE9A837D122111048 /* Pods-SwishControl.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwishControl.debug.xcconfig"; sourceTree = ""; }; 61 | 72460E1E11FB831461D31E0C /* AudioToolbox.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AudioToolbox.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/AudioToolbox.framework; sourceTree = DEVELOPER_DIR; }; 62 | 781B7B03CCEB67681B7FB32D /* UIControl+SwishControl.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "UIControl+SwishControl.m"; sourceTree = ""; }; 63 | 83283CBF1AD907ABCABDF605 /* Pods-Tests-SwishControl-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; name = "Pods-Tests-SwishControl-dummy.m"; path = "../Pods-Tests-SwishControl/Pods-Tests-SwishControl-dummy.m"; sourceTree = ""; }; 64 | 866FAEA9EC18FDBCE455FEAF /* Pods-SwishControl-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-SwishControl-acknowledgements.plist"; sourceTree = ""; }; 65 | 87587CBFE0C9BD43C5322E85 /* Pods-Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Tests.release.xcconfig"; sourceTree = ""; }; 66 | 8821B094EE3E86A1760E4A42 /* Pods-SwishControl-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-SwishControl-dummy.m"; sourceTree = ""; }; 67 | 88A821BD3748101337610591 /* libPods-Tests-SwishControl.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Tests-SwishControl.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 68 | 899E56A0D0BBA638BE8DA1B5 /* Pods-SwishControl-environment.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-SwishControl-environment.h"; sourceTree = ""; }; 69 | 8D2B03B654FAD40032A411E1 /* Pods-Tests-SwishControl-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; name = "Pods-Tests-SwishControl-prefix.pch"; path = "../Pods-Tests-SwishControl/Pods-Tests-SwishControl-prefix.pch"; sourceTree = ""; }; 70 | 8E9744AD12AC411945AE8A41 /* libPods-SwishControl-SwishControl.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-SwishControl-SwishControl.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 71 | 93CB06259439FD0C0B3F16A8 /* BSSoundContainer.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = BSSoundContainer.m; sourceTree = ""; }; 72 | A0608DF3B26FA9066A8F6D98 /* Pods-Tests-SwishControl.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Tests-SwishControl.xcconfig"; path = "../Pods-Tests-SwishControl/Pods-Tests-SwishControl.xcconfig"; sourceTree = ""; }; 73 | AF49BFFDBA43F23FE2E810DA /* Pods-SwishControl-SwishControl-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwishControl-SwishControl-Private.xcconfig"; sourceTree = ""; }; 74 | AF72C233EB6ADEFDBCCC9CE3 /* Pods-Tests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-Tests-acknowledgements.markdown"; sourceTree = ""; }; 75 | B005468C64AB8BF234D3A2BD /* Pods-Tests-environment.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-Tests-environment.h"; sourceTree = ""; }; 76 | B32D90D9AD0E2E90A0ED92EA /* BSSoundContainer.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = BSSoundContainer.h; sourceTree = ""; }; 77 | B3E5FBECFE226430506FE5E9 /* Pods-SwishControl-SwishControl.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwishControl-SwishControl.xcconfig"; sourceTree = ""; }; 78 | C389C331BE36D1D435556716 /* libPods-Tests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Tests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 79 | D16545E39E9FFE5527008C65 /* Pods-Tests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-Tests-dummy.m"; sourceTree = ""; }; 80 | D654C7D46C764CF50EB58202 /* Pods-SwishControl.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-SwishControl.release.xcconfig"; sourceTree = ""; }; 81 | D6B37B492B3C5117ACE03DCE /* Pods-Tests-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-Tests-resources.sh"; sourceTree = ""; }; 82 | DB468CCA741F3A0723718856 /* libPods-SwishControl.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-SwishControl.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 83 | E627A40BA06A602FA1F36393 /* UIControl+SwishControl.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "UIControl+SwishControl.h"; sourceTree = ""; }; 84 | E657647ADF96BBE587FC1165 /* Pods-SwishControl-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-SwishControl-acknowledgements.markdown"; sourceTree = ""; }; 85 | F00022E9AE9D0A6B86A37DEA /* Pods-Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-Tests.debug.xcconfig"; sourceTree = ""; }; 86 | F44FF326F22EADCA387BC368 /* Pods-Tests-SwishControl-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Tests-SwishControl-Private.xcconfig"; path = "../Pods-Tests-SwishControl/Pods-Tests-SwishControl-Private.xcconfig"; sourceTree = ""; }; 87 | /* End PBXFileReference section */ 88 | 89 | /* Begin PBXFrameworksBuildPhase section */ 90 | 75A8825DF64CF85F60E8186E /* Frameworks */ = { 91 | isa = PBXFrameworksBuildPhase; 92 | buildActionMask = 2147483647; 93 | files = ( 94 | 5F15D02E7ECEF57335976D53 /* AudioToolbox.framework in Frameworks */, 95 | C2749A3A250DFD00258438B7 /* Foundation.framework in Frameworks */, 96 | 8060C0D4662BC7AAD92009A7 /* UIKit.framework in Frameworks */, 97 | ); 98 | runOnlyForDeploymentPostprocessing = 0; 99 | }; 100 | 8F909CE59F5C33D68976E5A1 /* Frameworks */ = { 101 | isa = PBXFrameworksBuildPhase; 102 | buildActionMask = 2147483647; 103 | files = ( 104 | F9217BA6DFBC224778F023C7 /* Foundation.framework in Frameworks */, 105 | ); 106 | runOnlyForDeploymentPostprocessing = 0; 107 | }; 108 | 9832ADF83E3F0218BA3493CD /* Frameworks */ = { 109 | isa = PBXFrameworksBuildPhase; 110 | buildActionMask = 2147483647; 111 | files = ( 112 | D681AF4BE3BB420EEF380B00 /* Foundation.framework in Frameworks */, 113 | ); 114 | runOnlyForDeploymentPostprocessing = 0; 115 | }; 116 | A245E1A5806F9F9D243CE0D1 /* Frameworks */ = { 117 | isa = PBXFrameworksBuildPhase; 118 | buildActionMask = 2147483647; 119 | files = ( 120 | E080116B383AAC086CEF6FEF /* AudioToolbox.framework in Frameworks */, 121 | BB6DCAC84D1D662423FC5038 /* Foundation.framework in Frameworks */, 122 | 8823F6981FD0AE92D0D81FE7 /* UIKit.framework in Frameworks */, 123 | ); 124 | runOnlyForDeploymentPostprocessing = 0; 125 | }; 126 | /* End PBXFrameworksBuildPhase section */ 127 | 128 | /* Begin PBXGroup section */ 129 | 0DA24BEB0EEAF90828455E12 /* Classes */ = { 130 | isa = PBXGroup; 131 | children = ( 132 | B32D90D9AD0E2E90A0ED92EA /* BSSoundContainer.h */, 133 | 93CB06259439FD0C0B3F16A8 /* BSSoundContainer.m */, 134 | 54C0E1E1B0F53D249E77146A /* SwishControl.h */, 135 | E627A40BA06A602FA1F36393 /* UIControl+SwishControl.h */, 136 | 781B7B03CCEB67681B7FB32D /* UIControl+SwishControl.m */, 137 | ); 138 | path = Classes; 139 | sourceTree = ""; 140 | }; 141 | 10E990E2946E5C2A9E60B118 /* Frameworks */ = { 142 | isa = PBXGroup; 143 | children = ( 144 | 2BA9770E027D9A70D38F4AAB /* iOS */, 145 | ); 146 | name = Frameworks; 147 | sourceTree = ""; 148 | }; 149 | 2BA9770E027D9A70D38F4AAB /* iOS */ = { 150 | isa = PBXGroup; 151 | children = ( 152 | 72460E1E11FB831461D31E0C /* AudioToolbox.framework */, 153 | 47F667C82BD3EE629FB84EDA /* Foundation.framework */, 154 | 3E737E3FC3E626AB157FDF05 /* UIKit.framework */, 155 | ); 156 | name = iOS; 157 | sourceTree = ""; 158 | }; 159 | 30EFD2E9805A5FD9A436BD37 = { 160 | isa = PBXGroup; 161 | children = ( 162 | 6CF4A85F689F96C365ABFCEE /* Podfile */, 163 | C5E693F22AEC2C238D284FF3 /* Development Pods */, 164 | 10E990E2946E5C2A9E60B118 /* Frameworks */, 165 | 550F38E51BC9D09E340F26F5 /* Products */, 166 | B603D3F0EC3E0AA3DE9D55C3 /* Targets Support Files */, 167 | ); 168 | sourceTree = ""; 169 | }; 170 | 37A59DB085ECED7A65FD8728 /* Pod */ = { 171 | isa = PBXGroup; 172 | children = ( 173 | 0DA24BEB0EEAF90828455E12 /* Classes */, 174 | ); 175 | path = Pod; 176 | sourceTree = ""; 177 | }; 178 | 550F38E51BC9D09E340F26F5 /* Products */ = { 179 | isa = PBXGroup; 180 | children = ( 181 | DB468CCA741F3A0723718856 /* libPods-SwishControl.a */, 182 | 8E9744AD12AC411945AE8A41 /* libPods-SwishControl-SwishControl.a */, 183 | C389C331BE36D1D435556716 /* libPods-Tests.a */, 184 | 88A821BD3748101337610591 /* libPods-Tests-SwishControl.a */, 185 | ); 186 | name = Products; 187 | sourceTree = ""; 188 | }; 189 | B37B5EC7C1C8FF4361DAC965 /* SwishControl */ = { 190 | isa = PBXGroup; 191 | children = ( 192 | 37A59DB085ECED7A65FD8728 /* Pod */, 193 | C0806E871B82E6C71979F7B9 /* Support Files */, 194 | ); 195 | name = SwishControl; 196 | path = ../..; 197 | sourceTree = ""; 198 | }; 199 | B603D3F0EC3E0AA3DE9D55C3 /* Targets Support Files */ = { 200 | isa = PBXGroup; 201 | children = ( 202 | DCFD54281B59ABB90A8DC384 /* Pods-SwishControl */, 203 | B6D53FAA6FF3A1619262647E /* Pods-Tests */, 204 | ); 205 | name = "Targets Support Files"; 206 | sourceTree = ""; 207 | }; 208 | B6D53FAA6FF3A1619262647E /* Pods-Tests */ = { 209 | isa = PBXGroup; 210 | children = ( 211 | AF72C233EB6ADEFDBCCC9CE3 /* Pods-Tests-acknowledgements.markdown */, 212 | 0721E6FEA1DC0D7F8BB1F049 /* Pods-Tests-acknowledgements.plist */, 213 | D16545E39E9FFE5527008C65 /* Pods-Tests-dummy.m */, 214 | B005468C64AB8BF234D3A2BD /* Pods-Tests-environment.h */, 215 | D6B37B492B3C5117ACE03DCE /* Pods-Tests-resources.sh */, 216 | F00022E9AE9D0A6B86A37DEA /* Pods-Tests.debug.xcconfig */, 217 | 87587CBFE0C9BD43C5322E85 /* Pods-Tests.release.xcconfig */, 218 | ); 219 | name = "Pods-Tests"; 220 | path = "Target Support Files/Pods-Tests"; 221 | sourceTree = ""; 222 | }; 223 | C0806E871B82E6C71979F7B9 /* Support Files */ = { 224 | isa = PBXGroup; 225 | children = ( 226 | B3E5FBECFE226430506FE5E9 /* Pods-SwishControl-SwishControl.xcconfig */, 227 | AF49BFFDBA43F23FE2E810DA /* Pods-SwishControl-SwishControl-Private.xcconfig */, 228 | 40CC1C71176C13CA01C14F28 /* Pods-SwishControl-SwishControl-dummy.m */, 229 | 4FEDAB921C27D9994F5881F5 /* Pods-SwishControl-SwishControl-prefix.pch */, 230 | A0608DF3B26FA9066A8F6D98 /* Pods-Tests-SwishControl.xcconfig */, 231 | F44FF326F22EADCA387BC368 /* Pods-Tests-SwishControl-Private.xcconfig */, 232 | 83283CBF1AD907ABCABDF605 /* Pods-Tests-SwishControl-dummy.m */, 233 | 8D2B03B654FAD40032A411E1 /* Pods-Tests-SwishControl-prefix.pch */, 234 | ); 235 | name = "Support Files"; 236 | path = "Example/Pods/Target Support Files/Pods-SwishControl-SwishControl"; 237 | sourceTree = ""; 238 | }; 239 | C5E693F22AEC2C238D284FF3 /* Development Pods */ = { 240 | isa = PBXGroup; 241 | children = ( 242 | B37B5EC7C1C8FF4361DAC965 /* SwishControl */, 243 | ); 244 | name = "Development Pods"; 245 | sourceTree = ""; 246 | }; 247 | DCFD54281B59ABB90A8DC384 /* Pods-SwishControl */ = { 248 | isa = PBXGroup; 249 | children = ( 250 | E657647ADF96BBE587FC1165 /* Pods-SwishControl-acknowledgements.markdown */, 251 | 866FAEA9EC18FDBCE455FEAF /* Pods-SwishControl-acknowledgements.plist */, 252 | 8821B094EE3E86A1760E4A42 /* Pods-SwishControl-dummy.m */, 253 | 899E56A0D0BBA638BE8DA1B5 /* Pods-SwishControl-environment.h */, 254 | 4704CF868754BE8B5331170A /* Pods-SwishControl-resources.sh */, 255 | 6EEE9ABDE9A837D122111048 /* Pods-SwishControl.debug.xcconfig */, 256 | D654C7D46C764CF50EB58202 /* Pods-SwishControl.release.xcconfig */, 257 | ); 258 | name = "Pods-SwishControl"; 259 | path = "Target Support Files/Pods-SwishControl"; 260 | sourceTree = ""; 261 | }; 262 | /* End PBXGroup section */ 263 | 264 | /* Begin PBXHeadersBuildPhase section */ 265 | C3FA60459CFFCBB664718798 /* Headers */ = { 266 | isa = PBXHeadersBuildPhase; 267 | buildActionMask = 2147483647; 268 | files = ( 269 | 27AC0F21B51E79A7A1B964E6 /* BSSoundContainer.h in Headers */, 270 | 46D90EE06C4BDDBCAF14C346 /* SwishControl.h in Headers */, 271 | 1B59A9075478679DCF8847F6 /* UIControl+SwishControl.h in Headers */, 272 | ); 273 | runOnlyForDeploymentPostprocessing = 0; 274 | }; 275 | CEFECCB564F5994C2FF717F7 /* Headers */ = { 276 | isa = PBXHeadersBuildPhase; 277 | buildActionMask = 2147483647; 278 | files = ( 279 | D64D01A7043C0447412A9ADB /* BSSoundContainer.h in Headers */, 280 | DDCB64A180A453B5C0130334 /* SwishControl.h in Headers */, 281 | 5331CE02CC65D7D4C0EE76EB /* UIControl+SwishControl.h in Headers */, 282 | ); 283 | runOnlyForDeploymentPostprocessing = 0; 284 | }; 285 | /* End PBXHeadersBuildPhase section */ 286 | 287 | /* Begin PBXNativeTarget section */ 288 | 2EDA4100A327AAC964331A7B /* Pods-SwishControl-SwishControl */ = { 289 | isa = PBXNativeTarget; 290 | buildConfigurationList = F49DFB254AC222FA73F1BAE2 /* Build configuration list for PBXNativeTarget "Pods-SwishControl-SwishControl" */; 291 | buildPhases = ( 292 | 79E7BC230AC5EE0F2F876581 /* Sources */, 293 | A245E1A5806F9F9D243CE0D1 /* Frameworks */, 294 | C3FA60459CFFCBB664718798 /* Headers */, 295 | ); 296 | buildRules = ( 297 | ); 298 | dependencies = ( 299 | ); 300 | name = "Pods-SwishControl-SwishControl"; 301 | productName = "Pods-SwishControl-SwishControl"; 302 | productReference = 8E9744AD12AC411945AE8A41 /* libPods-SwishControl-SwishControl.a */; 303 | productType = "com.apple.product-type.library.static"; 304 | }; 305 | 4376E7DDDAC5B9AB46160CB7 /* Pods-Tests */ = { 306 | isa = PBXNativeTarget; 307 | buildConfigurationList = EADE35E7C8013F72D6A37AD5 /* Build configuration list for PBXNativeTarget "Pods-Tests" */; 308 | buildPhases = ( 309 | F182418C0D40B1BA56054137 /* Sources */, 310 | 9832ADF83E3F0218BA3493CD /* Frameworks */, 311 | ); 312 | buildRules = ( 313 | ); 314 | dependencies = ( 315 | 4F536CD345F87B8D49623529 /* PBXTargetDependency */, 316 | ); 317 | name = "Pods-Tests"; 318 | productName = "Pods-Tests"; 319 | productReference = C389C331BE36D1D435556716 /* libPods-Tests.a */; 320 | productType = "com.apple.product-type.library.static"; 321 | }; 322 | 6FEE6C79A213A7055E11CE3E /* Pods-SwishControl */ = { 323 | isa = PBXNativeTarget; 324 | buildConfigurationList = 8F8ECE25BF39FC010978A150 /* Build configuration list for PBXNativeTarget "Pods-SwishControl" */; 325 | buildPhases = ( 326 | AC6C8FADA34E23590BA0DE9A /* Sources */, 327 | 8F909CE59F5C33D68976E5A1 /* Frameworks */, 328 | ); 329 | buildRules = ( 330 | ); 331 | dependencies = ( 332 | 791BB73E62DAAF418C7AD334 /* PBXTargetDependency */, 333 | ); 334 | name = "Pods-SwishControl"; 335 | productName = "Pods-SwishControl"; 336 | productReference = DB468CCA741F3A0723718856 /* libPods-SwishControl.a */; 337 | productType = "com.apple.product-type.library.static"; 338 | }; 339 | F2E072B806308364725CF771 /* Pods-Tests-SwishControl */ = { 340 | isa = PBXNativeTarget; 341 | buildConfigurationList = E2A4C35178AFA57EDFC028C9 /* Build configuration list for PBXNativeTarget "Pods-Tests-SwishControl" */; 342 | buildPhases = ( 343 | 94B98606163B093FC175AC59 /* Sources */, 344 | 75A8825DF64CF85F60E8186E /* Frameworks */, 345 | CEFECCB564F5994C2FF717F7 /* Headers */, 346 | ); 347 | buildRules = ( 348 | ); 349 | dependencies = ( 350 | ); 351 | name = "Pods-Tests-SwishControl"; 352 | productName = "Pods-Tests-SwishControl"; 353 | productReference = 88A821BD3748101337610591 /* libPods-Tests-SwishControl.a */; 354 | productType = "com.apple.product-type.library.static"; 355 | }; 356 | /* End PBXNativeTarget section */ 357 | 358 | /* Begin PBXProject section */ 359 | 44AE081BF0B9F4A0ADC65830 /* Project object */ = { 360 | isa = PBXProject; 361 | attributes = { 362 | LastUpgradeCheck = 0510; 363 | }; 364 | buildConfigurationList = 8B4BC8DCD0B9885E54B7B62D /* Build configuration list for PBXProject "Pods" */; 365 | compatibilityVersion = "Xcode 3.2"; 366 | developmentRegion = English; 367 | hasScannedForEncodings = 0; 368 | knownRegions = ( 369 | en, 370 | ); 371 | mainGroup = 30EFD2E9805A5FD9A436BD37; 372 | productRefGroup = 550F38E51BC9D09E340F26F5 /* Products */; 373 | projectDirPath = ""; 374 | projectRoot = ""; 375 | targets = ( 376 | 6FEE6C79A213A7055E11CE3E /* Pods-SwishControl */, 377 | 2EDA4100A327AAC964331A7B /* Pods-SwishControl-SwishControl */, 378 | 4376E7DDDAC5B9AB46160CB7 /* Pods-Tests */, 379 | F2E072B806308364725CF771 /* Pods-Tests-SwishControl */, 380 | ); 381 | }; 382 | /* End PBXProject section */ 383 | 384 | /* Begin PBXSourcesBuildPhase section */ 385 | 79E7BC230AC5EE0F2F876581 /* Sources */ = { 386 | isa = PBXSourcesBuildPhase; 387 | buildActionMask = 2147483647; 388 | files = ( 389 | 3F72493D5B7E223D0BCFCB9E /* BSSoundContainer.m in Sources */, 390 | A2D9ECB6F7B00AA2FBDDBC17 /* Pods-SwishControl-SwishControl-dummy.m in Sources */, 391 | D9F43ECE37CF416AAF1EDE3C /* UIControl+SwishControl.m in Sources */, 392 | ); 393 | runOnlyForDeploymentPostprocessing = 0; 394 | }; 395 | 94B98606163B093FC175AC59 /* Sources */ = { 396 | isa = PBXSourcesBuildPhase; 397 | buildActionMask = 2147483647; 398 | files = ( 399 | B96DB935C5D1F50F27CFA62B /* BSSoundContainer.m in Sources */, 400 | 9F6B44AE698DF22078132C61 /* Pods-Tests-SwishControl-dummy.m in Sources */, 401 | 25D18CEF538405C2D59148EC /* UIControl+SwishControl.m in Sources */, 402 | ); 403 | runOnlyForDeploymentPostprocessing = 0; 404 | }; 405 | AC6C8FADA34E23590BA0DE9A /* Sources */ = { 406 | isa = PBXSourcesBuildPhase; 407 | buildActionMask = 2147483647; 408 | files = ( 409 | C4B5B935A7441BC0A3BCC7F4 /* Pods-SwishControl-dummy.m in Sources */, 410 | ); 411 | runOnlyForDeploymentPostprocessing = 0; 412 | }; 413 | F182418C0D40B1BA56054137 /* Sources */ = { 414 | isa = PBXSourcesBuildPhase; 415 | buildActionMask = 2147483647; 416 | files = ( 417 | 4FC258DAA79CEC81E5D2EAB5 /* Pods-Tests-dummy.m in Sources */, 418 | ); 419 | runOnlyForDeploymentPostprocessing = 0; 420 | }; 421 | /* End PBXSourcesBuildPhase section */ 422 | 423 | /* Begin PBXTargetDependency section */ 424 | 4F536CD345F87B8D49623529 /* PBXTargetDependency */ = { 425 | isa = PBXTargetDependency; 426 | name = "Pods-Tests-SwishControl"; 427 | target = F2E072B806308364725CF771 /* Pods-Tests-SwishControl */; 428 | targetProxy = 74D60C0AD06342FDAEDDFFAD /* PBXContainerItemProxy */; 429 | }; 430 | 791BB73E62DAAF418C7AD334 /* PBXTargetDependency */ = { 431 | isa = PBXTargetDependency; 432 | name = "Pods-SwishControl-SwishControl"; 433 | target = 2EDA4100A327AAC964331A7B /* Pods-SwishControl-SwishControl */; 434 | targetProxy = DB898E30D7A1ECC318A08C25 /* PBXContainerItemProxy */; 435 | }; 436 | /* End PBXTargetDependency section */ 437 | 438 | /* Begin XCBuildConfiguration section */ 439 | 47E0E4B96BA4E06DDB1CDF58 /* Release */ = { 440 | isa = XCBuildConfiguration; 441 | baseConfigurationReference = F44FF326F22EADCA387BC368 /* Pods-Tests-SwishControl-Private.xcconfig */; 442 | buildSettings = { 443 | ENABLE_STRICT_OBJC_MSGSEND = YES; 444 | GCC_PREFIX_HEADER = "Target Support Files/Pods-Tests-SwishControl/Pods-Tests-SwishControl-prefix.pch"; 445 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 446 | MTL_ENABLE_DEBUG_INFO = NO; 447 | OTHER_LDFLAGS = ""; 448 | OTHER_LIBTOOLFLAGS = ""; 449 | PRODUCT_NAME = "$(TARGET_NAME)"; 450 | SDKROOT = iphoneos; 451 | SKIP_INSTALL = YES; 452 | }; 453 | name = Release; 454 | }; 455 | 581A5A03933E34B89CEF1EC3 /* Release */ = { 456 | isa = XCBuildConfiguration; 457 | baseConfigurationReference = AF49BFFDBA43F23FE2E810DA /* Pods-SwishControl-SwishControl-Private.xcconfig */; 458 | buildSettings = { 459 | ENABLE_STRICT_OBJC_MSGSEND = YES; 460 | GCC_PREFIX_HEADER = "Target Support Files/Pods-SwishControl-SwishControl/Pods-SwishControl-SwishControl-prefix.pch"; 461 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 462 | MTL_ENABLE_DEBUG_INFO = NO; 463 | OTHER_LDFLAGS = ""; 464 | OTHER_LIBTOOLFLAGS = ""; 465 | PRODUCT_NAME = "$(TARGET_NAME)"; 466 | SDKROOT = iphoneos; 467 | SKIP_INSTALL = YES; 468 | }; 469 | name = Release; 470 | }; 471 | 791E909F3FFC988BDF55E1E5 /* Debug */ = { 472 | isa = XCBuildConfiguration; 473 | buildSettings = { 474 | ALWAYS_SEARCH_USER_PATHS = NO; 475 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 476 | CLANG_CXX_LIBRARY = "libc++"; 477 | CLANG_ENABLE_MODULES = YES; 478 | CLANG_ENABLE_OBJC_ARC = YES; 479 | CLANG_WARN_BOOL_CONVERSION = YES; 480 | CLANG_WARN_CONSTANT_CONVERSION = YES; 481 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES; 482 | CLANG_WARN_EMPTY_BODY = YES; 483 | CLANG_WARN_ENUM_CONVERSION = YES; 484 | CLANG_WARN_INT_CONVERSION = YES; 485 | CLANG_WARN_OBJC_ROOT_CLASS = YES; 486 | CLANG_WARN_UNREACHABLE_CODE = YES; 487 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 488 | COPY_PHASE_STRIP = NO; 489 | GCC_C_LANGUAGE_STANDARD = gnu99; 490 | GCC_DYNAMIC_NO_PIC = NO; 491 | GCC_OPTIMIZATION_LEVEL = 0; 492 | GCC_PREPROCESSOR_DEFINITIONS = ( 493 | "DEBUG=1", 494 | "$(inherited)", 495 | ); 496 | GCC_SYMBOLS_PRIVATE_EXTERN = NO; 497 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 498 | GCC_WARN_ABOUT_RETURN_TYPE = YES; 499 | GCC_WARN_UNDECLARED_SELECTOR = YES; 500 | GCC_WARN_UNINITIALIZED_AUTOS = YES; 501 | GCC_WARN_UNUSED_FUNCTION = YES; 502 | GCC_WARN_UNUSED_VARIABLE = YES; 503 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 504 | ONLY_ACTIVE_ARCH = YES; 505 | STRIP_INSTALLED_PRODUCT = NO; 506 | SYMROOT = "${SRCROOT}/../build"; 507 | }; 508 | name = Debug; 509 | }; 510 | 7CFFC75607A98C9C5DEAFBE3 /* Debug */ = { 511 | isa = XCBuildConfiguration; 512 | baseConfigurationReference = AF49BFFDBA43F23FE2E810DA /* Pods-SwishControl-SwishControl-Private.xcconfig */; 513 | buildSettings = { 514 | ENABLE_STRICT_OBJC_MSGSEND = YES; 515 | GCC_PREFIX_HEADER = "Target Support Files/Pods-SwishControl-SwishControl/Pods-SwishControl-SwishControl-prefix.pch"; 516 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 517 | MTL_ENABLE_DEBUG_INFO = YES; 518 | OTHER_LDFLAGS = ""; 519 | OTHER_LIBTOOLFLAGS = ""; 520 | PRODUCT_NAME = "$(TARGET_NAME)"; 521 | SDKROOT = iphoneos; 522 | SKIP_INSTALL = YES; 523 | }; 524 | name = Debug; 525 | }; 526 | 95C8EA808C3DF78D60AFC9DF /* Debug */ = { 527 | isa = XCBuildConfiguration; 528 | baseConfigurationReference = F44FF326F22EADCA387BC368 /* Pods-Tests-SwishControl-Private.xcconfig */; 529 | buildSettings = { 530 | ENABLE_STRICT_OBJC_MSGSEND = YES; 531 | GCC_PREFIX_HEADER = "Target Support Files/Pods-Tests-SwishControl/Pods-Tests-SwishControl-prefix.pch"; 532 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 533 | MTL_ENABLE_DEBUG_INFO = YES; 534 | OTHER_LDFLAGS = ""; 535 | OTHER_LIBTOOLFLAGS = ""; 536 | PRODUCT_NAME = "$(TARGET_NAME)"; 537 | SDKROOT = iphoneos; 538 | SKIP_INSTALL = YES; 539 | }; 540 | name = Debug; 541 | }; 542 | 99671BACB4B1C8453809A280 /* Release */ = { 543 | isa = XCBuildConfiguration; 544 | baseConfigurationReference = 87587CBFE0C9BD43C5322E85 /* Pods-Tests.release.xcconfig */; 545 | buildSettings = { 546 | ENABLE_STRICT_OBJC_MSGSEND = YES; 547 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 548 | MTL_ENABLE_DEBUG_INFO = NO; 549 | OTHER_LDFLAGS = ""; 550 | OTHER_LIBTOOLFLAGS = ""; 551 | PODS_ROOT = "$(SRCROOT)"; 552 | PRODUCT_NAME = "$(TARGET_NAME)"; 553 | SDKROOT = iphoneos; 554 | SKIP_INSTALL = YES; 555 | }; 556 | name = Release; 557 | }; 558 | B8B1D5FB060A7A97DC911D27 /* Release */ = { 559 | isa = XCBuildConfiguration; 560 | baseConfigurationReference = D654C7D46C764CF50EB58202 /* Pods-SwishControl.release.xcconfig */; 561 | buildSettings = { 562 | ENABLE_STRICT_OBJC_MSGSEND = YES; 563 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 564 | MTL_ENABLE_DEBUG_INFO = NO; 565 | OTHER_LDFLAGS = ""; 566 | OTHER_LIBTOOLFLAGS = ""; 567 | PODS_ROOT = "$(SRCROOT)"; 568 | PRODUCT_NAME = "$(TARGET_NAME)"; 569 | SDKROOT = iphoneos; 570 | SKIP_INSTALL = YES; 571 | }; 572 | name = Release; 573 | }; 574 | D479A6DACF02FC7A4B90D7EA /* Release */ = { 575 | isa = XCBuildConfiguration; 576 | buildSettings = { 577 | ALWAYS_SEARCH_USER_PATHS = NO; 578 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 579 | CLANG_CXX_LIBRARY = "libc++"; 580 | CLANG_ENABLE_MODULES = YES; 581 | CLANG_ENABLE_OBJC_ARC = YES; 582 | CLANG_WARN_BOOL_CONVERSION = YES; 583 | CLANG_WARN_CONSTANT_CONVERSION = YES; 584 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES; 585 | CLANG_WARN_EMPTY_BODY = YES; 586 | CLANG_WARN_ENUM_CONVERSION = YES; 587 | CLANG_WARN_INT_CONVERSION = YES; 588 | CLANG_WARN_OBJC_ROOT_CLASS = YES; 589 | CLANG_WARN_UNREACHABLE_CODE = YES; 590 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 591 | COPY_PHASE_STRIP = YES; 592 | ENABLE_NS_ASSERTIONS = NO; 593 | GCC_C_LANGUAGE_STANDARD = gnu99; 594 | GCC_PREPROCESSOR_DEFINITIONS = "RELEASE=1"; 595 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 596 | GCC_WARN_ABOUT_RETURN_TYPE = YES; 597 | GCC_WARN_UNDECLARED_SELECTOR = YES; 598 | GCC_WARN_UNINITIALIZED_AUTOS = YES; 599 | GCC_WARN_UNUSED_FUNCTION = YES; 600 | GCC_WARN_UNUSED_VARIABLE = YES; 601 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 602 | STRIP_INSTALLED_PRODUCT = NO; 603 | SYMROOT = "${SRCROOT}/../build"; 604 | VALIDATE_PRODUCT = YES; 605 | }; 606 | name = Release; 607 | }; 608 | D7A780F46ADDE545F30292BB /* Debug */ = { 609 | isa = XCBuildConfiguration; 610 | baseConfigurationReference = 6EEE9ABDE9A837D122111048 /* Pods-SwishControl.debug.xcconfig */; 611 | buildSettings = { 612 | ENABLE_STRICT_OBJC_MSGSEND = YES; 613 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 614 | MTL_ENABLE_DEBUG_INFO = YES; 615 | OTHER_LDFLAGS = ""; 616 | OTHER_LIBTOOLFLAGS = ""; 617 | PODS_ROOT = "$(SRCROOT)"; 618 | PRODUCT_NAME = "$(TARGET_NAME)"; 619 | SDKROOT = iphoneos; 620 | SKIP_INSTALL = YES; 621 | }; 622 | name = Debug; 623 | }; 624 | FC35A67A10E89F1DCADC4F5C /* Debug */ = { 625 | isa = XCBuildConfiguration; 626 | baseConfigurationReference = F00022E9AE9D0A6B86A37DEA /* Pods-Tests.debug.xcconfig */; 627 | buildSettings = { 628 | ENABLE_STRICT_OBJC_MSGSEND = YES; 629 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 630 | MTL_ENABLE_DEBUG_INFO = YES; 631 | OTHER_LDFLAGS = ""; 632 | OTHER_LIBTOOLFLAGS = ""; 633 | PODS_ROOT = "$(SRCROOT)"; 634 | PRODUCT_NAME = "$(TARGET_NAME)"; 635 | SDKROOT = iphoneos; 636 | SKIP_INSTALL = YES; 637 | }; 638 | name = Debug; 639 | }; 640 | /* End XCBuildConfiguration section */ 641 | 642 | /* Begin XCConfigurationList section */ 643 | 8B4BC8DCD0B9885E54B7B62D /* Build configuration list for PBXProject "Pods" */ = { 644 | isa = XCConfigurationList; 645 | buildConfigurations = ( 646 | 791E909F3FFC988BDF55E1E5 /* Debug */, 647 | D479A6DACF02FC7A4B90D7EA /* Release */, 648 | ); 649 | defaultConfigurationIsVisible = 0; 650 | defaultConfigurationName = Release; 651 | }; 652 | 8F8ECE25BF39FC010978A150 /* Build configuration list for PBXNativeTarget "Pods-SwishControl" */ = { 653 | isa = XCConfigurationList; 654 | buildConfigurations = ( 655 | D7A780F46ADDE545F30292BB /* Debug */, 656 | B8B1D5FB060A7A97DC911D27 /* Release */, 657 | ); 658 | defaultConfigurationIsVisible = 0; 659 | defaultConfigurationName = Release; 660 | }; 661 | E2A4C35178AFA57EDFC028C9 /* Build configuration list for PBXNativeTarget "Pods-Tests-SwishControl" */ = { 662 | isa = XCConfigurationList; 663 | buildConfigurations = ( 664 | 95C8EA808C3DF78D60AFC9DF /* Debug */, 665 | 47E0E4B96BA4E06DDB1CDF58 /* Release */, 666 | ); 667 | defaultConfigurationIsVisible = 0; 668 | defaultConfigurationName = Release; 669 | }; 670 | EADE35E7C8013F72D6A37AD5 /* Build configuration list for PBXNativeTarget "Pods-Tests" */ = { 671 | isa = XCConfigurationList; 672 | buildConfigurations = ( 673 | FC35A67A10E89F1DCADC4F5C /* Debug */, 674 | 99671BACB4B1C8453809A280 /* Release */, 675 | ); 676 | defaultConfigurationIsVisible = 0; 677 | defaultConfigurationName = Release; 678 | }; 679 | F49DFB254AC222FA73F1BAE2 /* Build configuration list for PBXNativeTarget "Pods-SwishControl-SwishControl" */ = { 680 | isa = XCConfigurationList; 681 | buildConfigurations = ( 682 | 7CFFC75607A98C9C5DEAFBE3 /* Debug */, 683 | 581A5A03933E34B89CEF1EC3 /* Release */, 684 | ); 685 | defaultConfigurationIsVisible = 0; 686 | defaultConfigurationName = Release; 687 | }; 688 | /* End XCConfigurationList section */ 689 | }; 690 | rootObject = 44AE081BF0B9F4A0ADC65830 /* Project object */; 691 | } 692 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-SwishControl-SwishControl/Pods-SwishControl-SwishControl-Private.xcconfig: -------------------------------------------------------------------------------- 1 | #include "Pods-SwishControl-SwishControl.xcconfig" 2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 3 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/SwishControl" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/SwishControl" 4 | OTHER_LDFLAGS = ${PODS_SWISHCONTROL_SWISHCONTROL_OTHER_LDFLAGS} -ObjC 5 | PODS_ROOT = ${SRCROOT} 6 | SKIP_INSTALL = YES -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-SwishControl-SwishControl/Pods-SwishControl-SwishControl-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_SwishControl_SwishControl : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_SwishControl_SwishControl 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-SwishControl-SwishControl/Pods-SwishControl-SwishControl-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | #import "Pods-SwishControl-environment.h" 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-SwishControl-SwishControl/Pods-SwishControl-SwishControl.xcconfig: -------------------------------------------------------------------------------- 1 | PODS_SWISHCONTROL_SWISHCONTROL_OTHER_LDFLAGS = -framework "AudioToolbox" -framework "UIKit" -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-SwishControl/Pods-SwishControl-acknowledgements.markdown: -------------------------------------------------------------------------------- 1 | # Acknowledgements 2 | This application makes use of the following third party libraries: 3 | 4 | ## SwishControl 5 | 6 | The MIT License (MIT) 7 | 8 | Copyright (c) 2015 Joakim Gyllström 9 | 10 | Permission is hereby granted, free of charge, to any person obtaining a copy 11 | of this software and associated documentation files (the "Software"), to deal 12 | in the Software without restriction, including without limitation the rights 13 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 14 | copies of the Software, and to permit persons to whom the Software is 15 | furnished to do so, subject to the following conditions: 16 | 17 | The above copyright notice and this permission notice shall be included in all 18 | copies or substantial portions of the Software. 19 | 20 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 21 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 22 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 23 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 24 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 25 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 26 | SOFTWARE. 27 | 28 | Generated by CocoaPods - http://cocoapods.org 29 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-SwishControl/Pods-SwishControl-acknowledgements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PreferenceSpecifiers 6 | 7 | 8 | FooterText 9 | This application makes use of the following third party libraries: 10 | Title 11 | Acknowledgements 12 | Type 13 | PSGroupSpecifier 14 | 15 | 16 | FooterText 17 | The MIT License (MIT) 18 | 19 | Copyright (c) 2015 Joakim Gyllström 20 | 21 | Permission is hereby granted, free of charge, to any person obtaining a copy 22 | of this software and associated documentation files (the "Software"), to deal 23 | in the Software without restriction, including without limitation the rights 24 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 25 | copies of the Software, and to permit persons to whom the Software is 26 | furnished to do so, subject to the following conditions: 27 | 28 | The above copyright notice and this permission notice shall be included in all 29 | copies or substantial portions of the Software. 30 | 31 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 32 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 33 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 34 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 35 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 36 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 37 | SOFTWARE. 38 | 39 | Title 40 | SwishControl 41 | Type 42 | PSGroupSpecifier 43 | 44 | 45 | FooterText 46 | Generated by CocoaPods - http://cocoapods.org 47 | Title 48 | 49 | Type 50 | PSGroupSpecifier 51 | 52 | 53 | StringsTable 54 | Acknowledgements 55 | Title 56 | Acknowledgements 57 | 58 | 59 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-SwishControl/Pods-SwishControl-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_SwishControl : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_SwishControl 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-SwishControl/Pods-SwishControl-environment.h: -------------------------------------------------------------------------------- 1 | 2 | // To check if a library is compiled with CocoaPods you 3 | // can use the `COCOAPODS` macro definition which is 4 | // defined in the xcconfigs so it is available in 5 | // headers also when they are imported in the client 6 | // project. 7 | 8 | 9 | // SwishControl 10 | #define COCOAPODS_POD_AVAILABLE_SwishControl 11 | #define COCOAPODS_VERSION_MAJOR_SwishControl 0 12 | #define COCOAPODS_VERSION_MINOR_SwishControl 1 13 | #define COCOAPODS_VERSION_PATCH_SwishControl 0 14 | 15 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-SwishControl/Pods-SwishControl-resources.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 5 | 6 | RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt 7 | > "$RESOURCES_TO_COPY" 8 | 9 | XCASSET_FILES="" 10 | 11 | install_resource() 12 | { 13 | case $1 in 14 | *.storyboard) 15 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}" 16 | ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" 17 | ;; 18 | *.xib) 19 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}" 20 | ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" 21 | ;; 22 | *.framework) 23 | echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 24 | mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 25 | echo "rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 26 | rsync -av "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 27 | ;; 28 | *.xcdatamodel) 29 | echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1"`.mom\"" 30 | xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodel`.mom" 31 | ;; 32 | *.xcdatamodeld) 33 | echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd\"" 34 | xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd" 35 | ;; 36 | *.xcmappingmodel) 37 | echo "xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm\"" 38 | xcrun mapc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm" 39 | ;; 40 | *.xcassets) 41 | XCASSET_FILES="$XCASSET_FILES '${PODS_ROOT}/$1'" 42 | ;; 43 | /*) 44 | echo "$1" 45 | echo "$1" >> "$RESOURCES_TO_COPY" 46 | ;; 47 | *) 48 | echo "${PODS_ROOT}/$1" 49 | echo "${PODS_ROOT}/$1" >> "$RESOURCES_TO_COPY" 50 | ;; 51 | esac 52 | } 53 | 54 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 55 | if [[ "${ACTION}" == "install" ]]; then 56 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 57 | fi 58 | rm -f "$RESOURCES_TO_COPY" 59 | 60 | if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "$XCASSET_FILES" ] 61 | then 62 | case "${TARGETED_DEVICE_FAMILY}" in 63 | 1,2) 64 | TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" 65 | ;; 66 | 1) 67 | TARGET_DEVICE_ARGS="--target-device iphone" 68 | ;; 69 | 2) 70 | TARGET_DEVICE_ARGS="--target-device ipad" 71 | ;; 72 | *) 73 | TARGET_DEVICE_ARGS="--target-device mac" 74 | ;; 75 | esac 76 | while read line; do XCASSET_FILES="$XCASSET_FILES '$line'"; done <<<$(find "$PWD" -name "*.xcassets" | egrep -v "^$PODS_ROOT") 77 | echo $XCASSET_FILES | xargs actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${IPHONEOS_DEPLOYMENT_TARGET}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 78 | fi 79 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-SwishControl/Pods-SwishControl.debug.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/SwishControl" 3 | OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/SwishControl" 4 | OTHER_LDFLAGS = $(inherited) -ObjC -l"Pods-SwishControl-SwishControl" -framework "AudioToolbox" -framework "UIKit" 5 | OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS) 6 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-SwishControl/Pods-SwishControl.release.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/SwishControl" 3 | OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/SwishControl" 4 | OTHER_LDFLAGS = $(inherited) -ObjC -l"Pods-SwishControl-SwishControl" -framework "AudioToolbox" -framework "UIKit" 5 | OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS) 6 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests-SwishControl/Pods-Tests-SwishControl-Private.xcconfig: -------------------------------------------------------------------------------- 1 | #include "Pods-Tests-SwishControl.xcconfig" 2 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 3 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/SwishControl" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/SwishControl" 4 | OTHER_LDFLAGS = ${PODS_TESTS_SWISHCONTROL_OTHER_LDFLAGS} -ObjC 5 | PODS_ROOT = ${SRCROOT} 6 | SKIP_INSTALL = YES -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests-SwishControl/Pods-Tests-SwishControl-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_Tests_SwishControl : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_Tests_SwishControl 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests-SwishControl/Pods-Tests-SwishControl-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | #import "Pods-Tests-environment.h" 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests-SwishControl/Pods-Tests-SwishControl.xcconfig: -------------------------------------------------------------------------------- 1 | PODS_TESTS_SWISHCONTROL_OTHER_LDFLAGS = -framework "AudioToolbox" -framework "UIKit" -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests/Pods-Tests-acknowledgements.markdown: -------------------------------------------------------------------------------- 1 | # Acknowledgements 2 | This application makes use of the following third party libraries: 3 | 4 | ## SwishControl 5 | 6 | The MIT License (MIT) 7 | 8 | Copyright (c) 2015 Joakim Gyllström 9 | 10 | Permission is hereby granted, free of charge, to any person obtaining a copy 11 | of this software and associated documentation files (the "Software"), to deal 12 | in the Software without restriction, including without limitation the rights 13 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 14 | copies of the Software, and to permit persons to whom the Software is 15 | furnished to do so, subject to the following conditions: 16 | 17 | The above copyright notice and this permission notice shall be included in all 18 | copies or substantial portions of the Software. 19 | 20 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 21 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 22 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 23 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 24 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 25 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 26 | SOFTWARE. 27 | 28 | Generated by CocoaPods - http://cocoapods.org 29 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests/Pods-Tests-acknowledgements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PreferenceSpecifiers 6 | 7 | 8 | FooterText 9 | This application makes use of the following third party libraries: 10 | Title 11 | Acknowledgements 12 | Type 13 | PSGroupSpecifier 14 | 15 | 16 | FooterText 17 | The MIT License (MIT) 18 | 19 | Copyright (c) 2015 Joakim Gyllström 20 | 21 | Permission is hereby granted, free of charge, to any person obtaining a copy 22 | of this software and associated documentation files (the "Software"), to deal 23 | in the Software without restriction, including without limitation the rights 24 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 25 | copies of the Software, and to permit persons to whom the Software is 26 | furnished to do so, subject to the following conditions: 27 | 28 | The above copyright notice and this permission notice shall be included in all 29 | copies or substantial portions of the Software. 30 | 31 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 32 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 33 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 34 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 35 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 36 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 37 | SOFTWARE. 38 | 39 | Title 40 | SwishControl 41 | Type 42 | PSGroupSpecifier 43 | 44 | 45 | FooterText 46 | Generated by CocoaPods - http://cocoapods.org 47 | Title 48 | 49 | Type 50 | PSGroupSpecifier 51 | 52 | 53 | StringsTable 54 | Acknowledgements 55 | Title 56 | Acknowledgements 57 | 58 | 59 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests/Pods-Tests-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_Tests : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_Tests 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests/Pods-Tests-environment.h: -------------------------------------------------------------------------------- 1 | 2 | // To check if a library is compiled with CocoaPods you 3 | // can use the `COCOAPODS` macro definition which is 4 | // defined in the xcconfigs so it is available in 5 | // headers also when they are imported in the client 6 | // project. 7 | 8 | 9 | // SwishControl 10 | #define COCOAPODS_POD_AVAILABLE_SwishControl 11 | #define COCOAPODS_VERSION_MAJOR_SwishControl 0 12 | #define COCOAPODS_VERSION_MINOR_SwishControl 1 13 | #define COCOAPODS_VERSION_PATCH_SwishControl 0 14 | 15 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests/Pods-Tests-resources.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 5 | 6 | RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt 7 | > "$RESOURCES_TO_COPY" 8 | 9 | XCASSET_FILES="" 10 | 11 | install_resource() 12 | { 13 | case $1 in 14 | *.storyboard) 15 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}" 16 | ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" 17 | ;; 18 | *.xib) 19 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}" 20 | ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" 21 | ;; 22 | *.framework) 23 | echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 24 | mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 25 | echo "rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 26 | rsync -av "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 27 | ;; 28 | *.xcdatamodel) 29 | echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1"`.mom\"" 30 | xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodel`.mom" 31 | ;; 32 | *.xcdatamodeld) 33 | echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd\"" 34 | xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd" 35 | ;; 36 | *.xcmappingmodel) 37 | echo "xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm\"" 38 | xcrun mapc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm" 39 | ;; 40 | *.xcassets) 41 | XCASSET_FILES="$XCASSET_FILES '${PODS_ROOT}/$1'" 42 | ;; 43 | /*) 44 | echo "$1" 45 | echo "$1" >> "$RESOURCES_TO_COPY" 46 | ;; 47 | *) 48 | echo "${PODS_ROOT}/$1" 49 | echo "${PODS_ROOT}/$1" >> "$RESOURCES_TO_COPY" 50 | ;; 51 | esac 52 | } 53 | 54 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 55 | if [[ "${ACTION}" == "install" ]]; then 56 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 57 | fi 58 | rm -f "$RESOURCES_TO_COPY" 59 | 60 | if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "$XCASSET_FILES" ] 61 | then 62 | case "${TARGETED_DEVICE_FAMILY}" in 63 | 1,2) 64 | TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" 65 | ;; 66 | 1) 67 | TARGET_DEVICE_ARGS="--target-device iphone" 68 | ;; 69 | 2) 70 | TARGET_DEVICE_ARGS="--target-device ipad" 71 | ;; 72 | *) 73 | TARGET_DEVICE_ARGS="--target-device mac" 74 | ;; 75 | esac 76 | while read line; do XCASSET_FILES="$XCASSET_FILES '$line'"; done <<<$(find "$PWD" -name "*.xcassets" | egrep -v "^$PODS_ROOT") 77 | echo $XCASSET_FILES | xargs actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${IPHONEOS_DEPLOYMENT_TARGET}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 78 | fi 79 | -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests/Pods-Tests.debug.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/SwishControl" 3 | OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/SwishControl" 4 | OTHER_LDFLAGS = $(inherited) -ObjC -l"Pods-Tests-SwishControl" -framework "AudioToolbox" -framework "UIKit" 5 | OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS) 6 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /Example/Pods/Target Support Files/Pods-Tests/Pods-Tests.release.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/SwishControl" 3 | OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/SwishControl" 4 | OTHER_LDFLAGS = $(inherited) -ObjC -l"Pods-Tests-SwishControl" -framework "AudioToolbox" -framework "UIKit" 5 | OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS) 6 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /Example/SwishControl.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 1C566641CA8A12B5E18628C2 /* libPods-Tests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = AFCDC760C7145BEE39620155 /* libPods-Tests.a */; }; 11 | 55B359A11ADFED0500477052 /* click.wav in Resources */ = {isa = PBXBuildFile; fileRef = 55B359A01ADFED0500477052 /* click.wav */; }; 12 | 55B359A31ADFED0E00477052 /* click2.wav in Resources */ = {isa = PBXBuildFile; fileRef = 55B359A21ADFED0E00477052 /* click2.wav */; }; 13 | 55B359A51ADFFEC300477052 /* BSSwishControlTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 55B359A41ADFFEC300477052 /* BSSwishControlTests.m */; }; 14 | 6003F58E195388D20070C39A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58D195388D20070C39A /* Foundation.framework */; }; 15 | 6003F590195388D20070C39A /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58F195388D20070C39A /* CoreGraphics.framework */; }; 16 | 6003F592195388D20070C39A /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F591195388D20070C39A /* UIKit.framework */; }; 17 | 6003F598195388D20070C39A /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6003F596195388D20070C39A /* InfoPlist.strings */; }; 18 | 6003F59A195388D20070C39A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 6003F599195388D20070C39A /* main.m */; }; 19 | 6003F59E195388D20070C39A /* BSAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 6003F59D195388D20070C39A /* BSAppDelegate.m */; }; 20 | 6003F5A1195388D20070C39A /* Main_iPhone.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6003F59F195388D20070C39A /* Main_iPhone.storyboard */; }; 21 | 6003F5A4195388D20070C39A /* Main_iPad.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6003F5A2195388D20070C39A /* Main_iPad.storyboard */; }; 22 | 6003F5A7195388D20070C39A /* BSViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 6003F5A6195388D20070C39A /* BSViewController.m */; }; 23 | 6003F5A9195388D20070C39A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 6003F5A8195388D20070C39A /* Images.xcassets */; }; 24 | 6003F5B0195388D20070C39A /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F5AF195388D20070C39A /* XCTest.framework */; }; 25 | 6003F5B1195388D20070C39A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58D195388D20070C39A /* Foundation.framework */; }; 26 | 6003F5B2195388D20070C39A /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F591195388D20070C39A /* UIKit.framework */; }; 27 | 6003F5BA195388D20070C39A /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6003F5B8195388D20070C39A /* InfoPlist.strings */; }; 28 | B03B99D4627A127BE13F659F /* libPods-SwishControl.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 6EC7CFCF9F76BA6B18713588 /* libPods-SwishControl.a */; }; 29 | /* End PBXBuildFile section */ 30 | 31 | /* Begin PBXContainerItemProxy section */ 32 | 6003F5B3195388D20070C39A /* PBXContainerItemProxy */ = { 33 | isa = PBXContainerItemProxy; 34 | containerPortal = 6003F582195388D10070C39A /* Project object */; 35 | proxyType = 1; 36 | remoteGlobalIDString = 6003F589195388D20070C39A; 37 | remoteInfo = SwishControl; 38 | }; 39 | /* End PBXContainerItemProxy section */ 40 | 41 | /* Begin PBXFileReference section */ 42 | 1160F0FFF6509F9970F56766 /* SwishControl.podspec */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = SwishControl.podspec; path = ../SwishControl.podspec; sourceTree = ""; }; 43 | 50327371F7E7B9EE9E2E1480 /* Pods-SwishControl.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SwishControl.debug.xcconfig"; path = "Pods/Target Support Files/Pods-SwishControl/Pods-SwishControl.debug.xcconfig"; sourceTree = ""; }; 44 | 535B654BAF4B4D95FA3A55C7 /* Pods-Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Tests.release.xcconfig"; path = "Pods/Target Support Files/Pods-Tests/Pods-Tests.release.xcconfig"; sourceTree = ""; }; 45 | 55B359A01ADFED0500477052 /* click.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = click.wav; sourceTree = ""; }; 46 | 55B359A21ADFED0E00477052 /* click2.wav */ = {isa = PBXFileReference; lastKnownFileType = audio.wav; path = click2.wav; sourceTree = ""; }; 47 | 55B359A41ADFFEC300477052 /* BSSwishControlTests.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = BSSwishControlTests.m; sourceTree = ""; }; 48 | 57E739D712702D4F8F5BFF4E /* Pods-Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Tests.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Tests/Pods-Tests.debug.xcconfig"; sourceTree = ""; }; 49 | 6003F58A195388D20070C39A /* SwishControl.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = SwishControl.app; sourceTree = BUILT_PRODUCTS_DIR; }; 50 | 6003F58D195388D20070C39A /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 51 | 6003F58F195388D20070C39A /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; 52 | 6003F591195388D20070C39A /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; 53 | 6003F595195388D20070C39A /* SwishControl-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "SwishControl-Info.plist"; sourceTree = ""; }; 54 | 6003F597195388D20070C39A /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; 55 | 6003F599195388D20070C39A /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 56 | 6003F59B195388D20070C39A /* SwishControl-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "SwishControl-Prefix.pch"; sourceTree = ""; }; 57 | 6003F59C195388D20070C39A /* BSAppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = BSAppDelegate.h; sourceTree = ""; }; 58 | 6003F59D195388D20070C39A /* BSAppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = BSAppDelegate.m; sourceTree = ""; }; 59 | 6003F5A0195388D20070C39A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main_iPhone.storyboard; sourceTree = ""; }; 60 | 6003F5A3195388D20070C39A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main_iPad.storyboard; sourceTree = ""; }; 61 | 6003F5A5195388D20070C39A /* BSViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = BSViewController.h; sourceTree = ""; }; 62 | 6003F5A6195388D20070C39A /* BSViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = BSViewController.m; sourceTree = ""; }; 63 | 6003F5A8195388D20070C39A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; 64 | 6003F5AE195388D20070C39A /* Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Tests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 65 | 6003F5AF195388D20070C39A /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; 66 | 6003F5B7195388D20070C39A /* Tests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Tests-Info.plist"; sourceTree = ""; }; 67 | 6003F5B9195388D20070C39A /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; 68 | 606FC2411953D9B200FFA9A0 /* Tests-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Tests-Prefix.pch"; sourceTree = ""; }; 69 | 6EC7CFCF9F76BA6B18713588 /* libPods-SwishControl.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-SwishControl.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 70 | 8A06DA5D72487FFA7F1C882C /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = LICENSE; path = ../LICENSE; sourceTree = ""; }; 71 | 8C273B0FBCCC11E90F831FA7 /* Pods-SwishControl.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-SwishControl.release.xcconfig"; path = "Pods/Target Support Files/Pods-SwishControl/Pods-SwishControl.release.xcconfig"; sourceTree = ""; }; 72 | AFCDC760C7145BEE39620155 /* libPods-Tests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Tests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 73 | EEDDFC27FB04FE85019FB39E /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; name = README.md; path = ../README.md; sourceTree = ""; }; 74 | /* End PBXFileReference section */ 75 | 76 | /* Begin PBXFrameworksBuildPhase section */ 77 | 6003F587195388D20070C39A /* Frameworks */ = { 78 | isa = PBXFrameworksBuildPhase; 79 | buildActionMask = 2147483647; 80 | files = ( 81 | 6003F590195388D20070C39A /* CoreGraphics.framework in Frameworks */, 82 | 6003F592195388D20070C39A /* UIKit.framework in Frameworks */, 83 | 6003F58E195388D20070C39A /* Foundation.framework in Frameworks */, 84 | B03B99D4627A127BE13F659F /* libPods-SwishControl.a in Frameworks */, 85 | ); 86 | runOnlyForDeploymentPostprocessing = 0; 87 | }; 88 | 6003F5AB195388D20070C39A /* Frameworks */ = { 89 | isa = PBXFrameworksBuildPhase; 90 | buildActionMask = 2147483647; 91 | files = ( 92 | 6003F5B0195388D20070C39A /* XCTest.framework in Frameworks */, 93 | 6003F5B2195388D20070C39A /* UIKit.framework in Frameworks */, 94 | 6003F5B1195388D20070C39A /* Foundation.framework in Frameworks */, 95 | 1C566641CA8A12B5E18628C2 /* libPods-Tests.a in Frameworks */, 96 | ); 97 | runOnlyForDeploymentPostprocessing = 0; 98 | }; 99 | /* End PBXFrameworksBuildPhase section */ 100 | 101 | /* Begin PBXGroup section */ 102 | 6003F581195388D10070C39A = { 103 | isa = PBXGroup; 104 | children = ( 105 | 60FF7A9C1954A5C5007DD14C /* Podspec Metadata */, 106 | 6003F593195388D20070C39A /* SwishControl */, 107 | 6003F5B5195388D20070C39A /* Tests */, 108 | 6003F58C195388D20070C39A /* Frameworks */, 109 | 6003F58B195388D20070C39A /* Products */, 110 | 800BE5D07536FD4840CD6421 /* Pods */, 111 | ); 112 | sourceTree = ""; 113 | }; 114 | 6003F58B195388D20070C39A /* Products */ = { 115 | isa = PBXGroup; 116 | children = ( 117 | 6003F58A195388D20070C39A /* SwishControl.app */, 118 | 6003F5AE195388D20070C39A /* Tests.xctest */, 119 | ); 120 | name = Products; 121 | sourceTree = ""; 122 | }; 123 | 6003F58C195388D20070C39A /* Frameworks */ = { 124 | isa = PBXGroup; 125 | children = ( 126 | 6003F58D195388D20070C39A /* Foundation.framework */, 127 | 6003F58F195388D20070C39A /* CoreGraphics.framework */, 128 | 6003F591195388D20070C39A /* UIKit.framework */, 129 | 6003F5AF195388D20070C39A /* XCTest.framework */, 130 | 6EC7CFCF9F76BA6B18713588 /* libPods-SwishControl.a */, 131 | AFCDC760C7145BEE39620155 /* libPods-Tests.a */, 132 | ); 133 | name = Frameworks; 134 | sourceTree = ""; 135 | }; 136 | 6003F593195388D20070C39A /* SwishControl */ = { 137 | isa = PBXGroup; 138 | children = ( 139 | 6003F59C195388D20070C39A /* BSAppDelegate.h */, 140 | 6003F59D195388D20070C39A /* BSAppDelegate.m */, 141 | 6003F59F195388D20070C39A /* Main_iPhone.storyboard */, 142 | 6003F5A2195388D20070C39A /* Main_iPad.storyboard */, 143 | 6003F5A5195388D20070C39A /* BSViewController.h */, 144 | 6003F5A6195388D20070C39A /* BSViewController.m */, 145 | 6003F5A8195388D20070C39A /* Images.xcassets */, 146 | 6003F594195388D20070C39A /* Supporting Files */, 147 | ); 148 | path = SwishControl; 149 | sourceTree = ""; 150 | }; 151 | 6003F594195388D20070C39A /* Supporting Files */ = { 152 | isa = PBXGroup; 153 | children = ( 154 | 55B359A01ADFED0500477052 /* click.wav */, 155 | 55B359A21ADFED0E00477052 /* click2.wav */, 156 | 6003F595195388D20070C39A /* SwishControl-Info.plist */, 157 | 6003F596195388D20070C39A /* InfoPlist.strings */, 158 | 6003F599195388D20070C39A /* main.m */, 159 | 6003F59B195388D20070C39A /* SwishControl-Prefix.pch */, 160 | ); 161 | name = "Supporting Files"; 162 | sourceTree = ""; 163 | }; 164 | 6003F5B5195388D20070C39A /* Tests */ = { 165 | isa = PBXGroup; 166 | children = ( 167 | 6003F5B6195388D20070C39A /* Supporting Files */, 168 | 55B359A41ADFFEC300477052 /* BSSwishControlTests.m */, 169 | ); 170 | path = Tests; 171 | sourceTree = ""; 172 | }; 173 | 6003F5B6195388D20070C39A /* Supporting Files */ = { 174 | isa = PBXGroup; 175 | children = ( 176 | 6003F5B7195388D20070C39A /* Tests-Info.plist */, 177 | 6003F5B8195388D20070C39A /* InfoPlist.strings */, 178 | 606FC2411953D9B200FFA9A0 /* Tests-Prefix.pch */, 179 | ); 180 | name = "Supporting Files"; 181 | sourceTree = ""; 182 | }; 183 | 60FF7A9C1954A5C5007DD14C /* Podspec Metadata */ = { 184 | isa = PBXGroup; 185 | children = ( 186 | 1160F0FFF6509F9970F56766 /* SwishControl.podspec */, 187 | EEDDFC27FB04FE85019FB39E /* README.md */, 188 | 8A06DA5D72487FFA7F1C882C /* LICENSE */, 189 | ); 190 | name = "Podspec Metadata"; 191 | sourceTree = ""; 192 | }; 193 | 800BE5D07536FD4840CD6421 /* Pods */ = { 194 | isa = PBXGroup; 195 | children = ( 196 | 50327371F7E7B9EE9E2E1480 /* Pods-SwishControl.debug.xcconfig */, 197 | 8C273B0FBCCC11E90F831FA7 /* Pods-SwishControl.release.xcconfig */, 198 | 57E739D712702D4F8F5BFF4E /* Pods-Tests.debug.xcconfig */, 199 | 535B654BAF4B4D95FA3A55C7 /* Pods-Tests.release.xcconfig */, 200 | ); 201 | name = Pods; 202 | sourceTree = ""; 203 | }; 204 | /* End PBXGroup section */ 205 | 206 | /* Begin PBXNativeTarget section */ 207 | 6003F589195388D20070C39A /* SwishControl */ = { 208 | isa = PBXNativeTarget; 209 | buildConfigurationList = 6003F5BF195388D20070C39A /* Build configuration list for PBXNativeTarget "SwishControl" */; 210 | buildPhases = ( 211 | 72630846CBDF27E9066218BD /* Check Pods Manifest.lock */, 212 | 6003F586195388D20070C39A /* Sources */, 213 | 6003F587195388D20070C39A /* Frameworks */, 214 | 6003F588195388D20070C39A /* Resources */, 215 | 0AFFE72EF9111D70DDA9436F /* Copy Pods Resources */, 216 | ); 217 | buildRules = ( 218 | ); 219 | dependencies = ( 220 | ); 221 | name = SwishControl; 222 | productName = SwishControl; 223 | productReference = 6003F58A195388D20070C39A /* SwishControl.app */; 224 | productType = "com.apple.product-type.application"; 225 | }; 226 | 6003F5AD195388D20070C39A /* Tests */ = { 227 | isa = PBXNativeTarget; 228 | buildConfigurationList = 6003F5C2195388D20070C39A /* Build configuration list for PBXNativeTarget "Tests" */; 229 | buildPhases = ( 230 | E26A1CFC931C27C8EA4A5308 /* Check Pods Manifest.lock */, 231 | 6003F5AA195388D20070C39A /* Sources */, 232 | 6003F5AB195388D20070C39A /* Frameworks */, 233 | 6003F5AC195388D20070C39A /* Resources */, 234 | 563A7E15E3ABE3979EB851C5 /* Copy Pods Resources */, 235 | ); 236 | buildRules = ( 237 | ); 238 | dependencies = ( 239 | 6003F5B4195388D20070C39A /* PBXTargetDependency */, 240 | ); 241 | name = Tests; 242 | productName = SwishControlTests; 243 | productReference = 6003F5AE195388D20070C39A /* Tests.xctest */; 244 | productType = "com.apple.product-type.bundle.unit-test"; 245 | }; 246 | /* End PBXNativeTarget section */ 247 | 248 | /* Begin PBXProject section */ 249 | 6003F582195388D10070C39A /* Project object */ = { 250 | isa = PBXProject; 251 | attributes = { 252 | CLASSPREFIX = BS; 253 | LastUpgradeCheck = 0510; 254 | ORGANIZATIONNAME = "Joakim Gyllstrom"; 255 | TargetAttributes = { 256 | 6003F5AD195388D20070C39A = { 257 | TestTargetID = 6003F589195388D20070C39A; 258 | }; 259 | }; 260 | }; 261 | buildConfigurationList = 6003F585195388D10070C39A /* Build configuration list for PBXProject "SwishControl" */; 262 | compatibilityVersion = "Xcode 3.2"; 263 | developmentRegion = English; 264 | hasScannedForEncodings = 0; 265 | knownRegions = ( 266 | en, 267 | Base, 268 | ); 269 | mainGroup = 6003F581195388D10070C39A; 270 | productRefGroup = 6003F58B195388D20070C39A /* Products */; 271 | projectDirPath = ""; 272 | projectRoot = ""; 273 | targets = ( 274 | 6003F589195388D20070C39A /* SwishControl */, 275 | 6003F5AD195388D20070C39A /* Tests */, 276 | ); 277 | }; 278 | /* End PBXProject section */ 279 | 280 | /* Begin PBXResourcesBuildPhase section */ 281 | 6003F588195388D20070C39A /* Resources */ = { 282 | isa = PBXResourcesBuildPhase; 283 | buildActionMask = 2147483647; 284 | files = ( 285 | 6003F5A4195388D20070C39A /* Main_iPad.storyboard in Resources */, 286 | 6003F5A9195388D20070C39A /* Images.xcassets in Resources */, 287 | 55B359A11ADFED0500477052 /* click.wav in Resources */, 288 | 55B359A31ADFED0E00477052 /* click2.wav in Resources */, 289 | 6003F5A1195388D20070C39A /* Main_iPhone.storyboard in Resources */, 290 | 6003F598195388D20070C39A /* InfoPlist.strings in Resources */, 291 | ); 292 | runOnlyForDeploymentPostprocessing = 0; 293 | }; 294 | 6003F5AC195388D20070C39A /* Resources */ = { 295 | isa = PBXResourcesBuildPhase; 296 | buildActionMask = 2147483647; 297 | files = ( 298 | 6003F5BA195388D20070C39A /* InfoPlist.strings in Resources */, 299 | ); 300 | runOnlyForDeploymentPostprocessing = 0; 301 | }; 302 | /* End PBXResourcesBuildPhase section */ 303 | 304 | /* Begin PBXShellScriptBuildPhase section */ 305 | 0AFFE72EF9111D70DDA9436F /* Copy Pods Resources */ = { 306 | isa = PBXShellScriptBuildPhase; 307 | buildActionMask = 2147483647; 308 | files = ( 309 | ); 310 | inputPaths = ( 311 | ); 312 | name = "Copy Pods Resources"; 313 | outputPaths = ( 314 | ); 315 | runOnlyForDeploymentPostprocessing = 0; 316 | shellPath = /bin/sh; 317 | shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-SwishControl/Pods-SwishControl-resources.sh\"\n"; 318 | showEnvVarsInLog = 0; 319 | }; 320 | 563A7E15E3ABE3979EB851C5 /* Copy Pods Resources */ = { 321 | isa = PBXShellScriptBuildPhase; 322 | buildActionMask = 2147483647; 323 | files = ( 324 | ); 325 | inputPaths = ( 326 | ); 327 | name = "Copy Pods Resources"; 328 | outputPaths = ( 329 | ); 330 | runOnlyForDeploymentPostprocessing = 0; 331 | shellPath = /bin/sh; 332 | shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-Tests/Pods-Tests-resources.sh\"\n"; 333 | showEnvVarsInLog = 0; 334 | }; 335 | 72630846CBDF27E9066218BD /* Check Pods Manifest.lock */ = { 336 | isa = PBXShellScriptBuildPhase; 337 | buildActionMask = 2147483647; 338 | files = ( 339 | ); 340 | inputPaths = ( 341 | ); 342 | name = "Check Pods Manifest.lock"; 343 | outputPaths = ( 344 | ); 345 | runOnlyForDeploymentPostprocessing = 0; 346 | shellPath = /bin/sh; 347 | shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n"; 348 | showEnvVarsInLog = 0; 349 | }; 350 | E26A1CFC931C27C8EA4A5308 /* Check Pods Manifest.lock */ = { 351 | isa = PBXShellScriptBuildPhase; 352 | buildActionMask = 2147483647; 353 | files = ( 354 | ); 355 | inputPaths = ( 356 | ); 357 | name = "Check Pods Manifest.lock"; 358 | outputPaths = ( 359 | ); 360 | runOnlyForDeploymentPostprocessing = 0; 361 | shellPath = /bin/sh; 362 | shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n"; 363 | showEnvVarsInLog = 0; 364 | }; 365 | /* End PBXShellScriptBuildPhase section */ 366 | 367 | /* Begin PBXSourcesBuildPhase section */ 368 | 6003F586195388D20070C39A /* Sources */ = { 369 | isa = PBXSourcesBuildPhase; 370 | buildActionMask = 2147483647; 371 | files = ( 372 | 6003F59E195388D20070C39A /* BSAppDelegate.m in Sources */, 373 | 6003F5A7195388D20070C39A /* BSViewController.m in Sources */, 374 | 6003F59A195388D20070C39A /* main.m in Sources */, 375 | ); 376 | runOnlyForDeploymentPostprocessing = 0; 377 | }; 378 | 6003F5AA195388D20070C39A /* Sources */ = { 379 | isa = PBXSourcesBuildPhase; 380 | buildActionMask = 2147483647; 381 | files = ( 382 | 55B359A51ADFFEC300477052 /* BSSwishControlTests.m in Sources */, 383 | ); 384 | runOnlyForDeploymentPostprocessing = 0; 385 | }; 386 | /* End PBXSourcesBuildPhase section */ 387 | 388 | /* Begin PBXTargetDependency section */ 389 | 6003F5B4195388D20070C39A /* PBXTargetDependency */ = { 390 | isa = PBXTargetDependency; 391 | target = 6003F589195388D20070C39A /* SwishControl */; 392 | targetProxy = 6003F5B3195388D20070C39A /* PBXContainerItemProxy */; 393 | }; 394 | /* End PBXTargetDependency section */ 395 | 396 | /* Begin PBXVariantGroup section */ 397 | 6003F596195388D20070C39A /* InfoPlist.strings */ = { 398 | isa = PBXVariantGroup; 399 | children = ( 400 | 6003F597195388D20070C39A /* en */, 401 | ); 402 | name = InfoPlist.strings; 403 | sourceTree = ""; 404 | }; 405 | 6003F59F195388D20070C39A /* Main_iPhone.storyboard */ = { 406 | isa = PBXVariantGroup; 407 | children = ( 408 | 6003F5A0195388D20070C39A /* Base */, 409 | ); 410 | name = Main_iPhone.storyboard; 411 | sourceTree = ""; 412 | }; 413 | 6003F5A2195388D20070C39A /* Main_iPad.storyboard */ = { 414 | isa = PBXVariantGroup; 415 | children = ( 416 | 6003F5A3195388D20070C39A /* Base */, 417 | ); 418 | name = Main_iPad.storyboard; 419 | sourceTree = ""; 420 | }; 421 | 6003F5B8195388D20070C39A /* InfoPlist.strings */ = { 422 | isa = PBXVariantGroup; 423 | children = ( 424 | 6003F5B9195388D20070C39A /* en */, 425 | ); 426 | name = InfoPlist.strings; 427 | sourceTree = ""; 428 | }; 429 | /* End PBXVariantGroup section */ 430 | 431 | /* Begin XCBuildConfiguration section */ 432 | 6003F5BD195388D20070C39A /* Debug */ = { 433 | isa = XCBuildConfiguration; 434 | buildSettings = { 435 | ALWAYS_SEARCH_USER_PATHS = NO; 436 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 437 | CLANG_CXX_LIBRARY = "libc++"; 438 | CLANG_ENABLE_MODULES = YES; 439 | CLANG_ENABLE_OBJC_ARC = YES; 440 | CLANG_WARN_BOOL_CONVERSION = YES; 441 | CLANG_WARN_CONSTANT_CONVERSION = YES; 442 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 443 | CLANG_WARN_EMPTY_BODY = YES; 444 | CLANG_WARN_ENUM_CONVERSION = YES; 445 | CLANG_WARN_INT_CONVERSION = YES; 446 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 447 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 448 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 449 | COPY_PHASE_STRIP = NO; 450 | GCC_C_LANGUAGE_STANDARD = gnu99; 451 | GCC_DYNAMIC_NO_PIC = NO; 452 | GCC_OPTIMIZATION_LEVEL = 0; 453 | GCC_PREPROCESSOR_DEFINITIONS = ( 454 | "DEBUG=1", 455 | "$(inherited)", 456 | ); 457 | GCC_SYMBOLS_PRIVATE_EXTERN = NO; 458 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 459 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 460 | GCC_WARN_UNDECLARED_SELECTOR = YES; 461 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 462 | GCC_WARN_UNUSED_FUNCTION = YES; 463 | GCC_WARN_UNUSED_VARIABLE = YES; 464 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 465 | ONLY_ACTIVE_ARCH = YES; 466 | SDKROOT = iphoneos; 467 | TARGETED_DEVICE_FAMILY = "1,2"; 468 | }; 469 | name = Debug; 470 | }; 471 | 6003F5BE195388D20070C39A /* Release */ = { 472 | isa = XCBuildConfiguration; 473 | buildSettings = { 474 | ALWAYS_SEARCH_USER_PATHS = NO; 475 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 476 | CLANG_CXX_LIBRARY = "libc++"; 477 | CLANG_ENABLE_MODULES = YES; 478 | CLANG_ENABLE_OBJC_ARC = YES; 479 | CLANG_WARN_BOOL_CONVERSION = YES; 480 | CLANG_WARN_CONSTANT_CONVERSION = YES; 481 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 482 | CLANG_WARN_EMPTY_BODY = YES; 483 | CLANG_WARN_ENUM_CONVERSION = YES; 484 | CLANG_WARN_INT_CONVERSION = YES; 485 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 486 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 487 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 488 | COPY_PHASE_STRIP = YES; 489 | ENABLE_NS_ASSERTIONS = NO; 490 | GCC_C_LANGUAGE_STANDARD = gnu99; 491 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 492 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 493 | GCC_WARN_UNDECLARED_SELECTOR = YES; 494 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 495 | GCC_WARN_UNUSED_FUNCTION = YES; 496 | GCC_WARN_UNUSED_VARIABLE = YES; 497 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 498 | SDKROOT = iphoneos; 499 | TARGETED_DEVICE_FAMILY = "1,2"; 500 | VALIDATE_PRODUCT = YES; 501 | }; 502 | name = Release; 503 | }; 504 | 6003F5C0195388D20070C39A /* Debug */ = { 505 | isa = XCBuildConfiguration; 506 | baseConfigurationReference = 50327371F7E7B9EE9E2E1480 /* Pods-SwishControl.debug.xcconfig */; 507 | buildSettings = { 508 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 509 | ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; 510 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 511 | GCC_PREFIX_HEADER = "SwishControl/SwishControl-Prefix.pch"; 512 | INFOPLIST_FILE = "SwishControl/SwishControl-Info.plist"; 513 | PRODUCT_NAME = "$(TARGET_NAME)"; 514 | WRAPPER_EXTENSION = app; 515 | }; 516 | name = Debug; 517 | }; 518 | 6003F5C1195388D20070C39A /* Release */ = { 519 | isa = XCBuildConfiguration; 520 | baseConfigurationReference = 8C273B0FBCCC11E90F831FA7 /* Pods-SwishControl.release.xcconfig */; 521 | buildSettings = { 522 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 523 | ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; 524 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 525 | GCC_PREFIX_HEADER = "SwishControl/SwishControl-Prefix.pch"; 526 | INFOPLIST_FILE = "SwishControl/SwishControl-Info.plist"; 527 | PRODUCT_NAME = "$(TARGET_NAME)"; 528 | WRAPPER_EXTENSION = app; 529 | }; 530 | name = Release; 531 | }; 532 | 6003F5C3195388D20070C39A /* Debug */ = { 533 | isa = XCBuildConfiguration; 534 | baseConfigurationReference = 57E739D712702D4F8F5BFF4E /* Pods-Tests.debug.xcconfig */; 535 | buildSettings = { 536 | BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/SwishControl.app/SwishControl"; 537 | FRAMEWORK_SEARCH_PATHS = ( 538 | "$(SDKROOT)/Developer/Library/Frameworks", 539 | "$(inherited)", 540 | "$(DEVELOPER_FRAMEWORKS_DIR)", 541 | ); 542 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 543 | GCC_PREFIX_HEADER = "Tests/Tests-Prefix.pch"; 544 | GCC_PREPROCESSOR_DEFINITIONS = ( 545 | "DEBUG=1", 546 | "$(inherited)", 547 | ); 548 | INFOPLIST_FILE = "Tests/Tests-Info.plist"; 549 | PRODUCT_NAME = "$(TARGET_NAME)"; 550 | TEST_HOST = "$(BUNDLE_LOADER)"; 551 | WRAPPER_EXTENSION = xctest; 552 | }; 553 | name = Debug; 554 | }; 555 | 6003F5C4195388D20070C39A /* Release */ = { 556 | isa = XCBuildConfiguration; 557 | baseConfigurationReference = 535B654BAF4B4D95FA3A55C7 /* Pods-Tests.release.xcconfig */; 558 | buildSettings = { 559 | BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/SwishControl.app/SwishControl"; 560 | FRAMEWORK_SEARCH_PATHS = ( 561 | "$(SDKROOT)/Developer/Library/Frameworks", 562 | "$(inherited)", 563 | "$(DEVELOPER_FRAMEWORKS_DIR)", 564 | ); 565 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 566 | GCC_PREFIX_HEADER = "Tests/Tests-Prefix.pch"; 567 | INFOPLIST_FILE = "Tests/Tests-Info.plist"; 568 | PRODUCT_NAME = "$(TARGET_NAME)"; 569 | TEST_HOST = "$(BUNDLE_LOADER)"; 570 | WRAPPER_EXTENSION = xctest; 571 | }; 572 | name = Release; 573 | }; 574 | /* End XCBuildConfiguration section */ 575 | 576 | /* Begin XCConfigurationList section */ 577 | 6003F585195388D10070C39A /* Build configuration list for PBXProject "SwishControl" */ = { 578 | isa = XCConfigurationList; 579 | buildConfigurations = ( 580 | 6003F5BD195388D20070C39A /* Debug */, 581 | 6003F5BE195388D20070C39A /* Release */, 582 | ); 583 | defaultConfigurationIsVisible = 0; 584 | defaultConfigurationName = Release; 585 | }; 586 | 6003F5BF195388D20070C39A /* Build configuration list for PBXNativeTarget "SwishControl" */ = { 587 | isa = XCConfigurationList; 588 | buildConfigurations = ( 589 | 6003F5C0195388D20070C39A /* Debug */, 590 | 6003F5C1195388D20070C39A /* Release */, 591 | ); 592 | defaultConfigurationIsVisible = 0; 593 | defaultConfigurationName = Release; 594 | }; 595 | 6003F5C2195388D20070C39A /* Build configuration list for PBXNativeTarget "Tests" */ = { 596 | isa = XCConfigurationList; 597 | buildConfigurations = ( 598 | 6003F5C3195388D20070C39A /* Debug */, 599 | 6003F5C4195388D20070C39A /* Release */, 600 | ); 601 | defaultConfigurationIsVisible = 0; 602 | defaultConfigurationName = Release; 603 | }; 604 | /* End XCConfigurationList section */ 605 | }; 606 | rootObject = 6003F582195388D10070C39A /* Project object */; 607 | } 608 | -------------------------------------------------------------------------------- /Example/SwishControl.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Example/SwishControl.xcodeproj/xcshareddata/xcschemes/SwishControl-Example.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 33 | 39 | 40 | 41 | 42 | 43 | 49 | 50 | 51 | 52 | 61 | 62 | 68 | 69 | 70 | 71 | 72 | 73 | 79 | 80 | 86 | 87 | 88 | 89 | 91 | 92 | 95 | 96 | 97 | -------------------------------------------------------------------------------- /Example/SwishControl.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Example/SwishControl/BSAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // BSAppDelegate.h 3 | // SwishControl 4 | // 5 | // Created by CocoaPods on 04/14/2015. 6 | // Copyright (c) 2014 Joakim Gyllstrom. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface BSAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Example/SwishControl/BSAppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // BSAppDelegate.m 3 | // SwishControl 4 | // 5 | // Created by CocoaPods on 04/14/2015. 6 | // Copyright (c) 2014 Joakim Gyllstrom. All rights reserved. 7 | // 8 | 9 | #import "BSAppDelegate.h" 10 | #import 11 | 12 | @implementation BSAppDelegate 13 | 14 | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 15 | { 16 | NSString *clickPath = [[NSBundle mainBundle] pathForResource:@"click" ofType:@"wav"]; 17 | [[UIControl appearance] bs_setAudioWithPath:clickPath forEvent:UIControlEventTouchUpInside]; 18 | 19 | return YES; 20 | } 21 | 22 | @end 23 | -------------------------------------------------------------------------------- /Example/SwishControl/BSViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // BSViewController.h 3 | // SwishControl 4 | // 5 | // Created by Joakim Gyllstrom on 04/14/2015. 6 | // Copyright (c) 2014 Joakim Gyllstrom. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface BSViewController : UIViewController 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Example/SwishControl/BSViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // BSViewController.m 3 | // SwishControl 4 | // 5 | // Created by Joakim Gyllstrom on 04/14/2015. 6 | // Copyright (c) 2014 Joakim Gyllstrom. All rights reserved. 7 | // 8 | 9 | #import "BSViewController.h" 10 | #import 11 | 12 | @interface BSViewController () 13 | 14 | @property (weak, nonatomic) IBOutlet UIButton *firstButton; 15 | @property (weak, nonatomic) IBOutlet UIButton *secondButton; 16 | 17 | @end 18 | 19 | @implementation BSViewController 20 | 21 | - (void)viewDidLoad 22 | { 23 | [super viewDidLoad]; 24 | 25 | self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemAdd target:self action:@selector(myAction)]; 26 | 27 | NSString *clickPath = [[NSBundle mainBundle] pathForResource:@"click2" ofType:@"wav"]; 28 | [self.secondButton bs_setAudioWithPath:clickPath forEvent:UIControlEventTouchUpInside]; 29 | } 30 | 31 | - (void)myAction { 32 | NSLog(@"Hello, is it me you're looking for?"); 33 | } 34 | 35 | @end 36 | -------------------------------------------------------------------------------- /Example/SwishControl/Base.lproj/Main_iPad.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /Example/SwishControl/Base.lproj/Main_iPhone.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 26 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | -------------------------------------------------------------------------------- /Example/SwishControl/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "40x40", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "60x60", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "ipad", 20 | "size" : "29x29", 21 | "scale" : "1x" 22 | }, 23 | { 24 | "idiom" : "ipad", 25 | "size" : "29x29", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "ipad", 30 | "size" : "40x40", 31 | "scale" : "1x" 32 | }, 33 | { 34 | "idiom" : "ipad", 35 | "size" : "40x40", 36 | "scale" : "2x" 37 | }, 38 | { 39 | "idiom" : "ipad", 40 | "size" : "76x76", 41 | "scale" : "1x" 42 | }, 43 | { 44 | "idiom" : "ipad", 45 | "size" : "76x76", 46 | "scale" : "2x" 47 | } 48 | ], 49 | "info" : { 50 | "version" : 1, 51 | "author" : "xcode" 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /Example/SwishControl/Images.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "portrait", 5 | "idiom" : "iphone", 6 | "extent" : "full-screen", 7 | "minimum-system-version" : "7.0", 8 | "scale" : "2x" 9 | }, 10 | { 11 | "orientation" : "portrait", 12 | "idiom" : "iphone", 13 | "subtype" : "retina4", 14 | "extent" : "full-screen", 15 | "minimum-system-version" : "7.0", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "orientation" : "portrait", 20 | "idiom" : "ipad", 21 | "extent" : "full-screen", 22 | "minimum-system-version" : "7.0", 23 | "scale" : "1x" 24 | }, 25 | { 26 | "orientation" : "landscape", 27 | "idiom" : "ipad", 28 | "extent" : "full-screen", 29 | "minimum-system-version" : "7.0", 30 | "scale" : "1x" 31 | }, 32 | { 33 | "orientation" : "portrait", 34 | "idiom" : "ipad", 35 | "extent" : "full-screen", 36 | "minimum-system-version" : "7.0", 37 | "scale" : "2x" 38 | }, 39 | { 40 | "orientation" : "landscape", 41 | "idiom" : "ipad", 42 | "extent" : "full-screen", 43 | "minimum-system-version" : "7.0", 44 | "scale" : "2x" 45 | } 46 | ], 47 | "info" : { 48 | "version" : 1, 49 | "author" : "xcode" 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /Example/SwishControl/SwishControl-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | org.cocoapods.demo.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIMainStoryboardFile 28 | Main_iPhone 29 | UIMainStoryboardFile~ipad 30 | Main_iPad 31 | UIRequiredDeviceCapabilities 32 | 33 | armv7 34 | 35 | UISupportedInterfaceOrientations 36 | 37 | UIInterfaceOrientationPortrait 38 | UIInterfaceOrientationLandscapeLeft 39 | UIInterfaceOrientationLandscapeRight 40 | 41 | UISupportedInterfaceOrientations~ipad 42 | 43 | UIInterfaceOrientationPortrait 44 | UIInterfaceOrientationPortraitUpsideDown 45 | UIInterfaceOrientationLandscapeLeft 46 | UIInterfaceOrientationLandscapeRight 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /Example/SwishControl/SwishControl-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #import 8 | 9 | #ifndef __IPHONE_5_0 10 | #warning "This project uses features only available in iOS SDK 5.0 and later." 11 | #endif 12 | 13 | #ifdef __OBJC__ 14 | #import 15 | #import 16 | #endif 17 | -------------------------------------------------------------------------------- /Example/SwishControl/click.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaoj/SwishControl/5f5423fbfab1369178b868202443082e878d7023/Example/SwishControl/click.wav -------------------------------------------------------------------------------- /Example/SwishControl/click2.wav: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaoj/SwishControl/5f5423fbfab1369178b868202443082e878d7023/Example/SwishControl/click2.wav -------------------------------------------------------------------------------- /Example/SwishControl/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Example/SwishControl/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // SwishControl 4 | // 5 | // Created by Joakim Gyllstrom on 04/14/2015. 6 | // Copyright (c) 2014 Joakim Gyllstrom. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "BSAppDelegate.h" 12 | 13 | int main(int argc, char * argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([BSAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Example/Tests/BSSwishControlTests.m: -------------------------------------------------------------------------------- 1 | // 2 | // BSSwishControlTests.m 3 | // SwishControl 4 | // 5 | // Created by Joakim Gyllström on 2015-04-16. 6 | // Copyright (c) 2015 Joakim Gyllstrom. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface BSSwishControlTests : XCTestCase 13 | 14 | @property (nonatomic, strong) NSString *soundPath; 15 | 16 | @end 17 | 18 | @implementation BSSwishControlTests 19 | 20 | - (void)setUp { 21 | [super setUp]; 22 | 23 | self.soundPath = [[NSBundle mainBundle] pathForResource:@"click" ofType:@"wav"]; 24 | } 25 | 26 | - (void)testAddSoundToUIControl { 27 | UIControl *control = [[UIControl alloc] init]; 28 | [control addTarget:self action:NSSelectorFromString(@"wuhu") forControlEvents:UIControlEventTouchUpInside]; 29 | [control bs_setAudioWithPath:self.soundPath forEvent:UIControlEventTouchUpInside]; 30 | 31 | XCTAssert(control.allTargets.count == 2); 32 | } 33 | 34 | - (void)testRemoveSoundToUIControl { 35 | UIControl *control = [[UIControl alloc] init]; 36 | [control addTarget:self action:NSSelectorFromString(@"wuhu") forControlEvents:UIControlEventTouchUpInside]; 37 | [control bs_setAudioWithPath:self.soundPath forEvent:UIControlEventTouchUpInside]; 38 | [control bs_removeAudioForEvent:UIControlEventTouchUpInside]; 39 | 40 | XCTAssert(control.allTargets.count == 1); 41 | } 42 | 43 | - (void)testSoundTarget { 44 | UIControl *control = [[UIControl alloc] init]; 45 | [control addTarget:self action:NSSelectorFromString(@"wuhu") forControlEvents:UIControlEventTouchUpInside]; 46 | [control bs_setAudioWithPath:self.soundPath forEvent:UIControlEventTouchUpInside]; 47 | 48 | id firstTarget = control.allTargets.allObjects.firstObject; 49 | id secondTarget = control.allTargets.allObjects.lastObject; 50 | 51 | XCTAssert(firstTarget == self || firstTarget == control); 52 | XCTAssert((secondTarget == control || secondTarget == self) && secondTarget != firstTarget); 53 | } 54 | 55 | - (void)testSoundTargetAction { 56 | UIControl *control = [[UIControl alloc] init]; 57 | [control addTarget:self action:NSSelectorFromString(@"wuhu") forControlEvents:UIControlEventTouchUpInside]; 58 | [control bs_setAudioWithPath:self.soundPath forEvent:UIControlEventTouchUpInside]; 59 | 60 | id firstTarget = control.allTargets.allObjects.firstObject; 61 | id secondTarget = control.allTargets.allObjects.lastObject; 62 | 63 | id selfTarget = nil; 64 | id controlTarget = nil; 65 | 66 | if(firstTarget == self) { 67 | selfTarget = firstTarget; 68 | controlTarget = secondTarget; 69 | } else { 70 | selfTarget = secondTarget; 71 | controlTarget = firstTarget; 72 | } 73 | 74 | NSString *selfTargetAction = [control actionsForTarget:selfTarget forControlEvent:UIControlEventTouchUpInside].firstObject; 75 | NSString *controlTargetAction = [control actionsForTarget:controlTarget forControlEvent:UIControlEventTouchUpInside].firstObject; 76 | 77 | XCTAssert([selfTargetAction isEqualToString:@"wuhu"]); 78 | XCTAssert([controlTargetAction isEqualToString:@"bs_playAudio64"]); 79 | } 80 | 81 | @end 82 | -------------------------------------------------------------------------------- /Example/Tests/Tests-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | org.cocoapods.demo.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleShortVersionString 16 | 1.0 17 | CFBundleSignature 18 | ???? 19 | CFBundleVersion 20 | 1 21 | 22 | 23 | -------------------------------------------------------------------------------- /Example/Tests/Tests-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every test case source file. 5 | // 6 | 7 | #ifdef __OBJC__ 8 | 9 | 10 | 11 | #endif 12 | -------------------------------------------------------------------------------- /Example/Tests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 Joakim Gyllström 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /Pod/Assets/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaoj/SwishControl/5f5423fbfab1369178b868202443082e878d7023/Pod/Assets/.gitkeep -------------------------------------------------------------------------------- /Pod/Classes/.gitkeep: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/mikaoj/SwishControl/5f5423fbfab1369178b868202443082e878d7023/Pod/Classes/.gitkeep -------------------------------------------------------------------------------- /Pod/Classes/BSSoundContainer.h: -------------------------------------------------------------------------------- 1 | // The MIT License (MIT) 2 | // 3 | // Copyright (c) 2015 Joakim Gyllström 4 | // 5 | // Permission is hereby granted, free of charge, to any person obtaining a copy 6 | // of this software and associated documentation files (the "Software"), to deal 7 | // in the Software without restriction, including without limitation the rights 8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | // copies of the Software, and to permit persons to whom the Software is 10 | // furnished to do so, subject to the following conditions: 11 | // 12 | // The above copyright notice and this permission notice shall be included in all 13 | // copies or substantial portions of the Software. 14 | // 15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | // SOFTWARE. 22 | 23 | #import 24 | 25 | @interface BSSoundContainer : NSObject 26 | 27 | - (instancetype)initWithAudioPath:(NSString *)aPath; 28 | - (void)play; 29 | 30 | @end 31 | -------------------------------------------------------------------------------- /Pod/Classes/BSSoundContainer.m: -------------------------------------------------------------------------------- 1 | // The MIT License (MIT) 2 | // 3 | // Copyright (c) 2015 Joakim Gyllström 4 | // 5 | // Permission is hereby granted, free of charge, to any person obtaining a copy 6 | // of this software and associated documentation files (the "Software"), to deal 7 | // in the Software without restriction, including without limitation the rights 8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | // copies of the Software, and to permit persons to whom the Software is 10 | // furnished to do so, subject to the following conditions: 11 | // 12 | // The above copyright notice and this permission notice shall be included in all 13 | // copies or substantial portions of the Software. 14 | // 15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | // SOFTWARE. 22 | 23 | #import "BSSoundContainer.h" 24 | #import 25 | 26 | @interface BSSoundContainer () 27 | 28 | @property (nonatomic, assign, readonly) SystemSoundID sound; 29 | 30 | @end 31 | 32 | @implementation BSSoundContainer 33 | 34 | - (instancetype)initWithAudioPath:(NSString *)aPath { 35 | NSURL *audioURL = [NSURL fileURLWithPath:aPath]; 36 | AudioServicesCreateSystemSoundID((__bridge CFURLRef)audioURL, &_sound); 37 | 38 | if(!audioURL || !_sound) { 39 | return nil; 40 | } 41 | 42 | return [super init]; 43 | } 44 | 45 | - (void)play { 46 | AudioServicesPlaySystemSound(_sound); 47 | } 48 | 49 | - (void)dealloc { 50 | AudioServicesDisposeSystemSoundID(_sound); 51 | } 52 | 53 | @end 54 | -------------------------------------------------------------------------------- /Pod/Classes/SwishControl.h: -------------------------------------------------------------------------------- 1 | #ifndef _SWISHCONTROL_ 2 | #define _SWISHCONTROL_ 3 | 4 | #import "UIControl+SwishControl.h" 5 | #endif 6 | -------------------------------------------------------------------------------- /Pod/Classes/UIControl+SwishControl.h: -------------------------------------------------------------------------------- 1 | // The MIT License (MIT) 2 | // 3 | // Copyright (c) 2015 Joakim Gyllström 4 | // 5 | // Permission is hereby granted, free of charge, to any person obtaining a copy 6 | // of this software and associated documentation files (the "Software"), to deal 7 | // in the Software without restriction, including without limitation the rights 8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | // copies of the Software, and to permit persons to whom the Software is 10 | // furnished to do so, subject to the following conditions: 11 | // 12 | // The above copyright notice and this permission notice shall be included in all 13 | // copies or substantial portions of the Software. 14 | // 15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | // SOFTWARE. 22 | 23 | #import 24 | 25 | @interface UIControl (SwishControl) 26 | 27 | /** 28 | Adds a sound for a given event. There can only be 1 sound a event. 29 | @param aPath Path to a sound (aif, caf, wav) 30 | @param event Which event to trigger the sound for 31 | */ 32 | - (void)bs_setAudioWithPath:(NSString *)aPath forEvent:(UIControlEvents)event UI_APPEARANCE_SELECTOR; 33 | 34 | /** 35 | Removes sound for a given event. 36 | @param event Which event to remove sound for 37 | */ 38 | - (void)bs_removeAudioForEvent:(UIControlEvents)event UI_APPEARANCE_SELECTOR; 39 | 40 | @end -------------------------------------------------------------------------------- /Pod/Classes/UIControl+SwishControl.m: -------------------------------------------------------------------------------- 1 | // The MIT License (MIT) 2 | // 3 | // Copyright (c) 2015 Joakim Gyllström 4 | // 5 | // Permission is hereby granted, free of charge, to any person obtaining a copy 6 | // of this software and associated documentation files (the "Software"), to deal 7 | // in the Software without restriction, including without limitation the rights 8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | // copies of the Software, and to permit persons to whom the Software is 10 | // furnished to do so, subject to the following conditions: 11 | // 12 | // The above copyright notice and this permission notice shall be included in all 13 | // copies or substantial portions of the Software. 14 | // 15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | // SOFTWARE. 22 | 23 | #import "UIControl+SwishControl.h" 24 | #import 25 | #import "BSSoundContainer.h" 26 | 27 | static NSString * const kSwishControlSelectorPrefix = @"bs_playAudio"; 28 | 29 | @interface UIControl (SwishControlPrivate) 30 | 31 | // Key is a selector (as a string) and value is a BSSoundContainer 32 | @property (nonatomic, strong) NSDictionary *bs_audioEvents; 33 | 34 | /** 35 | Appends event to selector prefix and returns that as an selector 36 | @param event The event to create selector for 37 | */ 38 | - (SEL)bs_selectorForEvent:(UIControlEvents)event; 39 | 40 | /** 41 | Method that plays the actual sound 42 | */ 43 | - (void)bs_playAudio; 44 | 45 | /** 46 | Adds a selector with implementation from an existing selector 47 | @param newSelector The selector to create/add 48 | @param baseSelector The selector whose implementation we should use 49 | */ 50 | + (BOOL)bs_addSelector:(SEL)newSelector withImplementationFromSelector:(SEL)baseSelector; 51 | 52 | @end 53 | 54 | @implementation UIControl (SwishControl) 55 | 56 | - (void)bs_setAudioWithPath:(NSString *)aPath forEvent:(UIControlEvents)event { 57 | // Get key (selector) and value (Sound) 58 | SEL selector = [self bs_selectorForEvent:event]; 59 | NSString *key = NSStringFromSelector(selector); 60 | BSSoundContainer *value = [[BSSoundContainer alloc] initWithAudioPath:aPath]; 61 | 62 | if(key && value) { 63 | // Add selector and sound to dictionary 64 | NSMutableDictionary *mutableDictionary = [self.bs_audioEvents mutableCopy]; 65 | [mutableDictionary setObject:value forKey:key]; 66 | self.bs_audioEvents = [mutableDictionary copy]; 67 | 68 | // Add selector and target for event 69 | [self addTarget:self action:selector forControlEvents:event]; 70 | 71 | // Add selector to runtime 72 | [[self class] bs_addSelector:selector withImplementationFromSelector:@selector(bs_playAudio)]; 73 | } 74 | } 75 | - (void)bs_removeAudioForEvent:(UIControlEvents)event { 76 | SEL selector = [self bs_selectorForEvent:event]; 77 | NSString *key = NSStringFromSelector(selector); 78 | if(key && [self.bs_audioEvents objectForKey:key]) { 79 | NSMutableDictionary *mutableDictionary = [self.bs_audioEvents mutableCopy]; 80 | [mutableDictionary removeObjectForKey:key]; 81 | self.bs_audioEvents = [mutableDictionary copy]; 82 | 83 | [self removeTarget:self action:selector forControlEvents:event]; 84 | } 85 | } 86 | 87 | @end 88 | 89 | #pragma mark - Private implementation 90 | 91 | @implementation UIControl (SwishControlPrivate) 92 | 93 | @dynamic bs_audioEvents; 94 | 95 | static char kAssociatedAudioEventsKey; 96 | 97 | - (void)setBs_audioEvents:(NSDictionary *)audioEvents { 98 | objc_setAssociatedObject(self, &kAssociatedAudioEventsKey, audioEvents, OBJC_ASSOCIATION_RETAIN_NONATOMIC); 99 | } 100 | 101 | - (NSDictionary *)bs_audioEvents { 102 | NSDictionary *dict = objc_getAssociatedObject(self, &kAssociatedAudioEventsKey); 103 | 104 | // Make sure that we always return a dictionary 105 | if(!dict) { 106 | dict = [NSDictionary new]; 107 | } 108 | 109 | return dict; 110 | } 111 | 112 | - (SEL)bs_selectorForEvent:(UIControlEvents)event { 113 | NSString *eventString = [[NSNumber numberWithInt:event] stringValue]; 114 | NSString *selectorString = [kSwishControlSelectorPrefix stringByAppendingString:eventString]; 115 | 116 | return NSSelectorFromString(selectorString); 117 | } 118 | 119 | - (void)bs_playAudio { 120 | // This is the base implementation. 121 | // But _cmd will reflect the name of our created selector ex: bs_playAudio64 122 | // Fetch sound container for selector and play it 123 | BSSoundContainer *soundContainer = [self.bs_audioEvents objectForKey:NSStringFromSelector(_cmd)]; 124 | [soundContainer play]; 125 | } 126 | 127 | + (BOOL)bs_addSelector:(SEL)newSelector withImplementationFromSelector:(SEL)baseSelector { 128 | Method newMethod = class_getInstanceMethod(self, newSelector); 129 | Method baseMethod = class_getInstanceMethod(self, baseSelector); 130 | 131 | // If the method already exists or base doesn't. Bail out 132 | if(newMethod || !baseMethod) { 133 | return NO; 134 | } 135 | 136 | return class_addMethod(self, newSelector, method_getImplementation(baseMethod), method_getTypeEncoding(baseMethod)); 137 | } 138 | 139 | @end -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # SwishControl 2 | 3 | [![CI Status](https://travis-ci.org/mikaoj/SwishControl.svg?branch=master)](https://travis-ci.org/mikaoj/SwishControl) 4 | [![Version](https://img.shields.io/cocoapods/v/SwishControl.svg?style=flat)](http://cocoapods.org/pods/SwishControl) 5 | [![License](https://img.shields.io/cocoapods/l/SwishControl.svg?style=flat)](http://cocoapods.org/pods/SwishControl) 6 | [![Platform](https://img.shields.io/cocoapods/p/SwishControl.svg?style=flat)](http://cocoapods.org/pods/SwishControl)

7 | SwishControl is a category on UIControl for adding sound effects to UIControlEvents. 8 | 9 | ## Usage 10 | 11 | Import the SwishControl header 12 | ```objc 13 | #import 14 | ``` 15 | SwishControl uses AudioToolbox which supports aif, caf and wav.
16 | This is how you add a sound effect for all UIButtons 17 | ```objc 18 | NSString *clickPath = [[NSBundle mainBundle] pathForResource:@"click" ofType:@"aif"]; 19 | [[UIButton appearance] bs_setAudioWithPath:clickPath forEvent:UIControlEventTouchUpInside]; 20 | ``` 21 | Of course it can be applied to a single UIControl as well, if you don't want to set a sound for all of them. 22 | 23 | ## Requirements 24 | iOS, bananas and a bunch of sound effects 25 | 26 | ## Installation 27 | 28 | SwishControl is available through [CocoaPods](http://cocoapods.org). To install 29 | it, simply add the following line to your Podfile: 30 | 31 | ```ruby 32 | pod "SwishControl" 33 | ``` 34 | 35 | ## Author 36 | 37 | Joakim Gyllström 38 | 39 | ## License 40 | 41 | SwishControl is available under the MIT license. See the LICENSE file for more info. 42 | -------------------------------------------------------------------------------- /SwishControl.podspec: -------------------------------------------------------------------------------- 1 | Pod::Spec.new do |s| 2 | s.name = "SwishControl" 3 | s.version = "0.1.0" 4 | s.summary = "Attach sound effects to UIControls" 5 | s.description = <<-DESC 6 | A cateogory on UIControl for adding sound effects for different events. 7 | DESC 8 | s.homepage = "https://github.com/mikaoj/SwishControl" 9 | s.license = 'MIT' 10 | s.author = { "Joakim Gyllstrom" => "joakim@backslashed.se" } 11 | s.source = { :git => "https://github.com/mikaoj/SwishControl.git", :tag => s.version.to_s } 12 | s.platform = :ios, '7.0' 13 | s.requires_arc = true 14 | s.source_files = 'Pod/Classes/**/*' 15 | s.public_header_files = 'Pod/Classes/**/*.h' 16 | s.private_header_files = 'Pod/Classes/BSSoundContainer.h' 17 | s.frameworks = 'UIKit', 'AudioToolbox' 18 | end 19 | --------------------------------------------------------------------------------