├── scripts ├── submodules.sh ├── check-code-signature.sh └── build-to-deploy.sh ├── .gitmodules ├── .gitignore ├── QView.xcodeproj ├── project.xcworkspace │ └── contents.xcworkspacedata ├── xcuserdata │ └── chris.xcuserdatad │ │ └── xcschemes │ │ ├── xcschememanagement.plist │ │ └── QView.xcscheme └── project.pbxproj ├── QView ├── main.m ├── LICENSE.txt ├── Images.xcassets │ └── AppIcon.appiconset │ │ └── Contents.json ├── Info.plist ├── QPDFView.h ├── AppDelegate.h ├── QPDFView.m ├── AppDelegate.m └── Base.lproj │ └── MainMenu.xib └── README.markdown /scripts/submodules.sh: -------------------------------------------------------------------------------- 1 | git submodule update --init 2 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "F53/F53OSC"] 2 | path = F53/F53OSC 3 | url = git@github.com:Figure53/F53OSC.git 4 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | QView.xcodeproj/project.xcworkspace/xcuserdata/jesse.xcuserdatad 3 | QView.xcodeproj/xcuserdata/jesse.xcuserdatad 4 | QView.xcodeproj/project.xcworkspace/xcshareddata 5 | -------------------------------------------------------------------------------- /QView.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /scripts/check-code-signature.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | # Based on http://furbo.org/2013/10/17/code-signing-and-mavericks/ 4 | 5 | codesign --verify --verbose=4 ~/Desktop/QView.app/ 6 | spctl --verbose=4 --assess --type execute ~/Desktop/QView.app/ 7 | -------------------------------------------------------------------------------- /QView/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // QView 4 | // 5 | // Created by Chris Ashworth on 4/6/15. 6 | // Copyright (c) 2015 Figure 53. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, const char * argv[]) { 12 | return NSApplicationMain(argc, argv); 13 | } 14 | -------------------------------------------------------------------------------- /scripts/build-to-deploy.sh: -------------------------------------------------------------------------------- 1 | #!/bin/bash 2 | 3 | xcodebuild -target QView -scheme QView -archivePath ~/Desktop/QView.xcarchive archive 4 | xcodebuild -target QView -exportArchive -exportFormat APP -archivePath ~/Desktop/QView.xcarchive -exportPath ~/Desktop/QView.app 5 | rm -rf ~/Desktop/QView.xcarchive 6 | #./scripts/check-code-signature.sh 7 | -------------------------------------------------------------------------------- /QView.xcodeproj/xcuserdata/chris.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | QView.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | 831D29451AD2C31D008FF67F 16 | 17 | primary 18 | 19 | 20 | 831D29581AD2C31D008FF67F 21 | 22 | primary 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /README.markdown: -------------------------------------------------------------------------------- 1 | # QView 2 | 3 | QView is an experimental little PDF Viewer that can be controlled via OSC, slung together in a few minutes as a proof of concept. 4 | 5 | ## Download 6 | 7 | You can download a pre-built binary from here: 8 | 9 | [http://figure53.com/downloads/QView.zip](http://figure53.com/downloads/QView.zip) 10 | 11 | ## Usage 12 | 13 | 1. Drag a PDF file onto the window to view it. 14 | 2. Send OSC messages to port 60000. You can control which page is displayed using this OSC format: 15 | 16 | `/goto/page/number` 17 | 18 | 3. Or use relative pagination: 19 | 20 | `/goto/next` 21 | `/goto/prev` 22 | 23 | ## Why does this exist 24 | 25 | You might want to use it with [QLab](http://figure53.com/qlab/), so that you can display a script as you run a show, and have QLab control which page of the script is visible. Other ways exist to accomplish this, such as using AppleScript with other PDF Viewers, but it's fun to have a very simple way to send a very simple command to a machine that might be across the network. -------------------------------------------------------------------------------- /QView/LICENSE.txt: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015 Figure 53 LLC, http://figure53.com 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /QView/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "mac", 5 | "size" : "16x16", 6 | "scale" : "1x" 7 | }, 8 | { 9 | "idiom" : "mac", 10 | "size" : "16x16", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "mac", 15 | "size" : "32x32", 16 | "scale" : "1x" 17 | }, 18 | { 19 | "idiom" : "mac", 20 | "size" : "32x32", 21 | "scale" : "2x" 22 | }, 23 | { 24 | "idiom" : "mac", 25 | "size" : "128x128", 26 | "scale" : "1x" 27 | }, 28 | { 29 | "idiom" : "mac", 30 | "size" : "128x128", 31 | "scale" : "2x" 32 | }, 33 | { 34 | "idiom" : "mac", 35 | "size" : "256x256", 36 | "scale" : "1x" 37 | }, 38 | { 39 | "idiom" : "mac", 40 | "size" : "256x256", 41 | "scale" : "2x" 42 | }, 43 | { 44 | "idiom" : "mac", 45 | "size" : "512x512", 46 | "scale" : "1x" 47 | }, 48 | { 49 | "idiom" : "mac", 50 | "size" : "512x512", 51 | "scale" : "2x" 52 | } 53 | ], 54 | "info" : { 55 | "version" : 1, 56 | "author" : "xcode" 57 | } 58 | } -------------------------------------------------------------------------------- /QView/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIconFile 10 | 11 | CFBundleIdentifier 12 | com.figure53.$(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 25 | LSMinimumSystemVersion 26 | $(MACOSX_DEPLOYMENT_TARGET) 27 | NSHumanReadableCopyright 28 | Copyright © 2015 Figure 53. All rights reserved. 29 | NSMainNibFile 30 | MainMenu 31 | NSPrincipalClass 32 | NSApplication 33 | 34 | 35 | -------------------------------------------------------------------------------- /QView/QPDFView.h: -------------------------------------------------------------------------------- 1 | // 2 | // QPDFView.h 3 | // QView 4 | // 5 | // Created by Chris Ashworth on 4/6/15. 6 | // Copyright (c) 2015 Figure 53 LLC, http://figure53.com 7 | // 8 | // Permission is hereby granted, free of charge, to any person obtaining a copy 9 | // of this software and associated documentation files (the "Software"), to deal 10 | // in the Software without restriction, including without limitation the rights 11 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 12 | // copies of the Software, and to permit persons to whom the Software is 13 | // furnished to do so, subject to the following conditions: 14 | // 15 | // The above copyright notice and this permission notice shall be included in 16 | // all copies or substantial portions of the Software. 17 | // 18 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 19 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 20 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 21 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 22 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 23 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 24 | // THE SOFTWARE. 25 | // 26 | 27 | //#import 28 | #import 29 | 30 | @interface QPDFView : PDFView 31 | 32 | @end 33 | -------------------------------------------------------------------------------- /QView/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // QView 4 | // 5 | // Created by Chris Ashworth on 4/6/15. 6 | // Copyright (c) 2015 Figure 53 LLC, http://figure53.com 7 | // 8 | // Permission is hereby granted, free of charge, to any person obtaining a copy 9 | // of this software and associated documentation files (the "Software"), to deal 10 | // in the Software without restriction, including without limitation the rights 11 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 12 | // copies of the Software, and to permit persons to whom the Software is 13 | // furnished to do so, subject to the following conditions: 14 | // 15 | // The above copyright notice and this permission notice shall be included in 16 | // all copies or substantial portions of the Software. 17 | // 18 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 19 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 20 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 21 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 22 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 23 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 24 | // THE SOFTWARE. 25 | // 26 | 27 | #import 28 | #import "F53OSC.h" 29 | 30 | @interface AppDelegate : NSObject 31 | 32 | - (void) takeMessage:(F53OSCMessage *)message; 33 | 34 | @end 35 | 36 | -------------------------------------------------------------------------------- /QView/QPDFView.m: -------------------------------------------------------------------------------- 1 | // 2 | // QPDFView.m 3 | // QView 4 | // 5 | // Created by Chris Ashworth on 4/6/15. 6 | // Copyright (c) 2015 Figure 53 LLC, http://figure53.com 7 | // 8 | // Permission is hereby granted, free of charge, to any person obtaining a copy 9 | // of this software and associated documentation files (the "Software"), to deal 10 | // in the Software without restriction, including without limitation the rights 11 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 12 | // copies of the Software, and to permit persons to whom the Software is 13 | // furnished to do so, subject to the following conditions: 14 | // 15 | // The above copyright notice and this permission notice shall be included in 16 | // all copies or substantial portions of the Software. 17 | // 18 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 19 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 20 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 21 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 22 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 23 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 24 | // THE SOFTWARE. 25 | // 26 | 27 | #import "QPDFView.h" 28 | 29 | @implementation QPDFView 30 | 31 | #pragma mark - NSDraggingDestination 32 | 33 | - (NSDragOperation) draggingEntered:(id)sender 34 | { 35 | NSPasteboard *pboard = [sender draggingPasteboard]; 36 | 37 | if ( [pboard availableTypeFromArray:@[ NSFilenamesPboardType ]] ) 38 | return NSDragOperationGeneric; 39 | else 40 | return NSDragOperationNone; 41 | } 42 | 43 | - (NSDragOperation) draggingUpdated:(id)sender 44 | { 45 | NSPasteboard *pboard = [sender draggingPasteboard]; 46 | 47 | if ( [pboard availableTypeFromArray:@[ NSFilenamesPboardType ]] ) 48 | return NSDragOperationGeneric; 49 | else 50 | return NSDragOperationNone; 51 | } 52 | 53 | - (void) draggingExited:(id)sender 54 | { 55 | } 56 | 57 | - (void) draggingEnded:(id)sender 58 | { 59 | } 60 | 61 | - (BOOL) prepareForDragOperation:(id)sender 62 | { 63 | return YES; 64 | } 65 | 66 | - (BOOL) performDragOperation:(id)sender 67 | { 68 | NSPasteboard *pboard = [sender draggingPasteboard]; 69 | 70 | if ( [pboard availableTypeFromArray:@[ NSFilenamesPboardType ]] ) 71 | { 72 | NSArray *draggedItems = [pboard propertyListForType:NSFilenamesPboardType]; 73 | NSURL *url = [NSURL fileURLWithPath:draggedItems.firstObject]; 74 | self.document = [[PDFDocument alloc] initWithURL:url]; 75 | return YES; 76 | } 77 | else 78 | { 79 | return NO; 80 | } 81 | } 82 | 83 | - (void) concludeDragOperation:(id)sender 84 | { 85 | // Only called if drag is successful. 86 | } 87 | 88 | @end 89 | -------------------------------------------------------------------------------- /QView/AppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.m 3 | // QView 4 | // 5 | // Created by Chris Ashworth on 4/6/15. 6 | // Copyright (c) 2015 Figure 53 LLC, http://figure53.com 7 | // 8 | // Permission is hereby granted, free of charge, to any person obtaining a copy 9 | // of this software and associated documentation files (the "Software"), to deal 10 | // in the Software without restriction, including without limitation the rights 11 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 12 | // copies of the Software, and to permit persons to whom the Software is 13 | // furnished to do so, subject to the following conditions: 14 | // 15 | // The above copyright notice and this permission notice shall be included in 16 | // all copies or substantial portions of the Software. 17 | // 18 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 19 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 20 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 21 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 22 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 23 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 24 | // THE SOFTWARE. 25 | // 26 | 27 | #import "AppDelegate.h" 28 | #import 29 | 30 | 31 | @interface AppDelegate () 32 | 33 | @property (weak) IBOutlet NSWindow *window; 34 | @property (weak) IBOutlet PDFView *pdfView; 35 | @property (strong) F53OSCServer *oscServer; 36 | 37 | @end 38 | 39 | @implementation AppDelegate 40 | 41 | - (void)applicationDidFinishLaunching:(NSNotification *)aNotification 42 | { 43 | self.oscServer = [F53OSCServer new]; 44 | [self initializeOSC]; 45 | 46 | [self.pdfView registerForDraggedTypes:@[ NSFilenamesPboardType ]]; 47 | } 48 | 49 | - (void)applicationWillTerminate:(NSNotification *)aNotification 50 | { 51 | } 52 | 53 | - (void) initializeOSC 54 | { 55 | self.oscServer.delegate = self; 56 | self.oscServer.port = 60000; 57 | 58 | NSString *errorString = nil; 59 | 60 | if ( ![self.oscServer startListening] ) 61 | { 62 | NSLog( @"Error: unable to start listening for OSC on port %u.", self.oscServer.port ); 63 | errorString = [NSString stringWithFormat:@"Unable to start listening for OSC messages on port %u.", self.oscServer.port ]; 64 | } 65 | 66 | if ( errorString ) 67 | { 68 | NSAlert *alert = [NSAlert new]; 69 | [alert setAlertStyle:NSWarningAlertStyle]; 70 | [alert setMessageText:@"Unable to initialize OSC"]; 71 | [alert setInformativeText:errorString]; 72 | [alert addButtonWithTitle:@"OK"]; 73 | [alert runModal]; 74 | } 75 | } 76 | 77 | - (void) takeMessage:(F53OSCMessage *)message 78 | { 79 | // F53OSC reserves the right to send messages off the main thread; kick it to the main thread. 80 | [self performSelectorOnMainThread:@selector( processOscMessage: ) withObject:message waitUntilDone:NO]; 81 | } 82 | 83 | - (void) processOscMessage:(F53OSCMessage *)message 84 | { 85 | //NSLog( @"%@ sent OSC message: %@", message.replySocket, message ); 86 | 87 | NSArray *addressParts = [message addressParts]; 88 | if ( addressParts.count == 0 ) 89 | { 90 | return; 91 | } 92 | 93 | if ( [[[addressParts firstObject] lowercaseString] isEqualToString:@"goto"] ) 94 | { 95 | if ( addressParts.count < 2 ) 96 | return; 97 | 98 | if ( [[[addressParts objectAtIndex:1] lowercaseString] isEqualToString:@"next"] ) 99 | { 100 | [self.pdfView goToNextPage:self]; 101 | } 102 | 103 | if ( [[[addressParts objectAtIndex:1] lowercaseString] isEqualToString:@"prev"] ) 104 | { 105 | [self.pdfView goToPreviousPage:self]; 106 | 107 | } 108 | 109 | if ( [[[addressParts objectAtIndex:1] lowercaseString] isEqualToString:@"page"] ) 110 | { 111 | NSString *pageString = [addressParts objectAtIndex:2]; 112 | NSInteger pageNumber = [pageString integerValue]; 113 | 114 | [self.pdfView goToPage:[self.pdfView.document pageAtIndex:pageNumber - 1]]; 115 | } 116 | } 117 | } 118 | 119 | @end 120 | -------------------------------------------------------------------------------- /QView.xcodeproj/xcuserdata/chris.xcuserdatad/xcschemes/QView.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 29 | 35 | 36 | 37 | 38 | 39 | 44 | 45 | 47 | 53 | 54 | 55 | 56 | 57 | 63 | 64 | 65 | 66 | 75 | 77 | 83 | 84 | 85 | 86 | 87 | 88 | 94 | 96 | 102 | 103 | 104 | 105 | 107 | 108 | 111 | 112 | 113 | -------------------------------------------------------------------------------- /QView/Base.lproj/MainMenu.xib: -------------------------------------------------------------------------------- 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 | 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 | 69 | 70 | 71 | 72 | 73 | 74 | 75 | 76 | 77 | 78 | 79 | 80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 90 | 91 | 92 | 93 | 94 | 95 | 96 | 97 | 98 | 99 | 100 | 101 | 102 | 103 | 104 | 105 | 106 | 107 | 108 | 109 | 110 | 111 | 112 | 113 | 114 | 115 | 116 | 117 | 118 | 119 | 120 | 121 | 122 | 123 | 124 | 125 | 126 | 127 | 128 | 129 | 130 | 131 | 132 | 133 | 134 | 135 | 136 | 137 | 138 | 139 | 140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 | 189 | 190 | -------------------------------------------------------------------------------- /QView.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 831D294D1AD2C31D008FF67F /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 831D294C1AD2C31D008FF67F /* AppDelegate.m */; }; 11 | 831D294F1AD2C31D008FF67F /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 831D294E1AD2C31D008FF67F /* main.m */; }; 12 | 831D29511AD2C31D008FF67F /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 831D29501AD2C31D008FF67F /* Images.xcassets */; }; 13 | 831D29541AD2C31D008FF67F /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 831D29521AD2C31D008FF67F /* MainMenu.xib */; }; 14 | 831D298F1AD2C63C008FF67F /* F53OSCBundle.m in Sources */ = {isa = PBXBuildFile; fileRef = 831D296F1AD2C63C008FF67F /* F53OSCBundle.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; 15 | 831D29901AD2C63C008FF67F /* F53OSCClient.m in Sources */ = {isa = PBXBuildFile; fileRef = 831D29711AD2C63C008FF67F /* F53OSCClient.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; 16 | 831D29911AD2C63C008FF67F /* F53OSCMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 831D29741AD2C63C008FF67F /* F53OSCMessage.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; 17 | 831D29921AD2C63C008FF67F /* F53OSCPacket.m in Sources */ = {isa = PBXBuildFile; fileRef = 831D29761AD2C63C008FF67F /* F53OSCPacket.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; 18 | 831D29931AD2C63C008FF67F /* F53OSCParser.m in Sources */ = {isa = PBXBuildFile; fileRef = 831D29781AD2C63C008FF67F /* F53OSCParser.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; 19 | 831D29941AD2C63C008FF67F /* F53OSCServer.m in Sources */ = {isa = PBXBuildFile; fileRef = 831D297B1AD2C63C008FF67F /* F53OSCServer.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; 20 | 831D29951AD2C63C008FF67F /* F53OSCSocket.m in Sources */ = {isa = PBXBuildFile; fileRef = 831D297D1AD2C63C008FF67F /* F53OSCSocket.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; 21 | 831D29961AD2C63C008FF67F /* F53OSCTimeTag.m in Sources */ = {isa = PBXBuildFile; fileRef = 831D297F1AD2C63C008FF67F /* F53OSCTimeTag.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; 22 | 831D29971AD2C63C008FF67F /* GCDAsyncSocket.m in Sources */ = {isa = PBXBuildFile; fileRef = 831D29811AD2C63C008FF67F /* GCDAsyncSocket.m */; }; 23 | 831D29981AD2C63C008FF67F /* GCDAsyncUdpSocket.m in Sources */ = {isa = PBXBuildFile; fileRef = 831D29831AD2C63C008FF67F /* GCDAsyncUdpSocket.m */; }; 24 | 831D299A1AD2C63C008FF67F /* NSData+F53OSCBlob.m in Sources */ = {isa = PBXBuildFile; fileRef = 831D29861AD2C63C008FF67F /* NSData+F53OSCBlob.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; 25 | 831D299B1AD2C63C008FF67F /* NSDate+F53OSCTimeTag.m in Sources */ = {isa = PBXBuildFile; fileRef = 831D29881AD2C63C008FF67F /* NSDate+F53OSCTimeTag.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; 26 | 831D299C1AD2C63C008FF67F /* NSNumber+F53OSCNumber.m in Sources */ = {isa = PBXBuildFile; fileRef = 831D298A1AD2C63C008FF67F /* NSNumber+F53OSCNumber.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; 27 | 831D299D1AD2C63C008FF67F /* NSString+F53OSCString.m in Sources */ = {isa = PBXBuildFile; fileRef = 831D298C1AD2C63C008FF67F /* NSString+F53OSCString.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; 28 | 831D29A01AD2C742008FF67F /* CFNetwork.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 831D299F1AD2C742008FF67F /* CFNetwork.framework */; }; 29 | 831D29A21AD2C749008FF67F /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 831D29A11AD2C749008FF67F /* Security.framework */; }; 30 | 831D29A51AD2CA5C008FF67F /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 831D29A41AD2CA5C008FF67F /* Foundation.framework */; }; 31 | 831D29A71AD2CA64008FF67F /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 831D29A61AD2CA64008FF67F /* Cocoa.framework */; }; 32 | 831D29AA1AD2D842008FF67F /* QPDFView.m in Sources */ = {isa = PBXBuildFile; fileRef = 831D29A91AD2D842008FF67F /* QPDFView.m */; }; 33 | /* End PBXBuildFile section */ 34 | 35 | /* Begin PBXFileReference section */ 36 | 831D29461AD2C31D008FF67F /* QView.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = QView.app; sourceTree = BUILT_PRODUCTS_DIR; }; 37 | 831D294A1AD2C31D008FF67F /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 38 | 831D294B1AD2C31D008FF67F /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; 39 | 831D294C1AD2C31D008FF67F /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; 40 | 831D294E1AD2C31D008FF67F /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 41 | 831D29501AD2C31D008FF67F /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; 42 | 831D29531AD2C31D008FF67F /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = ""; }; 43 | 831D296C1AD2C63C008FF67F /* F53OSC.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = F53OSC.h; sourceTree = ""; }; 44 | 831D296E1AD2C63C008FF67F /* F53OSCBundle.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = F53OSCBundle.h; sourceTree = ""; }; 45 | 831D296F1AD2C63C008FF67F /* F53OSCBundle.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = F53OSCBundle.m; sourceTree = ""; }; 46 | 831D29701AD2C63C008FF67F /* F53OSCClient.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = F53OSCClient.h; sourceTree = ""; }; 47 | 831D29711AD2C63C008FF67F /* F53OSCClient.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = F53OSCClient.m; sourceTree = ""; }; 48 | 831D29721AD2C63C008FF67F /* F53OSCFoundationAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = F53OSCFoundationAdditions.h; sourceTree = ""; }; 49 | 831D29731AD2C63C008FF67F /* F53OSCMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = F53OSCMessage.h; sourceTree = ""; }; 50 | 831D29741AD2C63C008FF67F /* F53OSCMessage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = F53OSCMessage.m; sourceTree = ""; }; 51 | 831D29751AD2C63C008FF67F /* F53OSCPacket.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = F53OSCPacket.h; sourceTree = ""; }; 52 | 831D29761AD2C63C008FF67F /* F53OSCPacket.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = F53OSCPacket.m; sourceTree = ""; }; 53 | 831D29771AD2C63C008FF67F /* F53OSCParser.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = F53OSCParser.h; sourceTree = ""; }; 54 | 831D29781AD2C63C008FF67F /* F53OSCParser.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = F53OSCParser.m; sourceTree = ""; }; 55 | 831D29791AD2C63C008FF67F /* F53OSCProtocols.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = F53OSCProtocols.h; sourceTree = ""; }; 56 | 831D297A1AD2C63C008FF67F /* F53OSCServer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = F53OSCServer.h; sourceTree = ""; }; 57 | 831D297B1AD2C63C008FF67F /* F53OSCServer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = F53OSCServer.m; sourceTree = ""; }; 58 | 831D297C1AD2C63C008FF67F /* F53OSCSocket.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = F53OSCSocket.h; sourceTree = ""; }; 59 | 831D297D1AD2C63C008FF67F /* F53OSCSocket.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = F53OSCSocket.m; sourceTree = ""; }; 60 | 831D297E1AD2C63C008FF67F /* F53OSCTimeTag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = F53OSCTimeTag.h; sourceTree = ""; }; 61 | 831D297F1AD2C63C008FF67F /* F53OSCTimeTag.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = F53OSCTimeTag.m; sourceTree = ""; }; 62 | 831D29801AD2C63C008FF67F /* GCDAsyncSocket.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GCDAsyncSocket.h; sourceTree = ""; }; 63 | 831D29811AD2C63C008FF67F /* GCDAsyncSocket.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GCDAsyncSocket.m; sourceTree = ""; }; 64 | 831D29821AD2C63C008FF67F /* GCDAsyncUdpSocket.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = GCDAsyncUdpSocket.h; sourceTree = ""; }; 65 | 831D29831AD2C63C008FF67F /* GCDAsyncUdpSocket.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GCDAsyncUdpSocket.m; sourceTree = ""; }; 66 | 831D29851AD2C63C008FF67F /* NSData+F53OSCBlob.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSData+F53OSCBlob.h"; sourceTree = ""; }; 67 | 831D29861AD2C63C008FF67F /* NSData+F53OSCBlob.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSData+F53OSCBlob.m"; sourceTree = ""; }; 68 | 831D29871AD2C63C008FF67F /* NSDate+F53OSCTimeTag.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSDate+F53OSCTimeTag.h"; sourceTree = ""; }; 69 | 831D29881AD2C63C008FF67F /* NSDate+F53OSCTimeTag.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSDate+F53OSCTimeTag.m"; sourceTree = ""; }; 70 | 831D29891AD2C63C008FF67F /* NSNumber+F53OSCNumber.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSNumber+F53OSCNumber.h"; sourceTree = ""; }; 71 | 831D298A1AD2C63C008FF67F /* NSNumber+F53OSCNumber.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSNumber+F53OSCNumber.m"; sourceTree = ""; }; 72 | 831D298B1AD2C63C008FF67F /* NSString+F53OSCString.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+F53OSCString.h"; sourceTree = ""; }; 73 | 831D298C1AD2C63C008FF67F /* NSString+F53OSCString.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+F53OSCString.m"; sourceTree = ""; }; 74 | 831D299F1AD2C742008FF67F /* CFNetwork.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CFNetwork.framework; path = System/Library/Frameworks/CFNetwork.framework; sourceTree = SDKROOT; }; 75 | 831D29A11AD2C749008FF67F /* Security.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Security.framework; path = System/Library/Frameworks/Security.framework; sourceTree = SDKROOT; }; 76 | 831D29A41AD2CA5C008FF67F /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 77 | 831D29A61AD2CA64008FF67F /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = System/Library/Frameworks/Cocoa.framework; sourceTree = SDKROOT; }; 78 | 831D29A81AD2D842008FF67F /* QPDFView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = QPDFView.h; sourceTree = ""; }; 79 | 831D29A91AD2D842008FF67F /* QPDFView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = QPDFView.m; sourceTree = ""; }; 80 | /* End PBXFileReference section */ 81 | 82 | /* Begin PBXFrameworksBuildPhase section */ 83 | 831D29431AD2C31D008FF67F /* Frameworks */ = { 84 | isa = PBXFrameworksBuildPhase; 85 | buildActionMask = 2147483647; 86 | files = ( 87 | 831D29A71AD2CA64008FF67F /* Cocoa.framework in Frameworks */, 88 | 831D29A51AD2CA5C008FF67F /* Foundation.framework in Frameworks */, 89 | 831D29A21AD2C749008FF67F /* Security.framework in Frameworks */, 90 | 831D29A01AD2C742008FF67F /* CFNetwork.framework in Frameworks */, 91 | ); 92 | runOnlyForDeploymentPostprocessing = 0; 93 | }; 94 | /* End PBXFrameworksBuildPhase section */ 95 | 96 | /* Begin PBXGroup section */ 97 | 831D293D1AD2C31D008FF67F = { 98 | isa = PBXGroup; 99 | children = ( 100 | 831D29481AD2C31D008FF67F /* QView */, 101 | 831D29471AD2C31D008FF67F /* Products */, 102 | ); 103 | sourceTree = ""; 104 | }; 105 | 831D29471AD2C31D008FF67F /* Products */ = { 106 | isa = PBXGroup; 107 | children = ( 108 | 831D29461AD2C31D008FF67F /* QView.app */, 109 | ); 110 | name = Products; 111 | sourceTree = ""; 112 | }; 113 | 831D29481AD2C31D008FF67F /* QView */ = { 114 | isa = PBXGroup; 115 | children = ( 116 | 831D294B1AD2C31D008FF67F /* AppDelegate.h */, 117 | 831D294C1AD2C31D008FF67F /* AppDelegate.m */, 118 | 831D29A81AD2D842008FF67F /* QPDFView.h */, 119 | 831D29A91AD2D842008FF67F /* QPDFView.m */, 120 | 831D296A1AD2C631008FF67F /* F53 */, 121 | 831D29691AD2C5FF008FF67F /* Resources */, 122 | 831D29491AD2C31D008FF67F /* Supporting Files */, 123 | 831D29A31AD2C756008FF67F /* Frameworks */, 124 | ); 125 | path = QView; 126 | sourceTree = ""; 127 | }; 128 | 831D29491AD2C31D008FF67F /* Supporting Files */ = { 129 | isa = PBXGroup; 130 | children = ( 131 | 831D294A1AD2C31D008FF67F /* Info.plist */, 132 | 831D294E1AD2C31D008FF67F /* main.m */, 133 | ); 134 | name = "Supporting Files"; 135 | sourceTree = ""; 136 | }; 137 | 831D29691AD2C5FF008FF67F /* Resources */ = { 138 | isa = PBXGroup; 139 | children = ( 140 | 831D29521AD2C31D008FF67F /* MainMenu.xib */, 141 | 831D29501AD2C31D008FF67F /* Images.xcassets */, 142 | ); 143 | name = Resources; 144 | sourceTree = ""; 145 | }; 146 | 831D296A1AD2C631008FF67F /* F53 */ = { 147 | isa = PBXGroup; 148 | children = ( 149 | 831D296B1AD2C63C008FF67F /* F53OSC */, 150 | ); 151 | name = F53; 152 | sourceTree = ""; 153 | }; 154 | 831D296B1AD2C63C008FF67F /* F53OSC */ = { 155 | isa = PBXGroup; 156 | children = ( 157 | 831D296C1AD2C63C008FF67F /* F53OSC.h */, 158 | 831D296E1AD2C63C008FF67F /* F53OSCBundle.h */, 159 | 831D296F1AD2C63C008FF67F /* F53OSCBundle.m */, 160 | 831D29701AD2C63C008FF67F /* F53OSCClient.h */, 161 | 831D29711AD2C63C008FF67F /* F53OSCClient.m */, 162 | 831D29731AD2C63C008FF67F /* F53OSCMessage.h */, 163 | 831D29741AD2C63C008FF67F /* F53OSCMessage.m */, 164 | 831D29751AD2C63C008FF67F /* F53OSCPacket.h */, 165 | 831D29761AD2C63C008FF67F /* F53OSCPacket.m */, 166 | 831D29771AD2C63C008FF67F /* F53OSCParser.h */, 167 | 831D29781AD2C63C008FF67F /* F53OSCParser.m */, 168 | 831D29791AD2C63C008FF67F /* F53OSCProtocols.h */, 169 | 831D297A1AD2C63C008FF67F /* F53OSCServer.h */, 170 | 831D297B1AD2C63C008FF67F /* F53OSCServer.m */, 171 | 831D297C1AD2C63C008FF67F /* F53OSCSocket.h */, 172 | 831D297D1AD2C63C008FF67F /* F53OSCSocket.m */, 173 | 831D297E1AD2C63C008FF67F /* F53OSCTimeTag.h */, 174 | 831D297F1AD2C63C008FF67F /* F53OSCTimeTag.m */, 175 | 831D29801AD2C63C008FF67F /* GCDAsyncSocket.h */, 176 | 831D29811AD2C63C008FF67F /* GCDAsyncSocket.m */, 177 | 831D29821AD2C63C008FF67F /* GCDAsyncUdpSocket.h */, 178 | 831D29831AD2C63C008FF67F /* GCDAsyncUdpSocket.m */, 179 | 831D29721AD2C63C008FF67F /* F53OSCFoundationAdditions.h */, 180 | 831D29851AD2C63C008FF67F /* NSData+F53OSCBlob.h */, 181 | 831D29861AD2C63C008FF67F /* NSData+F53OSCBlob.m */, 182 | 831D29871AD2C63C008FF67F /* NSDate+F53OSCTimeTag.h */, 183 | 831D29881AD2C63C008FF67F /* NSDate+F53OSCTimeTag.m */, 184 | 831D29891AD2C63C008FF67F /* NSNumber+F53OSCNumber.h */, 185 | 831D298A1AD2C63C008FF67F /* NSNumber+F53OSCNumber.m */, 186 | 831D298B1AD2C63C008FF67F /* NSString+F53OSCString.h */, 187 | 831D298C1AD2C63C008FF67F /* NSString+F53OSCString.m */, 188 | ); 189 | name = F53OSC; 190 | path = F53/F53OSC; 191 | sourceTree = SOURCE_ROOT; 192 | }; 193 | 831D29A31AD2C756008FF67F /* Frameworks */ = { 194 | isa = PBXGroup; 195 | children = ( 196 | 831D29A61AD2CA64008FF67F /* Cocoa.framework */, 197 | 831D29A41AD2CA5C008FF67F /* Foundation.framework */, 198 | 831D29A11AD2C749008FF67F /* Security.framework */, 199 | 831D299F1AD2C742008FF67F /* CFNetwork.framework */, 200 | ); 201 | name = Frameworks; 202 | sourceTree = ""; 203 | }; 204 | /* End PBXGroup section */ 205 | 206 | /* Begin PBXNativeTarget section */ 207 | 831D29451AD2C31D008FF67F /* QView */ = { 208 | isa = PBXNativeTarget; 209 | buildConfigurationList = 831D29631AD2C31D008FF67F /* Build configuration list for PBXNativeTarget "QView" */; 210 | buildPhases = ( 211 | 831D29421AD2C31D008FF67F /* Sources */, 212 | 831D29431AD2C31D008FF67F /* Frameworks */, 213 | 831D29441AD2C31D008FF67F /* Resources */, 214 | ); 215 | buildRules = ( 216 | ); 217 | dependencies = ( 218 | ); 219 | name = QView; 220 | productName = QView; 221 | productReference = 831D29461AD2C31D008FF67F /* QView.app */; 222 | productType = "com.apple.product-type.application"; 223 | }; 224 | /* End PBXNativeTarget section */ 225 | 226 | /* Begin PBXProject section */ 227 | 831D293E1AD2C31D008FF67F /* Project object */ = { 228 | isa = PBXProject; 229 | attributes = { 230 | LastUpgradeCheck = 0620; 231 | ORGANIZATIONNAME = "Figure 53"; 232 | TargetAttributes = { 233 | 831D29451AD2C31D008FF67F = { 234 | CreatedOnToolsVersion = 6.2; 235 | }; 236 | }; 237 | }; 238 | buildConfigurationList = 831D29411AD2C31D008FF67F /* Build configuration list for PBXProject "QView" */; 239 | compatibilityVersion = "Xcode 3.2"; 240 | developmentRegion = English; 241 | hasScannedForEncodings = 0; 242 | knownRegions = ( 243 | en, 244 | Base, 245 | ); 246 | mainGroup = 831D293D1AD2C31D008FF67F; 247 | productRefGroup = 831D29471AD2C31D008FF67F /* Products */; 248 | projectDirPath = ""; 249 | projectRoot = ""; 250 | targets = ( 251 | 831D29451AD2C31D008FF67F /* QView */, 252 | ); 253 | }; 254 | /* End PBXProject section */ 255 | 256 | /* Begin PBXResourcesBuildPhase section */ 257 | 831D29441AD2C31D008FF67F /* Resources */ = { 258 | isa = PBXResourcesBuildPhase; 259 | buildActionMask = 2147483647; 260 | files = ( 261 | 831D29511AD2C31D008FF67F /* Images.xcassets in Resources */, 262 | 831D29541AD2C31D008FF67F /* MainMenu.xib in Resources */, 263 | ); 264 | runOnlyForDeploymentPostprocessing = 0; 265 | }; 266 | /* End PBXResourcesBuildPhase section */ 267 | 268 | /* Begin PBXSourcesBuildPhase section */ 269 | 831D29421AD2C31D008FF67F /* Sources */ = { 270 | isa = PBXSourcesBuildPhase; 271 | buildActionMask = 2147483647; 272 | files = ( 273 | 831D294F1AD2C31D008FF67F /* main.m in Sources */, 274 | 831D294D1AD2C31D008FF67F /* AppDelegate.m in Sources */, 275 | 831D29971AD2C63C008FF67F /* GCDAsyncSocket.m in Sources */, 276 | 831D29981AD2C63C008FF67F /* GCDAsyncUdpSocket.m in Sources */, 277 | 831D29911AD2C63C008FF67F /* F53OSCMessage.m in Sources */, 278 | 831D29941AD2C63C008FF67F /* F53OSCServer.m in Sources */, 279 | 831D298F1AD2C63C008FF67F /* F53OSCBundle.m in Sources */, 280 | 831D29921AD2C63C008FF67F /* F53OSCPacket.m in Sources */, 281 | 831D29901AD2C63C008FF67F /* F53OSCClient.m in Sources */, 282 | 831D29951AD2C63C008FF67F /* F53OSCSocket.m in Sources */, 283 | 831D29961AD2C63C008FF67F /* F53OSCTimeTag.m in Sources */, 284 | 831D29931AD2C63C008FF67F /* F53OSCParser.m in Sources */, 285 | 831D299A1AD2C63C008FF67F /* NSData+F53OSCBlob.m in Sources */, 286 | 831D29AA1AD2D842008FF67F /* QPDFView.m in Sources */, 287 | 831D299B1AD2C63C008FF67F /* NSDate+F53OSCTimeTag.m in Sources */, 288 | 831D299C1AD2C63C008FF67F /* NSNumber+F53OSCNumber.m in Sources */, 289 | 831D299D1AD2C63C008FF67F /* NSString+F53OSCString.m in Sources */, 290 | ); 291 | runOnlyForDeploymentPostprocessing = 0; 292 | }; 293 | /* End PBXSourcesBuildPhase section */ 294 | 295 | /* Begin PBXVariantGroup section */ 296 | 831D29521AD2C31D008FF67F /* MainMenu.xib */ = { 297 | isa = PBXVariantGroup; 298 | children = ( 299 | 831D29531AD2C31D008FF67F /* Base */, 300 | ); 301 | name = MainMenu.xib; 302 | sourceTree = ""; 303 | }; 304 | /* End PBXVariantGroup section */ 305 | 306 | /* Begin XCBuildConfiguration section */ 307 | 831D29611AD2C31D008FF67F /* Debug */ = { 308 | isa = XCBuildConfiguration; 309 | buildSettings = { 310 | ALWAYS_SEARCH_USER_PATHS = NO; 311 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 312 | CLANG_CXX_LIBRARY = "libc++"; 313 | CLANG_ENABLE_MODULES = YES; 314 | CLANG_ENABLE_OBJC_ARC = YES; 315 | CLANG_WARN_BOOL_CONVERSION = YES; 316 | CLANG_WARN_CONSTANT_CONVERSION = YES; 317 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 318 | CLANG_WARN_EMPTY_BODY = YES; 319 | CLANG_WARN_ENUM_CONVERSION = YES; 320 | CLANG_WARN_INT_CONVERSION = YES; 321 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 322 | CLANG_WARN_UNREACHABLE_CODE = YES; 323 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 324 | CODE_SIGN_IDENTITY = "-"; 325 | COPY_PHASE_STRIP = NO; 326 | ENABLE_STRICT_OBJC_MSGSEND = YES; 327 | GCC_C_LANGUAGE_STANDARD = gnu99; 328 | GCC_DYNAMIC_NO_PIC = NO; 329 | GCC_OPTIMIZATION_LEVEL = 0; 330 | GCC_PREPROCESSOR_DEFINITIONS = ( 331 | "DEBUG=1", 332 | "$(inherited)", 333 | ); 334 | GCC_SYMBOLS_PRIVATE_EXTERN = NO; 335 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 336 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 337 | GCC_WARN_UNDECLARED_SELECTOR = YES; 338 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 339 | GCC_WARN_UNUSED_FUNCTION = YES; 340 | GCC_WARN_UNUSED_VARIABLE = YES; 341 | MACOSX_DEPLOYMENT_TARGET = 10.10; 342 | MTL_ENABLE_DEBUG_INFO = YES; 343 | ONLY_ACTIVE_ARCH = YES; 344 | SDKROOT = macosx; 345 | }; 346 | name = Debug; 347 | }; 348 | 831D29621AD2C31D008FF67F /* Release */ = { 349 | isa = XCBuildConfiguration; 350 | buildSettings = { 351 | ALWAYS_SEARCH_USER_PATHS = NO; 352 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 353 | CLANG_CXX_LIBRARY = "libc++"; 354 | CLANG_ENABLE_MODULES = YES; 355 | CLANG_ENABLE_OBJC_ARC = YES; 356 | CLANG_WARN_BOOL_CONVERSION = YES; 357 | CLANG_WARN_CONSTANT_CONVERSION = YES; 358 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 359 | CLANG_WARN_EMPTY_BODY = YES; 360 | CLANG_WARN_ENUM_CONVERSION = YES; 361 | CLANG_WARN_INT_CONVERSION = YES; 362 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 363 | CLANG_WARN_UNREACHABLE_CODE = YES; 364 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 365 | CODE_SIGN_IDENTITY = "-"; 366 | COPY_PHASE_STRIP = NO; 367 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 368 | ENABLE_NS_ASSERTIONS = NO; 369 | ENABLE_STRICT_OBJC_MSGSEND = YES; 370 | GCC_C_LANGUAGE_STANDARD = gnu99; 371 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 372 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 373 | GCC_WARN_UNDECLARED_SELECTOR = YES; 374 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 375 | GCC_WARN_UNUSED_FUNCTION = YES; 376 | GCC_WARN_UNUSED_VARIABLE = YES; 377 | MACOSX_DEPLOYMENT_TARGET = 10.10; 378 | MTL_ENABLE_DEBUG_INFO = NO; 379 | SDKROOT = macosx; 380 | }; 381 | name = Release; 382 | }; 383 | 831D29641AD2C31D008FF67F /* Debug */ = { 384 | isa = XCBuildConfiguration; 385 | buildSettings = { 386 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 387 | COMBINE_HIDPI_IMAGES = YES; 388 | INFOPLIST_FILE = QView/Info.plist; 389 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; 390 | MACOSX_DEPLOYMENT_TARGET = 10.8; 391 | PRODUCT_NAME = "$(TARGET_NAME)"; 392 | }; 393 | name = Debug; 394 | }; 395 | 831D29651AD2C31D008FF67F /* Release */ = { 396 | isa = XCBuildConfiguration; 397 | buildSettings = { 398 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 399 | COMBINE_HIDPI_IMAGES = YES; 400 | INFOPLIST_FILE = QView/Info.plist; 401 | LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; 402 | MACOSX_DEPLOYMENT_TARGET = 10.8; 403 | PRODUCT_NAME = "$(TARGET_NAME)"; 404 | }; 405 | name = Release; 406 | }; 407 | /* End XCBuildConfiguration section */ 408 | 409 | /* Begin XCConfigurationList section */ 410 | 831D29411AD2C31D008FF67F /* Build configuration list for PBXProject "QView" */ = { 411 | isa = XCConfigurationList; 412 | buildConfigurations = ( 413 | 831D29611AD2C31D008FF67F /* Debug */, 414 | 831D29621AD2C31D008FF67F /* Release */, 415 | ); 416 | defaultConfigurationIsVisible = 0; 417 | defaultConfigurationName = Release; 418 | }; 419 | 831D29631AD2C31D008FF67F /* Build configuration list for PBXNativeTarget "QView" */ = { 420 | isa = XCConfigurationList; 421 | buildConfigurations = ( 422 | 831D29641AD2C31D008FF67F /* Debug */, 423 | 831D29651AD2C31D008FF67F /* Release */, 424 | ); 425 | defaultConfigurationIsVisible = 0; 426 | defaultConfigurationName = Release; 427 | }; 428 | /* End XCConfigurationList section */ 429 | }; 430 | rootObject = 831D293E1AD2C31D008FF67F /* Project object */; 431 | } 432 | --------------------------------------------------------------------------------