├── .gitignore ├── AppDelegate.h ├── AppDelegate.m ├── Cocoa Web App.xcodeproj ├── project.pbxproj ├── rbates.mode1v3 └── rbates.pbxuser ├── Cocoa_Web_App-Info.plist ├── Cocoa_Web_App_Prefix.pch ├── English.lproj ├── InfoPlist.strings └── MainMenu.xib ├── LICENSE ├── README ├── apple.png ├── dogcow.png ├── index.html ├── mac.png └── main.m /.gitignore: -------------------------------------------------------------------------------- 1 | build/**/* -------------------------------------------------------------------------------- /AppDelegate.h: -------------------------------------------------------------------------------- 1 | #import 2 | #import 3 | 4 | @interface AppDelegate : NSObject { 5 | IBOutlet id webView; 6 | IBOutlet NSWindow *window; 7 | } 8 | 9 | - (IBAction)bringMainWindowToFront:(id)sender; 10 | - (void)changeIcon:(NSString *)iconName; 11 | - (NSString *)appURL; 12 | - (IBAction)changeGreeting:(id)sender; 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /AppDelegate.m: -------------------------------------------------------------------------------- 1 | #import "AppDelegate.h" 2 | 3 | @implementation AppDelegate 4 | 5 | - (void)applicationDidFinishLaunching:(NSNotification *)aNotification { 6 | [webView setMainFrameURL:[self appURL]]; 7 | } 8 | 9 | - (BOOL)applicationShouldHandleReopen:(NSApplication *)theApplication hasVisibleWindows:(BOOL)flag { 10 | [self bringMainWindowToFront:nil]; 11 | return YES; 12 | } 13 | 14 | - (IBAction)bringMainWindowToFront:(id)sender { 15 | [window makeKeyAndOrderFront:sender]; 16 | if ([[webView mainFrameURL] isEqualTo:@""]) { 17 | [webView setMainFrameURL:[self appURL]]; 18 | } 19 | } 20 | 21 | - (void)windowWillClose:(NSNotification *)notification { 22 | [webView setMainFrameURL:@""]; 23 | } 24 | 25 | // Make every method in this class available to javascript 26 | // This may be a security risk so you may want to add logic to 27 | // restrict which methods are accessible 28 | + (BOOL)isSelectorExcludedFromWebScript:(SEL)aSelector { return NO; } 29 | 30 | // Here we grab the URL to the bundled index.html document. 31 | // Normally it would be the URL to your web app such as @"http://example.com". 32 | - (NSString *)appURL { 33 | return [[[NSBundle mainBundle] URLForResource:@"index" withExtension:@"html"] absoluteString]; 34 | } 35 | 36 | 37 | // Change the application's icon in the dock, this is triggered from JavaScript 38 | - (void)changeIcon:(NSString *)iconName { 39 | [NSApp setApplicationIconImage:[NSImage imageNamed:iconName]]; 40 | } 41 | 42 | 43 | // Changes the greeting message by executing a function in JavaScript. 44 | // This is triggered from the Change Greeting menu item. 45 | - (IBAction)changeGreeting:(id)sender { 46 | [[webView windowScriptObject] evaluateWebScript:@"changeGreeting('Hello from Objective-C!')"]; 47 | } 48 | 49 | // This delegate method gets triggered every time the page loads, but before the JavaScript runs 50 | - (void)webView:(WebView *)webView windowScriptObjectAvailable:(WebScriptObject *)windowScriptObject { 51 | // Allow this class to be usable through the "window.app" object in JavaScript 52 | // This could be any Objective-C class 53 | [windowScriptObject setValue:self forKey:@"app"]; 54 | } 55 | 56 | @end 57 | -------------------------------------------------------------------------------- /Cocoa Web App.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 45; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 1DDD58160DA1D0A300B32029 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1DDD58140DA1D0A300B32029 /* MainMenu.xib */; }; 11 | 256AC3DA0F4B6AC300CF3369 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 256AC3D90F4B6AC300CF3369 /* AppDelegate.m */; }; 12 | 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; }; 13 | 8D11072D0486CEB800E47090 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; }; 14 | 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; }; 15 | DC924AB51105110500E5D32F /* index.html in Resources */ = {isa = PBXBuildFile; fileRef = DC924AB41105110500E5D32F /* index.html */; }; 16 | DC924AC11105127300E5D32F /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DC924AC01105127300E5D32F /* WebKit.framework */; }; 17 | DC924B9F110515D200E5D32F /* mac.png in Resources */ = {isa = PBXBuildFile; fileRef = DC924B9E110515D200E5D32F /* mac.png */; }; 18 | DC924BA1110515D700E5D32F /* dogcow.png in Resources */ = {isa = PBXBuildFile; fileRef = DC924BA0110515D700E5D32F /* dogcow.png */; }; 19 | DC924BA3110515DD00E5D32F /* apple.png in Resources */ = {isa = PBXBuildFile; fileRef = DC924BA2110515DD00E5D32F /* apple.png */; }; 20 | /* End PBXBuildFile section */ 21 | 22 | /* Begin PBXFileReference section */ 23 | 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = ""; }; 24 | 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = ""; }; 25 | 13E42FB307B3F0F600E4EEF1 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = ""; }; 26 | 1DDD58150DA1D0A300B32029 /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/MainMenu.xib; sourceTree = ""; }; 27 | 256AC3D80F4B6AC300CF3369 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; 28 | 256AC3D90F4B6AC300CF3369 /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; 29 | 256AC3F00F4B6AF500CF3369 /* Cocoa_Web_App_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Cocoa_Web_App_Prefix.pch; sourceTree = ""; }; 30 | 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 31 | 29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = ""; }; 32 | 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = ""; }; 33 | 8D1107310486CEB800E47090 /* Cocoa_Web_App-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Cocoa_Web_App-Info.plist"; sourceTree = ""; }; 34 | 8D1107320486CEB800E47090 /* Cocoa Web App.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Cocoa Web App.app"; sourceTree = BUILT_PRODUCTS_DIR; }; 35 | DC924AB41105110500E5D32F /* index.html */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.html; path = index.html; sourceTree = ""; }; 36 | DC924AC01105127300E5D32F /* WebKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; }; 37 | DC924B9E110515D200E5D32F /* mac.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = mac.png; sourceTree = ""; }; 38 | DC924BA0110515D700E5D32F /* dogcow.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = dogcow.png; sourceTree = ""; }; 39 | DC924BA2110515DD00E5D32F /* apple.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = apple.png; sourceTree = ""; }; 40 | /* End PBXFileReference section */ 41 | 42 | /* Begin PBXFrameworksBuildPhase section */ 43 | 8D11072E0486CEB800E47090 /* Frameworks */ = { 44 | isa = PBXFrameworksBuildPhase; 45 | buildActionMask = 2147483647; 46 | files = ( 47 | 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */, 48 | DC924AC11105127300E5D32F /* WebKit.framework in Frameworks */, 49 | ); 50 | runOnlyForDeploymentPostprocessing = 0; 51 | }; 52 | /* End PBXFrameworksBuildPhase section */ 53 | 54 | /* Begin PBXGroup section */ 55 | 080E96DDFE201D6D7F000001 /* Classes */ = { 56 | isa = PBXGroup; 57 | children = ( 58 | 256AC3D80F4B6AC300CF3369 /* AppDelegate.h */, 59 | 256AC3D90F4B6AC300CF3369 /* AppDelegate.m */, 60 | ); 61 | name = Classes; 62 | sourceTree = ""; 63 | }; 64 | 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = { 65 | isa = PBXGroup; 66 | children = ( 67 | 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */, 68 | ); 69 | name = "Linked Frameworks"; 70 | sourceTree = ""; 71 | }; 72 | 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */ = { 73 | isa = PBXGroup; 74 | children = ( 75 | 29B97324FDCFA39411CA2CEA /* AppKit.framework */, 76 | 13E42FB307B3F0F600E4EEF1 /* CoreData.framework */, 77 | 29B97325FDCFA39411CA2CEA /* Foundation.framework */, 78 | DC924AC01105127300E5D32F /* WebKit.framework */, 79 | ); 80 | name = "Other Frameworks"; 81 | sourceTree = ""; 82 | }; 83 | 19C28FACFE9D520D11CA2CBB /* Products */ = { 84 | isa = PBXGroup; 85 | children = ( 86 | 8D1107320486CEB800E47090 /* Cocoa Web App.app */, 87 | ); 88 | name = Products; 89 | sourceTree = ""; 90 | }; 91 | 29B97314FDCFA39411CA2CEA /* Cocoa Web App */ = { 92 | isa = PBXGroup; 93 | children = ( 94 | 080E96DDFE201D6D7F000001 /* Classes */, 95 | 29B97315FDCFA39411CA2CEA /* Other Sources */, 96 | 29B97317FDCFA39411CA2CEA /* Resources */, 97 | 29B97323FDCFA39411CA2CEA /* Frameworks */, 98 | 19C28FACFE9D520D11CA2CBB /* Products */, 99 | ); 100 | name = "Cocoa Web App"; 101 | sourceTree = ""; 102 | }; 103 | 29B97315FDCFA39411CA2CEA /* Other Sources */ = { 104 | isa = PBXGroup; 105 | children = ( 106 | 256AC3F00F4B6AF500CF3369 /* Cocoa_Web_App_Prefix.pch */, 107 | 29B97316FDCFA39411CA2CEA /* main.m */, 108 | ); 109 | name = "Other Sources"; 110 | sourceTree = ""; 111 | }; 112 | 29B97317FDCFA39411CA2CEA /* Resources */ = { 113 | isa = PBXGroup; 114 | children = ( 115 | DC924BA2110515DD00E5D32F /* apple.png */, 116 | DC924AB41105110500E5D32F /* index.html */, 117 | DC924B9E110515D200E5D32F /* mac.png */, 118 | DC924BA0110515D700E5D32F /* dogcow.png */, 119 | 8D1107310486CEB800E47090 /* Cocoa_Web_App-Info.plist */, 120 | 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */, 121 | 1DDD58140DA1D0A300B32029 /* MainMenu.xib */, 122 | ); 123 | name = Resources; 124 | sourceTree = ""; 125 | }; 126 | 29B97323FDCFA39411CA2CEA /* Frameworks */ = { 127 | isa = PBXGroup; 128 | children = ( 129 | 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */, 130 | 1058C7A2FEA54F0111CA2CBB /* Other Frameworks */, 131 | ); 132 | name = Frameworks; 133 | sourceTree = ""; 134 | }; 135 | /* End PBXGroup section */ 136 | 137 | /* Begin PBXNativeTarget section */ 138 | 8D1107260486CEB800E47090 /* Cocoa Web App */ = { 139 | isa = PBXNativeTarget; 140 | buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "Cocoa Web App" */; 141 | buildPhases = ( 142 | 8D1107290486CEB800E47090 /* Resources */, 143 | 8D11072C0486CEB800E47090 /* Sources */, 144 | 8D11072E0486CEB800E47090 /* Frameworks */, 145 | ); 146 | buildRules = ( 147 | ); 148 | dependencies = ( 149 | ); 150 | name = "Cocoa Web App"; 151 | productInstallPath = "$(HOME)/Applications"; 152 | productName = "Cocoa Web App"; 153 | productReference = 8D1107320486CEB800E47090 /* Cocoa Web App.app */; 154 | productType = "com.apple.product-type.application"; 155 | }; 156 | /* End PBXNativeTarget section */ 157 | 158 | /* Begin PBXProject section */ 159 | 29B97313FDCFA39411CA2CEA /* Project object */ = { 160 | isa = PBXProject; 161 | buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Cocoa Web App" */; 162 | compatibilityVersion = "Xcode 3.1"; 163 | hasScannedForEncodings = 1; 164 | mainGroup = 29B97314FDCFA39411CA2CEA /* Cocoa Web App */; 165 | projectDirPath = ""; 166 | projectRoot = ""; 167 | targets = ( 168 | 8D1107260486CEB800E47090 /* Cocoa Web App */, 169 | ); 170 | }; 171 | /* End PBXProject section */ 172 | 173 | /* Begin PBXResourcesBuildPhase section */ 174 | 8D1107290486CEB800E47090 /* Resources */ = { 175 | isa = PBXResourcesBuildPhase; 176 | buildActionMask = 2147483647; 177 | files = ( 178 | 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */, 179 | 1DDD58160DA1D0A300B32029 /* MainMenu.xib in Resources */, 180 | DC924AB51105110500E5D32F /* index.html in Resources */, 181 | DC924B9F110515D200E5D32F /* mac.png in Resources */, 182 | DC924BA1110515D700E5D32F /* dogcow.png in Resources */, 183 | DC924BA3110515DD00E5D32F /* apple.png in Resources */, 184 | ); 185 | runOnlyForDeploymentPostprocessing = 0; 186 | }; 187 | /* End PBXResourcesBuildPhase section */ 188 | 189 | /* Begin PBXSourcesBuildPhase section */ 190 | 8D11072C0486CEB800E47090 /* Sources */ = { 191 | isa = PBXSourcesBuildPhase; 192 | buildActionMask = 2147483647; 193 | files = ( 194 | 8D11072D0486CEB800E47090 /* main.m in Sources */, 195 | 256AC3DA0F4B6AC300CF3369 /* AppDelegate.m in Sources */, 196 | ); 197 | runOnlyForDeploymentPostprocessing = 0; 198 | }; 199 | /* End PBXSourcesBuildPhase section */ 200 | 201 | /* Begin PBXVariantGroup section */ 202 | 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = { 203 | isa = PBXVariantGroup; 204 | children = ( 205 | 089C165DFE840E0CC02AAC07 /* English */, 206 | ); 207 | name = InfoPlist.strings; 208 | sourceTree = ""; 209 | }; 210 | 1DDD58140DA1D0A300B32029 /* MainMenu.xib */ = { 211 | isa = PBXVariantGroup; 212 | children = ( 213 | 1DDD58150DA1D0A300B32029 /* English */, 214 | ); 215 | name = MainMenu.xib; 216 | sourceTree = ""; 217 | }; 218 | /* End PBXVariantGroup section */ 219 | 220 | /* Begin XCBuildConfiguration section */ 221 | C01FCF4B08A954540054247B /* Debug */ = { 222 | isa = XCBuildConfiguration; 223 | buildSettings = { 224 | ALWAYS_SEARCH_USER_PATHS = NO; 225 | COPY_PHASE_STRIP = NO; 226 | GCC_DYNAMIC_NO_PIC = NO; 227 | GCC_ENABLE_FIX_AND_CONTINUE = YES; 228 | GCC_MODEL_TUNING = G5; 229 | GCC_OPTIMIZATION_LEVEL = 0; 230 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 231 | GCC_PREFIX_HEADER = Cocoa_Web_App_Prefix.pch; 232 | INFOPLIST_FILE = "Cocoa_Web_App-Info.plist"; 233 | INSTALL_PATH = "$(HOME)/Applications"; 234 | PRODUCT_NAME = "Cocoa Web App"; 235 | }; 236 | name = Debug; 237 | }; 238 | C01FCF4C08A954540054247B /* Release */ = { 239 | isa = XCBuildConfiguration; 240 | buildSettings = { 241 | ALWAYS_SEARCH_USER_PATHS = NO; 242 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; 243 | GCC_MODEL_TUNING = G5; 244 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 245 | GCC_PREFIX_HEADER = Cocoa_Web_App_Prefix.pch; 246 | INFOPLIST_FILE = "Cocoa_Web_App-Info.plist"; 247 | INSTALL_PATH = "$(HOME)/Applications"; 248 | PRODUCT_NAME = "Cocoa Web App"; 249 | }; 250 | name = Release; 251 | }; 252 | C01FCF4F08A954540054247B /* Debug */ = { 253 | isa = XCBuildConfiguration; 254 | buildSettings = { 255 | ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; 256 | GCC_C_LANGUAGE_STANDARD = gnu99; 257 | GCC_OPTIMIZATION_LEVEL = 0; 258 | GCC_WARN_ABOUT_RETURN_TYPE = YES; 259 | GCC_WARN_UNUSED_VARIABLE = YES; 260 | ONLY_ACTIVE_ARCH = YES; 261 | PREBINDING = NO; 262 | SDKROOT = macosx10.6; 263 | }; 264 | name = Debug; 265 | }; 266 | C01FCF5008A954540054247B /* Release */ = { 267 | isa = XCBuildConfiguration; 268 | buildSettings = { 269 | ARCHS = "$(ARCHS_STANDARD_32_64_BIT)"; 270 | GCC_C_LANGUAGE_STANDARD = gnu99; 271 | GCC_WARN_ABOUT_RETURN_TYPE = YES; 272 | GCC_WARN_UNUSED_VARIABLE = YES; 273 | PREBINDING = NO; 274 | SDKROOT = macosx10.6; 275 | }; 276 | name = Release; 277 | }; 278 | /* End XCBuildConfiguration section */ 279 | 280 | /* Begin XCConfigurationList section */ 281 | C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "Cocoa Web App" */ = { 282 | isa = XCConfigurationList; 283 | buildConfigurations = ( 284 | C01FCF4B08A954540054247B /* Debug */, 285 | C01FCF4C08A954540054247B /* Release */, 286 | ); 287 | defaultConfigurationIsVisible = 0; 288 | defaultConfigurationName = Release; 289 | }; 290 | C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Cocoa Web App" */ = { 291 | isa = XCConfigurationList; 292 | buildConfigurations = ( 293 | C01FCF4F08A954540054247B /* Debug */, 294 | C01FCF5008A954540054247B /* Release */, 295 | ); 296 | defaultConfigurationIsVisible = 0; 297 | defaultConfigurationName = Release; 298 | }; 299 | /* End XCConfigurationList section */ 300 | }; 301 | rootObject = 29B97313FDCFA39411CA2CEA /* Project object */; 302 | } 303 | -------------------------------------------------------------------------------- /Cocoa Web App.xcodeproj/rbates.mode1v3: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | ActivePerspectiveName 6 | Project 7 | AllowedModules 8 | 9 | 10 | BundleLoadPath 11 | 12 | MaxInstances 13 | n 14 | Module 15 | PBXSmartGroupTreeModule 16 | Name 17 | Groups and Files Outline View 18 | 19 | 20 | BundleLoadPath 21 | 22 | MaxInstances 23 | n 24 | Module 25 | PBXNavigatorGroup 26 | Name 27 | Editor 28 | 29 | 30 | BundleLoadPath 31 | 32 | MaxInstances 33 | n 34 | Module 35 | XCTaskListModule 36 | Name 37 | Task List 38 | 39 | 40 | BundleLoadPath 41 | 42 | MaxInstances 43 | n 44 | Module 45 | XCDetailModule 46 | Name 47 | File and Smart Group Detail Viewer 48 | 49 | 50 | BundleLoadPath 51 | 52 | MaxInstances 53 | 1 54 | Module 55 | PBXBuildResultsModule 56 | Name 57 | Detailed Build Results Viewer 58 | 59 | 60 | BundleLoadPath 61 | 62 | MaxInstances 63 | 1 64 | Module 65 | PBXProjectFindModule 66 | Name 67 | Project Batch Find Tool 68 | 69 | 70 | BundleLoadPath 71 | 72 | MaxInstances 73 | n 74 | Module 75 | XCProjectFormatConflictsModule 76 | Name 77 | Project Format Conflicts List 78 | 79 | 80 | BundleLoadPath 81 | 82 | MaxInstances 83 | n 84 | Module 85 | PBXBookmarksModule 86 | Name 87 | Bookmarks Tool 88 | 89 | 90 | BundleLoadPath 91 | 92 | MaxInstances 93 | n 94 | Module 95 | PBXClassBrowserModule 96 | Name 97 | Class Browser 98 | 99 | 100 | BundleLoadPath 101 | 102 | MaxInstances 103 | n 104 | Module 105 | PBXCVSModule 106 | Name 107 | Source Code Control Tool 108 | 109 | 110 | BundleLoadPath 111 | 112 | MaxInstances 113 | n 114 | Module 115 | PBXDebugBreakpointsModule 116 | Name 117 | Debug Breakpoints Tool 118 | 119 | 120 | BundleLoadPath 121 | 122 | MaxInstances 123 | n 124 | Module 125 | XCDockableInspector 126 | Name 127 | Inspector 128 | 129 | 130 | BundleLoadPath 131 | 132 | MaxInstances 133 | n 134 | Module 135 | PBXOpenQuicklyModule 136 | Name 137 | Open Quickly Tool 138 | 139 | 140 | BundleLoadPath 141 | 142 | MaxInstances 143 | 1 144 | Module 145 | PBXDebugSessionModule 146 | Name 147 | Debugger 148 | 149 | 150 | BundleLoadPath 151 | 152 | MaxInstances 153 | 1 154 | Module 155 | PBXDebugCLIModule 156 | Name 157 | Debug Console 158 | 159 | 160 | BundleLoadPath 161 | 162 | MaxInstances 163 | n 164 | Module 165 | XCSnapshotModule 166 | Name 167 | Snapshots Tool 168 | 169 | 170 | BundlePath 171 | /Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources 172 | Description 173 | DefaultDescriptionKey 174 | DockingSystemVisible 175 | 176 | Extension 177 | mode1v3 178 | FavBarConfig 179 | 180 | PBXProjectModuleGUID 181 | DC924A9A1104EEEE00E5D32F 182 | XCBarModuleItemNames 183 | 184 | XCBarModuleItems 185 | 186 | 187 | FirstTimeWindowDisplayed 188 | 189 | Identifier 190 | com.apple.perspectives.project.mode1v3 191 | MajorVersion 192 | 33 193 | MinorVersion 194 | 0 195 | Name 196 | Default 197 | Notifications 198 | 199 | OpenEditors 200 | 201 | PerspectiveWidths 202 | 203 | -1 204 | -1 205 | 206 | Perspectives 207 | 208 | 209 | ChosenToolbarItems 210 | 211 | active-combo-popup 212 | action 213 | NSToolbarFlexibleSpaceItem 214 | debugger-enable-breakpoints 215 | build-and-go 216 | com.apple.ide.PBXToolbarStopButton 217 | get-info 218 | NSToolbarFlexibleSpaceItem 219 | com.apple.pbx.toolbar.searchfield 220 | 221 | ControllerClassBaseName 222 | 223 | IconName 224 | WindowOfProjectWithEditor 225 | Identifier 226 | perspective.project 227 | IsVertical 228 | 229 | Layout 230 | 231 | 232 | ContentConfiguration 233 | 234 | PBXBottomSmartGroupGIDs 235 | 236 | 1C37FBAC04509CD000000102 237 | 1C37FAAC04509CD000000102 238 | 1C37FABC05509CD000000102 239 | 1C37FABC05539CD112110102 240 | E2644B35053B69B200211256 241 | 1C37FABC04509CD000100104 242 | 1CC0EA4004350EF90044410B 243 | 1CC0EA4004350EF90041110B 244 | 245 | PBXProjectModuleGUID 246 | 1CE0B1FE06471DED0097A5F4 247 | PBXProjectModuleLabel 248 | Files 249 | PBXProjectStructureProvided 250 | yes 251 | PBXSmartGroupTreeModuleColumnData 252 | 253 | PBXSmartGroupTreeModuleColumnWidthsKey 254 | 255 | 186 256 | 257 | PBXSmartGroupTreeModuleColumnsKey_v4 258 | 259 | MainColumn 260 | 261 | 262 | PBXSmartGroupTreeModuleOutlineStateKey_v7 263 | 264 | PBXSmartGroupTreeModuleOutlineStateExpansionKey 265 | 266 | 29B97314FDCFA39411CA2CEA 267 | 080E96DDFE201D6D7F000001 268 | 29B97317FDCFA39411CA2CEA 269 | 1C37FABC05509CD000000102 270 | 271 | PBXSmartGroupTreeModuleOutlineStateSelectionKey 272 | 273 | 274 | 12 275 | 5 276 | 0 277 | 278 | 279 | PBXSmartGroupTreeModuleOutlineStateVisibleRectKey 280 | {{0, 0}, {186, 606}} 281 | 282 | PBXTopSmartGroupGIDs 283 | 284 | XCIncludePerspectivesSwitch 285 | 286 | XCSharingToken 287 | com.apple.Xcode.GFSharingToken 288 | 289 | GeometryConfiguration 290 | 291 | Frame 292 | {{0, 0}, {203, 624}} 293 | GroupTreeTableConfiguration 294 | 295 | MainColumn 296 | 186 297 | 298 | RubberWindowFrame 299 | 407 363 1240 665 0 0 1680 1028 300 | 301 | Module 302 | PBXSmartGroupTreeModule 303 | Proportion 304 | 203pt 305 | 306 | 307 | Dock 308 | 309 | 310 | BecomeActive 311 | 312 | ContentConfiguration 313 | 314 | PBXProjectModuleGUID 315 | 1CE0B20306471E060097A5F4 316 | PBXProjectModuleLabel 317 | AppDelegate.m 318 | PBXSplitModuleInNavigatorKey 319 | 320 | Split0 321 | 322 | PBXProjectModuleGUID 323 | 1CE0B20406471E060097A5F4 324 | PBXProjectModuleLabel 325 | AppDelegate.m 326 | _historyCapacity 327 | 0 328 | bookmark 329 | DC4C7364110635A900A0A6C1 330 | history 331 | 332 | DC924B6C1105129000E5D32F 333 | DC924B6D1105129000E5D32F 334 | DC924BA6110517A300E5D32F 335 | DC924BA7110517A300E5D32F 336 | DC924BA8110517A300E5D32F 337 | DC924BEF1105218900E5D32F 338 | DC924BF51105223900E5D32F 339 | DC4C72F911062D4E00A0A6C1 340 | 341 | 342 | SplitCount 343 | 1 344 | 345 | StatusBarVisibility 346 | 347 | 348 | GeometryConfiguration 349 | 350 | Frame 351 | {{0, 0}, {1032, 417}} 352 | RubberWindowFrame 353 | 407 363 1240 665 0 0 1680 1028 354 | 355 | Module 356 | PBXNavigatorGroup 357 | Proportion 358 | 417pt 359 | 360 | 361 | ContentConfiguration 362 | 363 | PBXProjectModuleGUID 364 | 1CE0B20506471E060097A5F4 365 | PBXProjectModuleLabel 366 | Detail 367 | 368 | GeometryConfiguration 369 | 370 | Frame 371 | {{0, 422}, {1032, 202}} 372 | RubberWindowFrame 373 | 407 363 1240 665 0 0 1680 1028 374 | 375 | Module 376 | XCDetailModule 377 | Proportion 378 | 202pt 379 | 380 | 381 | Proportion 382 | 1032pt 383 | 384 | 385 | Name 386 | Project 387 | ServiceClasses 388 | 389 | XCModuleDock 390 | PBXSmartGroupTreeModule 391 | XCModuleDock 392 | PBXNavigatorGroup 393 | XCDetailModule 394 | 395 | TableOfContents 396 | 397 | DC4C73511106356200A0A6C1 398 | 1CE0B1FE06471DED0097A5F4 399 | DC4C73521106356200A0A6C1 400 | 1CE0B20306471E060097A5F4 401 | 1CE0B20506471E060097A5F4 402 | 403 | ToolbarConfigUserDefaultsMinorVersion 404 | 2 405 | ToolbarConfiguration 406 | xcode.toolbar.config.defaultV3 407 | 408 | 409 | ControllerClassBaseName 410 | 411 | IconName 412 | WindowOfProject 413 | Identifier 414 | perspective.morph 415 | IsVertical 416 | 0 417 | Layout 418 | 419 | 420 | BecomeActive 421 | 1 422 | ContentConfiguration 423 | 424 | PBXBottomSmartGroupGIDs 425 | 426 | 1C37FBAC04509CD000000102 427 | 1C37FAAC04509CD000000102 428 | 1C08E77C0454961000C914BD 429 | 1C37FABC05509CD000000102 430 | 1C37FABC05539CD112110102 431 | E2644B35053B69B200211256 432 | 1C37FABC04509CD000100104 433 | 1CC0EA4004350EF90044410B 434 | 1CC0EA4004350EF90041110B 435 | 436 | PBXProjectModuleGUID 437 | 11E0B1FE06471DED0097A5F4 438 | PBXProjectModuleLabel 439 | Files 440 | PBXProjectStructureProvided 441 | yes 442 | PBXSmartGroupTreeModuleColumnData 443 | 444 | PBXSmartGroupTreeModuleColumnWidthsKey 445 | 446 | 186 447 | 448 | PBXSmartGroupTreeModuleColumnsKey_v4 449 | 450 | MainColumn 451 | 452 | 453 | PBXSmartGroupTreeModuleOutlineStateKey_v7 454 | 455 | PBXSmartGroupTreeModuleOutlineStateExpansionKey 456 | 457 | 29B97314FDCFA39411CA2CEA 458 | 1C37FABC05509CD000000102 459 | 460 | PBXSmartGroupTreeModuleOutlineStateSelectionKey 461 | 462 | 463 | 0 464 | 465 | 466 | PBXSmartGroupTreeModuleOutlineStateVisibleRectKey 467 | {{0, 0}, {186, 337}} 468 | 469 | PBXTopSmartGroupGIDs 470 | 471 | XCIncludePerspectivesSwitch 472 | 1 473 | XCSharingToken 474 | com.apple.Xcode.GFSharingToken 475 | 476 | GeometryConfiguration 477 | 478 | Frame 479 | {{0, 0}, {203, 355}} 480 | GroupTreeTableConfiguration 481 | 482 | MainColumn 483 | 186 484 | 485 | RubberWindowFrame 486 | 373 269 690 397 0 0 1440 878 487 | 488 | Module 489 | PBXSmartGroupTreeModule 490 | Proportion 491 | 100% 492 | 493 | 494 | Name 495 | Morph 496 | PreferredWidth 497 | 300 498 | ServiceClasses 499 | 500 | XCModuleDock 501 | PBXSmartGroupTreeModule 502 | 503 | TableOfContents 504 | 505 | 11E0B1FE06471DED0097A5F4 506 | 507 | ToolbarConfiguration 508 | xcode.toolbar.config.default.shortV3 509 | 510 | 511 | PerspectivesBarVisible 512 | 513 | ShelfIsVisible 514 | 515 | SourceDescription 516 | file at '/Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources/XCPerspectivesSpecificationMode1.xcperspec' 517 | StatusbarIsVisible 518 | 519 | TimeStamp 520 | 0.0 521 | ToolbarConfigUserDefaultsMinorVersion 522 | 2 523 | ToolbarDisplayMode 524 | 1 525 | ToolbarIsVisible 526 | 527 | ToolbarSizeMode 528 | 1 529 | Type 530 | Perspectives 531 | UpdateMessage 532 | The Default Workspace in this version of Xcode now includes support to hide and show the detail view (what has been referred to as the "Metro-Morph" feature). You must discard your current Default Workspace settings and update to the latest Default Workspace in order to gain this feature. Do you wish to update to the latest Workspace defaults for project '%@'? 533 | WindowJustification 534 | 5 535 | WindowOrderList 536 | 537 | DC4C7366110635A900A0A6C1 538 | DC4C7367110635A900A0A6C1 539 | 1C78EAAD065D492600B07095 540 | 1CD10A99069EF8BA00B06720 541 | DC924A9B1104EEEE00E5D32F 542 | /Users/rbates/code/cocoa-web-app/Cocoa Web App.xcodeproj 543 | 544 | WindowString 545 | 407 363 1240 665 0 0 1680 1028 546 | WindowToolsV3 547 | 548 | 549 | FirstTimeWindowDisplayed 550 | 551 | Identifier 552 | windowTool.build 553 | IsVertical 554 | 555 | Layout 556 | 557 | 558 | Dock 559 | 560 | 561 | ContentConfiguration 562 | 563 | PBXProjectModuleGUID 564 | 1CD0528F0623707200166675 565 | PBXProjectModuleLabel 566 | 567 | StatusBarVisibility 568 | 569 | 570 | GeometryConfiguration 571 | 572 | Frame 573 | {{0, 0}, {500, 218}} 574 | RubberWindowFrame 575 | 702 235 500 500 0 0 1680 1028 576 | 577 | Module 578 | PBXNavigatorGroup 579 | Proportion 580 | 218pt 581 | 582 | 583 | ContentConfiguration 584 | 585 | PBXProjectModuleGUID 586 | XCMainBuildResultsModuleGUID 587 | PBXProjectModuleLabel 588 | Build Results 589 | XCBuildResultsTrigger_Collapse 590 | 1021 591 | XCBuildResultsTrigger_Open 592 | 1011 593 | 594 | GeometryConfiguration 595 | 596 | Frame 597 | {{0, 223}, {500, 236}} 598 | RubberWindowFrame 599 | 702 235 500 500 0 0 1680 1028 600 | 601 | Module 602 | PBXBuildResultsModule 603 | Proportion 604 | 236pt 605 | 606 | 607 | Proportion 608 | 459pt 609 | 610 | 611 | Name 612 | Build Results 613 | ServiceClasses 614 | 615 | PBXBuildResultsModule 616 | 617 | StatusbarIsVisible 618 | 619 | TableOfContents 620 | 621 | DC924A9B1104EEEE00E5D32F 622 | DC4C73531106356200A0A6C1 623 | 1CD0528F0623707200166675 624 | XCMainBuildResultsModuleGUID 625 | 626 | ToolbarConfiguration 627 | xcode.toolbar.config.buildV3 628 | WindowContentMinSize 629 | 486 300 630 | WindowString 631 | 702 235 500 500 0 0 1680 1028 632 | WindowToolGUID 633 | DC924A9B1104EEEE00E5D32F 634 | WindowToolIsVisible 635 | 636 | 637 | 638 | FirstTimeWindowDisplayed 639 | 640 | Identifier 641 | windowTool.debugger 642 | IsVertical 643 | 644 | Layout 645 | 646 | 647 | Dock 648 | 649 | 650 | ContentConfiguration 651 | 652 | Debugger 653 | 654 | HorizontalSplitView 655 | 656 | _collapsingFrameDimension 657 | 0.0 658 | _indexOfCollapsedView 659 | 0 660 | _percentageOfCollapsedView 661 | 0.0 662 | isCollapsed 663 | yes 664 | sizes 665 | 666 | {{0, 0}, {316, 198}} 667 | {{316, 0}, {378, 198}} 668 | 669 | 670 | VerticalSplitView 671 | 672 | _collapsingFrameDimension 673 | 0.0 674 | _indexOfCollapsedView 675 | 0 676 | _percentageOfCollapsedView 677 | 0.0 678 | isCollapsed 679 | yes 680 | sizes 681 | 682 | {{0, 0}, {694, 198}} 683 | {{0, 198}, {694, 183}} 684 | 685 | 686 | 687 | LauncherConfigVersion 688 | 8 689 | PBXProjectModuleGUID 690 | 1C162984064C10D400B95A72 691 | PBXProjectModuleLabel 692 | Debug - GLUTExamples (Underwater) 693 | 694 | GeometryConfiguration 695 | 696 | DebugConsoleVisible 697 | None 698 | DebugConsoleWindowFrame 699 | {{200, 200}, {500, 300}} 700 | DebugSTDIOWindowFrame 701 | {{200, 200}, {500, 300}} 702 | Frame 703 | {{0, 0}, {694, 381}} 704 | PBXDebugSessionStackFrameViewKey 705 | 706 | DebugVariablesTableConfiguration 707 | 708 | Name 709 | 120 710 | Value 711 | 85 712 | Summary 713 | 148 714 | 715 | Frame 716 | {{316, 0}, {378, 198}} 717 | RubberWindowFrame 718 | 541 583 694 422 0 0 1680 1028 719 | 720 | RubberWindowFrame 721 | 541 583 694 422 0 0 1680 1028 722 | 723 | Module 724 | PBXDebugSessionModule 725 | Proportion 726 | 381pt 727 | 728 | 729 | Proportion 730 | 381pt 731 | 732 | 733 | Name 734 | Debugger 735 | ServiceClasses 736 | 737 | PBXDebugSessionModule 738 | 739 | StatusbarIsVisible 740 | 741 | TableOfContents 742 | 743 | 1CD10A99069EF8BA00B06720 744 | DC4C73541106356200A0A6C1 745 | 1C162984064C10D400B95A72 746 | DC4C73551106356200A0A6C1 747 | DC4C73561106356200A0A6C1 748 | DC4C73571106356200A0A6C1 749 | DC4C73581106356200A0A6C1 750 | DC4C73591106356200A0A6C1 751 | 752 | ToolbarConfiguration 753 | xcode.toolbar.config.debugV3 754 | WindowString 755 | 541 583 694 422 0 0 1680 1028 756 | WindowToolGUID 757 | 1CD10A99069EF8BA00B06720 758 | WindowToolIsVisible 759 | 760 | 761 | 762 | Identifier 763 | windowTool.find 764 | Layout 765 | 766 | 767 | Dock 768 | 769 | 770 | Dock 771 | 772 | 773 | ContentConfiguration 774 | 775 | PBXProjectModuleGUID 776 | 1CDD528C0622207200134675 777 | PBXProjectModuleLabel 778 | <No Editor> 779 | PBXSplitModuleInNavigatorKey 780 | 781 | Split0 782 | 783 | PBXProjectModuleGUID 784 | 1CD0528D0623707200166675 785 | 786 | SplitCount 787 | 1 788 | 789 | StatusBarVisibility 790 | 1 791 | 792 | GeometryConfiguration 793 | 794 | Frame 795 | {{0, 0}, {781, 167}} 796 | RubberWindowFrame 797 | 62 385 781 470 0 0 1440 878 798 | 799 | Module 800 | PBXNavigatorGroup 801 | Proportion 802 | 781pt 803 | 804 | 805 | Proportion 806 | 50% 807 | 808 | 809 | BecomeActive 810 | 1 811 | ContentConfiguration 812 | 813 | PBXProjectModuleGUID 814 | 1CD0528E0623707200166675 815 | PBXProjectModuleLabel 816 | Project Find 817 | 818 | GeometryConfiguration 819 | 820 | Frame 821 | {{8, 0}, {773, 254}} 822 | RubberWindowFrame 823 | 62 385 781 470 0 0 1440 878 824 | 825 | Module 826 | PBXProjectFindModule 827 | Proportion 828 | 50% 829 | 830 | 831 | Proportion 832 | 428pt 833 | 834 | 835 | Name 836 | Project Find 837 | ServiceClasses 838 | 839 | PBXProjectFindModule 840 | 841 | StatusbarIsVisible 842 | 1 843 | TableOfContents 844 | 845 | 1C530D57069F1CE1000CFCEE 846 | 1C530D58069F1CE1000CFCEE 847 | 1C530D59069F1CE1000CFCEE 848 | 1CDD528C0622207200134675 849 | 1C530D5A069F1CE1000CFCEE 850 | 1CE0B1FE06471DED0097A5F4 851 | 1CD0528E0623707200166675 852 | 853 | WindowString 854 | 62 385 781 470 0 0 1440 878 855 | WindowToolGUID 856 | 1C530D57069F1CE1000CFCEE 857 | WindowToolIsVisible 858 | 0 859 | 860 | 861 | Identifier 862 | MENUSEPARATOR 863 | 864 | 865 | FirstTimeWindowDisplayed 866 | 867 | Identifier 868 | windowTool.debuggerConsole 869 | IsVertical 870 | 871 | Layout 872 | 873 | 874 | Dock 875 | 876 | 877 | ContentConfiguration 878 | 879 | PBXProjectModuleGUID 880 | 1C78EAAC065D492600B07095 881 | PBXProjectModuleLabel 882 | Debugger Console 883 | 884 | GeometryConfiguration 885 | 886 | Frame 887 | {{0, 0}, {1015, 362}} 888 | RubberWindowFrame 889 | 607 625 1015 403 0 0 1680 1028 890 | 891 | Module 892 | PBXDebugCLIModule 893 | Proportion 894 | 362pt 895 | 896 | 897 | Proportion 898 | 362pt 899 | 900 | 901 | Name 902 | Debugger Console 903 | ServiceClasses 904 | 905 | PBXDebugCLIModule 906 | 907 | StatusbarIsVisible 908 | 909 | TableOfContents 910 | 911 | 1C78EAAD065D492600B07095 912 | DC4C7365110635A900A0A6C1 913 | 1C78EAAC065D492600B07095 914 | 915 | ToolbarConfiguration 916 | xcode.toolbar.config.consoleV3 917 | WindowString 918 | 607 625 1015 403 0 0 1680 1028 919 | WindowToolGUID 920 | 1C78EAAD065D492600B07095 921 | WindowToolIsVisible 922 | 923 | 924 | 925 | Identifier 926 | windowTool.snapshots 927 | Layout 928 | 929 | 930 | Dock 931 | 932 | 933 | Module 934 | XCSnapshotModule 935 | Proportion 936 | 100% 937 | 938 | 939 | Proportion 940 | 100% 941 | 942 | 943 | Name 944 | Snapshots 945 | ServiceClasses 946 | 947 | XCSnapshotModule 948 | 949 | StatusbarIsVisible 950 | Yes 951 | ToolbarConfiguration 952 | xcode.toolbar.config.snapshots 953 | WindowString 954 | 315 824 300 550 0 0 1440 878 955 | WindowToolIsVisible 956 | Yes 957 | 958 | 959 | Identifier 960 | windowTool.scm 961 | Layout 962 | 963 | 964 | Dock 965 | 966 | 967 | ContentConfiguration 968 | 969 | PBXProjectModuleGUID 970 | 1C78EAB2065D492600B07095 971 | PBXProjectModuleLabel 972 | <No Editor> 973 | PBXSplitModuleInNavigatorKey 974 | 975 | Split0 976 | 977 | PBXProjectModuleGUID 978 | 1C78EAB3065D492600B07095 979 | 980 | SplitCount 981 | 1 982 | 983 | StatusBarVisibility 984 | 1 985 | 986 | GeometryConfiguration 987 | 988 | Frame 989 | {{0, 0}, {452, 0}} 990 | RubberWindowFrame 991 | 743 379 452 308 0 0 1280 1002 992 | 993 | Module 994 | PBXNavigatorGroup 995 | Proportion 996 | 0pt 997 | 998 | 999 | BecomeActive 1000 | 1 1001 | ContentConfiguration 1002 | 1003 | PBXProjectModuleGUID 1004 | 1CD052920623707200166675 1005 | PBXProjectModuleLabel 1006 | SCM 1007 | 1008 | GeometryConfiguration 1009 | 1010 | ConsoleFrame 1011 | {{0, 259}, {452, 0}} 1012 | Frame 1013 | {{0, 7}, {452, 259}} 1014 | RubberWindowFrame 1015 | 743 379 452 308 0 0 1280 1002 1016 | TableConfiguration 1017 | 1018 | Status 1019 | 30 1020 | FileName 1021 | 199 1022 | Path 1023 | 197.0950012207031 1024 | 1025 | TableFrame 1026 | {{0, 0}, {452, 250}} 1027 | 1028 | Module 1029 | PBXCVSModule 1030 | Proportion 1031 | 262pt 1032 | 1033 | 1034 | Proportion 1035 | 266pt 1036 | 1037 | 1038 | Name 1039 | SCM 1040 | ServiceClasses 1041 | 1042 | PBXCVSModule 1043 | 1044 | StatusbarIsVisible 1045 | 1 1046 | TableOfContents 1047 | 1048 | 1C78EAB4065D492600B07095 1049 | 1C78EAB5065D492600B07095 1050 | 1C78EAB2065D492600B07095 1051 | 1CD052920623707200166675 1052 | 1053 | ToolbarConfiguration 1054 | xcode.toolbar.config.scm 1055 | WindowString 1056 | 743 379 452 308 0 0 1280 1002 1057 | 1058 | 1059 | Identifier 1060 | windowTool.breakpoints 1061 | IsVertical 1062 | 0 1063 | Layout 1064 | 1065 | 1066 | Dock 1067 | 1068 | 1069 | BecomeActive 1070 | 1 1071 | ContentConfiguration 1072 | 1073 | PBXBottomSmartGroupGIDs 1074 | 1075 | 1C77FABC04509CD000000102 1076 | 1077 | PBXProjectModuleGUID 1078 | 1CE0B1FE06471DED0097A5F4 1079 | PBXProjectModuleLabel 1080 | Files 1081 | PBXProjectStructureProvided 1082 | no 1083 | PBXSmartGroupTreeModuleColumnData 1084 | 1085 | PBXSmartGroupTreeModuleColumnWidthsKey 1086 | 1087 | 168 1088 | 1089 | PBXSmartGroupTreeModuleColumnsKey_v4 1090 | 1091 | MainColumn 1092 | 1093 | 1094 | PBXSmartGroupTreeModuleOutlineStateKey_v7 1095 | 1096 | PBXSmartGroupTreeModuleOutlineStateExpansionKey 1097 | 1098 | 1C77FABC04509CD000000102 1099 | 1100 | PBXSmartGroupTreeModuleOutlineStateSelectionKey 1101 | 1102 | 1103 | 0 1104 | 1105 | 1106 | PBXSmartGroupTreeModuleOutlineStateVisibleRectKey 1107 | {{0, 0}, {168, 350}} 1108 | 1109 | PBXTopSmartGroupGIDs 1110 | 1111 | XCIncludePerspectivesSwitch 1112 | 0 1113 | 1114 | GeometryConfiguration 1115 | 1116 | Frame 1117 | {{0, 0}, {185, 368}} 1118 | GroupTreeTableConfiguration 1119 | 1120 | MainColumn 1121 | 168 1122 | 1123 | RubberWindowFrame 1124 | 315 424 744 409 0 0 1440 878 1125 | 1126 | Module 1127 | PBXSmartGroupTreeModule 1128 | Proportion 1129 | 185pt 1130 | 1131 | 1132 | ContentConfiguration 1133 | 1134 | PBXProjectModuleGUID 1135 | 1CA1AED706398EBD00589147 1136 | PBXProjectModuleLabel 1137 | Detail 1138 | 1139 | GeometryConfiguration 1140 | 1141 | Frame 1142 | {{190, 0}, {554, 368}} 1143 | RubberWindowFrame 1144 | 315 424 744 409 0 0 1440 878 1145 | 1146 | Module 1147 | XCDetailModule 1148 | Proportion 1149 | 554pt 1150 | 1151 | 1152 | Proportion 1153 | 368pt 1154 | 1155 | 1156 | MajorVersion 1157 | 3 1158 | MinorVersion 1159 | 0 1160 | Name 1161 | Breakpoints 1162 | ServiceClasses 1163 | 1164 | PBXSmartGroupTreeModule 1165 | XCDetailModule 1166 | 1167 | StatusbarIsVisible 1168 | 1 1169 | TableOfContents 1170 | 1171 | 1CDDB66807F98D9800BB5817 1172 | 1CDDB66907F98D9800BB5817 1173 | 1CE0B1FE06471DED0097A5F4 1174 | 1CA1AED706398EBD00589147 1175 | 1176 | ToolbarConfiguration 1177 | xcode.toolbar.config.breakpointsV3 1178 | WindowString 1179 | 315 424 744 409 0 0 1440 878 1180 | WindowToolGUID 1181 | 1CDDB66807F98D9800BB5817 1182 | WindowToolIsVisible 1183 | 1 1184 | 1185 | 1186 | Identifier 1187 | windowTool.debugAnimator 1188 | Layout 1189 | 1190 | 1191 | Dock 1192 | 1193 | 1194 | Module 1195 | PBXNavigatorGroup 1196 | Proportion 1197 | 100% 1198 | 1199 | 1200 | Proportion 1201 | 100% 1202 | 1203 | 1204 | Name 1205 | Debug Visualizer 1206 | ServiceClasses 1207 | 1208 | PBXNavigatorGroup 1209 | 1210 | StatusbarIsVisible 1211 | 1 1212 | ToolbarConfiguration 1213 | xcode.toolbar.config.debugAnimatorV3 1214 | WindowString 1215 | 100 100 700 500 0 0 1280 1002 1216 | 1217 | 1218 | Identifier 1219 | windowTool.bookmarks 1220 | Layout 1221 | 1222 | 1223 | Dock 1224 | 1225 | 1226 | Module 1227 | PBXBookmarksModule 1228 | Proportion 1229 | 100% 1230 | 1231 | 1232 | Proportion 1233 | 100% 1234 | 1235 | 1236 | Name 1237 | Bookmarks 1238 | ServiceClasses 1239 | 1240 | PBXBookmarksModule 1241 | 1242 | StatusbarIsVisible 1243 | 0 1244 | WindowString 1245 | 538 42 401 187 0 0 1280 1002 1246 | 1247 | 1248 | Identifier 1249 | windowTool.projectFormatConflicts 1250 | Layout 1251 | 1252 | 1253 | Dock 1254 | 1255 | 1256 | Module 1257 | XCProjectFormatConflictsModule 1258 | Proportion 1259 | 100% 1260 | 1261 | 1262 | Proportion 1263 | 100% 1264 | 1265 | 1266 | Name 1267 | Project Format Conflicts 1268 | ServiceClasses 1269 | 1270 | XCProjectFormatConflictsModule 1271 | 1272 | StatusbarIsVisible 1273 | 0 1274 | WindowContentMinSize 1275 | 450 300 1276 | WindowString 1277 | 50 850 472 307 0 0 1440 877 1278 | 1279 | 1280 | Identifier 1281 | windowTool.classBrowser 1282 | Layout 1283 | 1284 | 1285 | Dock 1286 | 1287 | 1288 | BecomeActive 1289 | 1 1290 | ContentConfiguration 1291 | 1292 | OptionsSetName 1293 | Hierarchy, all classes 1294 | PBXProjectModuleGUID 1295 | 1CA6456E063B45B4001379D8 1296 | PBXProjectModuleLabel 1297 | Class Browser - NSObject 1298 | 1299 | GeometryConfiguration 1300 | 1301 | ClassesFrame 1302 | {{0, 0}, {374, 96}} 1303 | ClassesTreeTableConfiguration 1304 | 1305 | PBXClassNameColumnIdentifier 1306 | 208 1307 | PBXClassBookColumnIdentifier 1308 | 22 1309 | 1310 | Frame 1311 | {{0, 0}, {630, 331}} 1312 | MembersFrame 1313 | {{0, 105}, {374, 395}} 1314 | MembersTreeTableConfiguration 1315 | 1316 | PBXMemberTypeIconColumnIdentifier 1317 | 22 1318 | PBXMemberNameColumnIdentifier 1319 | 216 1320 | PBXMemberTypeColumnIdentifier 1321 | 97 1322 | PBXMemberBookColumnIdentifier 1323 | 22 1324 | 1325 | PBXModuleWindowStatusBarHidden2 1326 | 1 1327 | RubberWindowFrame 1328 | 385 179 630 352 0 0 1440 878 1329 | 1330 | Module 1331 | PBXClassBrowserModule 1332 | Proportion 1333 | 332pt 1334 | 1335 | 1336 | Proportion 1337 | 332pt 1338 | 1339 | 1340 | Name 1341 | Class Browser 1342 | ServiceClasses 1343 | 1344 | PBXClassBrowserModule 1345 | 1346 | StatusbarIsVisible 1347 | 0 1348 | TableOfContents 1349 | 1350 | 1C0AD2AF069F1E9B00FABCE6 1351 | 1C0AD2B0069F1E9B00FABCE6 1352 | 1CA6456E063B45B4001379D8 1353 | 1354 | ToolbarConfiguration 1355 | xcode.toolbar.config.classbrowser 1356 | WindowString 1357 | 385 179 630 352 0 0 1440 878 1358 | WindowToolGUID 1359 | 1C0AD2AF069F1E9B00FABCE6 1360 | WindowToolIsVisible 1361 | 0 1362 | 1363 | 1364 | Identifier 1365 | windowTool.refactoring 1366 | IncludeInToolsMenu 1367 | 0 1368 | Layout 1369 | 1370 | 1371 | Dock 1372 | 1373 | 1374 | BecomeActive 1375 | 1 1376 | GeometryConfiguration 1377 | 1378 | Frame 1379 | {0, 0}, {500, 335} 1380 | RubberWindowFrame 1381 | {0, 0}, {500, 335} 1382 | 1383 | Module 1384 | XCRefactoringModule 1385 | Proportion 1386 | 100% 1387 | 1388 | 1389 | Proportion 1390 | 100% 1391 | 1392 | 1393 | Name 1394 | Refactoring 1395 | ServiceClasses 1396 | 1397 | XCRefactoringModule 1398 | 1399 | WindowString 1400 | 200 200 500 356 0 0 1920 1200 1401 | 1402 | 1403 | 1404 | 1405 | -------------------------------------------------------------------------------- /Cocoa Web App.xcodeproj/rbates.pbxuser: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | 089C165DFE840E0CC02AAC07 /* English */ = { 4 | uiCtxt = { 5 | sepNavIntBoundsRect = "{{0, 0}, {691, 559}}"; 6 | sepNavSelRange = "{0, 0}"; 7 | sepNavVisRange = "{0, 45}"; 8 | }; 9 | }; 10 | 256AC3D80F4B6AC300CF3369 /* AppDelegate.h */ = { 11 | uiCtxt = { 12 | sepNavIntBoundsRect = "{{0, 0}, {971, 398}}"; 13 | sepNavSelRange = "{319, 0}"; 14 | sepNavVisRange = "{0, 319}"; 15 | }; 16 | }; 17 | 256AC3D90F4B6AC300CF3369 /* AppDelegate.m */ = { 18 | uiCtxt = { 19 | sepNavIntBoundsRect = "{{0, 0}, {971, 741}}"; 20 | sepNavSelRange = "{1198, 0}"; 21 | sepNavVisRange = "{599, 1327}"; 22 | }; 23 | }; 24 | 29B97313FDCFA39411CA2CEA /* Project object */ = { 25 | activeBuildConfigurationName = Debug; 26 | activeExecutable = DC924A8C1104EEEB00E5D32F /* Cocoa Web App */; 27 | activeTarget = 8D1107260486CEB800E47090 /* Cocoa Web App */; 28 | addToTargets = ( 29 | 8D1107260486CEB800E47090 /* Cocoa Web App */, 30 | ); 31 | codeSenseManager = DC924A9E1104EEEE00E5D32F /* Code sense */; 32 | executables = ( 33 | DC924A8C1104EEEB00E5D32F /* Cocoa Web App */, 34 | ); 35 | perUserDictionary = { 36 | PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = { 37 | PBXFileTableDataSourceColumnSortingDirectionKey = "-1"; 38 | PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID; 39 | PBXFileTableDataSourceColumnWidthsKey = ( 40 | 20, 41 | 793, 42 | 20, 43 | 48, 44 | 43, 45 | 43, 46 | 20, 47 | ); 48 | PBXFileTableDataSourceColumnsKey = ( 49 | PBXFileDataSource_FiletypeID, 50 | PBXFileDataSource_Filename_ColumnID, 51 | PBXFileDataSource_Built_ColumnID, 52 | PBXFileDataSource_ObjectSize_ColumnID, 53 | PBXFileDataSource_Errors_ColumnID, 54 | PBXFileDataSource_Warnings_ColumnID, 55 | PBXFileDataSource_Target_ColumnID, 56 | ); 57 | }; 58 | PBXPerProjectTemplateStateSaveDate = 285619541; 59 | PBXWorkspaceStateSaveDate = 285619541; 60 | }; 61 | perUserProjectItems = { 62 | DC4C72F911062D4E00A0A6C1 /* PBXTextBookmark */ = DC4C72F911062D4E00A0A6C1 /* PBXTextBookmark */; 63 | DC4C7364110635A900A0A6C1 /* PBXTextBookmark */ = DC4C7364110635A900A0A6C1 /* PBXTextBookmark */; 64 | DC924B6C1105129000E5D32F /* PlistBookmark */ = DC924B6C1105129000E5D32F /* PlistBookmark */; 65 | DC924B6D1105129000E5D32F /* PBXTextBookmark */ = DC924B6D1105129000E5D32F /* PBXTextBookmark */; 66 | DC924BA6110517A300E5D32F /* PBXBookmark */ = DC924BA6110517A300E5D32F /* PBXBookmark */; 67 | DC924BA7110517A300E5D32F /* PBXBookmark */ = DC924BA7110517A300E5D32F /* PBXBookmark */; 68 | DC924BA8110517A300E5D32F /* PBXBookmark */ = DC924BA8110517A300E5D32F /* PBXBookmark */; 69 | DC924BEF1105218900E5D32F /* PBXTextBookmark */ = DC924BEF1105218900E5D32F /* PBXTextBookmark */; 70 | DC924BF51105223900E5D32F /* PBXTextBookmark */ = DC924BF51105223900E5D32F /* PBXTextBookmark */; 71 | }; 72 | sourceControlManager = DC924A9D1104EEEE00E5D32F /* Source Control */; 73 | userBuildSettings = { 74 | }; 75 | }; 76 | 8D1107260486CEB800E47090 /* Cocoa Web App */ = { 77 | activeExec = 0; 78 | executables = ( 79 | DC924A8C1104EEEB00E5D32F /* Cocoa Web App */, 80 | ); 81 | }; 82 | DC4C72F911062D4E00A0A6C1 /* PBXTextBookmark */ = { 83 | isa = PBXTextBookmark; 84 | fRef = 256AC3D90F4B6AC300CF3369 /* AppDelegate.m */; 85 | name = "AppDelegate.m: 47"; 86 | rLen = 0; 87 | rLoc = 1412; 88 | rType = 0; 89 | vrLen = 1051; 90 | vrLoc = 687; 91 | }; 92 | DC4C7364110635A900A0A6C1 /* PBXTextBookmark */ = { 93 | isa = PBXTextBookmark; 94 | fRef = 256AC3D90F4B6AC300CF3369 /* AppDelegate.m */; 95 | name = "AppDelegate.m: 38"; 96 | rLen = 0; 97 | rLoc = 1198; 98 | rType = 0; 99 | vrLen = 1327; 100 | vrLoc = 599; 101 | }; 102 | DC924A8C1104EEEB00E5D32F /* Cocoa Web App */ = { 103 | isa = PBXExecutable; 104 | activeArgIndices = ( 105 | ); 106 | argumentStrings = ( 107 | ); 108 | autoAttachOnCrash = 1; 109 | breakpointsEnabled = 0; 110 | configStateDict = { 111 | }; 112 | customDataFormattersEnabled = 1; 113 | dataTipCustomDataFormattersEnabled = 1; 114 | dataTipShowTypeColumn = 1; 115 | dataTipSortType = 0; 116 | debuggerPlugin = GDBDebugging; 117 | disassemblyDisplayState = 0; 118 | dylibVariantSuffix = ""; 119 | enableDebugStr = 1; 120 | environmentEntries = ( 121 | ); 122 | executableSystemSymbolLevel = 0; 123 | executableUserSymbolLevel = 0; 124 | libgmallocEnabled = 0; 125 | name = "Cocoa Web App"; 126 | savedGlobals = { 127 | }; 128 | showTypeColumn = 0; 129 | sourceDirectories = ( 130 | ); 131 | }; 132 | DC924A9D1104EEEE00E5D32F /* Source Control */ = { 133 | isa = PBXSourceControlManager; 134 | fallbackIsa = XCSourceControlManager; 135 | isSCMEnabled = 0; 136 | scmConfiguration = { 137 | repositoryNamesForRoots = { 138 | "" = ""; 139 | }; 140 | }; 141 | }; 142 | DC924A9E1104EEEE00E5D32F /* Code sense */ = { 143 | isa = PBXCodeSenseManager; 144 | indexTemplatePath = ""; 145 | }; 146 | DC924AB41105110500E5D32F /* index.html */ = { 147 | uiCtxt = { 148 | sepNavIntBoundsRect = "{{0, 0}, {971, 585}}"; 149 | sepNavSelRange = "{515, 0}"; 150 | sepNavVisRange = "{521, 985}"; 151 | }; 152 | }; 153 | DC924B6C1105129000E5D32F /* PlistBookmark */ = { 154 | isa = PlistBookmark; 155 | fRef = 8D1107310486CEB800E47090 /* Cocoa_Web_App-Info.plist */; 156 | fallbackIsa = PBXBookmark; 157 | isK = 0; 158 | kPath = ( 159 | ); 160 | name = "/Users/rbates/code/cocoa-web-app/Cocoa_Web_App-Info.plist"; 161 | rLen = 0; 162 | rLoc = 9223372036854775808; 163 | }; 164 | DC924B6D1105129000E5D32F /* PBXTextBookmark */ = { 165 | isa = PBXTextBookmark; 166 | fRef = 089C165DFE840E0CC02AAC07 /* English */; 167 | name = "InfoPlist.strings: 1"; 168 | rLen = 0; 169 | rLoc = 0; 170 | rType = 0; 171 | vrLen = 45; 172 | vrLoc = 0; 173 | }; 174 | DC924BA6110517A300E5D32F /* PBXBookmark */ = { 175 | isa = PBXBookmark; 176 | fRef = DC924BA0110515D700E5D32F /* dogcow.png */; 177 | }; 178 | DC924BA7110517A300E5D32F /* PBXBookmark */ = { 179 | isa = PBXBookmark; 180 | fRef = DC924B9E110515D200E5D32F /* mac.png */; 181 | }; 182 | DC924BA8110517A300E5D32F /* PBXBookmark */ = { 183 | isa = PBXBookmark; 184 | fRef = DC924BA2110515DD00E5D32F /* apple.png */; 185 | }; 186 | DC924BEF1105218900E5D32F /* PBXTextBookmark */ = { 187 | isa = PBXTextBookmark; 188 | fRef = 256AC3D80F4B6AC300CF3369 /* AppDelegate.h */; 189 | name = "AppDelegate.h: 15"; 190 | rLen = 0; 191 | rLoc = 319; 192 | rType = 0; 193 | vrLen = 319; 194 | vrLoc = 0; 195 | }; 196 | DC924BF51105223900E5D32F /* PBXTextBookmark */ = { 197 | isa = PBXTextBookmark; 198 | fRef = DC924AB41105110500E5D32F /* index.html */; 199 | name = "index.html: 13"; 200 | rLen = 0; 201 | rLoc = 515; 202 | rType = 0; 203 | vrLen = 985; 204 | vrLoc = 521; 205 | }; 206 | } 207 | -------------------------------------------------------------------------------- /Cocoa_Web_App-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | English 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIconFile 10 | 11 | CFBundleIdentifier 12 | com.yourcompany.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleSignature 20 | ???? 21 | CFBundleShortVersionString 22 | 1.0 23 | LSMinimumSystemVersion 24 | ${MACOSX_DEPLOYMENT_TARGET} 25 | CFBundleVersion 26 | 1 27 | NSMainNibFile 28 | MainMenu 29 | NSPrincipalClass 30 | NSApplication 31 | 32 | 33 | -------------------------------------------------------------------------------- /Cocoa_Web_App_Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header for all source files of the 'Cocoa Web App' target in the 'Cocoa Web App' project 3 | // 4 | 5 | #ifdef __OBJC__ 6 | #import 7 | #endif 8 | -------------------------------------------------------------------------------- /English.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /English.lproj/MainMenu.xib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 1060 5 | 10B504 6 | 740 7 | 1038.2 8 | 437.00 9 | 10 | YES 11 | 12 | YES 13 | com.apple.InterfaceBuilder.CocoaPlugin 14 | com.apple.WebKitIBPlugin 15 | 16 | 17 | YES 18 | 740 19 | 740 20 | 21 | 22 | 23 | YES 24 | 25 | 26 | 27 | 28 | YES 29 | com.apple.InterfaceBuilder.CocoaPlugin 30 | com.apple.WebKitIBPlugin 31 | 32 | 33 | YES 34 | 35 | YES 36 | 37 | 38 | YES 39 | 40 | 41 | 42 | YES 43 | 44 | NSApplication 45 | 46 | 47 | FirstResponder 48 | 49 | 50 | NSApplication 51 | 52 | 53 | AMainMenu 54 | 55 | YES 56 | 57 | 58 | Cocoa Web App 59 | 60 | 1048576 61 | 2147483647 62 | 63 | NSImage 64 | NSMenuCheckmark 65 | 66 | 67 | NSImage 68 | NSMenuMixedState 69 | 70 | submenuAction: 71 | 72 | Cocoa Web App 73 | 74 | YES 75 | 76 | 77 | About Cocoa Web App 78 | 79 | 2147483647 80 | 81 | 82 | 83 | 84 | 85 | YES 86 | YES 87 | 88 | 89 | 1048576 90 | 2147483647 91 | 92 | 93 | 94 | 95 | 96 | Services 97 | 98 | 1048576 99 | 2147483647 100 | 101 | 102 | submenuAction: 103 | 104 | Services 105 | 106 | YES 107 | 108 | _NSServicesMenu 109 | 110 | 111 | 112 | 113 | YES 114 | YES 115 | 116 | 117 | 1048576 118 | 2147483647 119 | 120 | 121 | 122 | 123 | 124 | Hide Cocoa Web App 125 | h 126 | 1048576 127 | 2147483647 128 | 129 | 130 | 131 | 132 | 133 | Hide Others 134 | h 135 | 1572864 136 | 2147483647 137 | 138 | 139 | 140 | 141 | 142 | Show All 143 | 144 | 1048576 145 | 2147483647 146 | 147 | 148 | 149 | 150 | 151 | YES 152 | YES 153 | 154 | 155 | 1048576 156 | 2147483647 157 | 158 | 159 | 160 | 161 | 162 | Quit Cocoa Web App 163 | q 164 | 1048576 165 | 2147483647 166 | 167 | 168 | 169 | 170 | _NSAppleMenu 171 | 172 | 173 | 174 | 175 | Try Me 176 | 177 | 2147483647 178 | 179 | 180 | submenuAction: 181 | 182 | Try Me 183 | 184 | YES 185 | 186 | 187 | Change Greeting 188 | 189 | 2147483647 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | Edit 199 | 200 | 1048576 201 | 2147483647 202 | 203 | 204 | submenuAction: 205 | 206 | Edit 207 | 208 | YES 209 | 210 | 211 | Undo 212 | z 213 | 1048576 214 | 2147483647 215 | 216 | 217 | 218 | 219 | 220 | Redo 221 | Z 222 | 1179648 223 | 2147483647 224 | 225 | 226 | 227 | 228 | 229 | YES 230 | YES 231 | 232 | 233 | 1048576 234 | 2147483647 235 | 236 | 237 | 238 | 239 | 240 | Cut 241 | x 242 | 1048576 243 | 2147483647 244 | 245 | 246 | 247 | 248 | 249 | Copy 250 | c 251 | 1048576 252 | 2147483647 253 | 254 | 255 | 256 | 257 | 258 | Paste 259 | v 260 | 1048576 261 | 2147483647 262 | 263 | 264 | 265 | 266 | 267 | Paste and Match Style 268 | V 269 | 1572864 270 | 2147483647 271 | 272 | 273 | 274 | 275 | 276 | Delete 277 | 278 | 1048576 279 | 2147483647 280 | 281 | 282 | 283 | 284 | 285 | Select All 286 | a 287 | 1048576 288 | 2147483647 289 | 290 | 291 | 292 | 293 | 294 | YES 295 | YES 296 | 297 | 298 | 1048576 299 | 2147483647 300 | 301 | 302 | 303 | 304 | 305 | Find 306 | 307 | 1048576 308 | 2147483647 309 | 310 | 311 | submenuAction: 312 | 313 | Find 314 | 315 | YES 316 | 317 | 318 | Find… 319 | f 320 | 1048576 321 | 2147483647 322 | 323 | 324 | 1 325 | 326 | 327 | 328 | Find Next 329 | g 330 | 1048576 331 | 2147483647 332 | 333 | 334 | 2 335 | 336 | 337 | 338 | Find Previous 339 | G 340 | 1179648 341 | 2147483647 342 | 343 | 344 | 3 345 | 346 | 347 | 348 | Use Selection for Find 349 | e 350 | 1048576 351 | 2147483647 352 | 353 | 354 | 7 355 | 356 | 357 | 358 | Jump to Selection 359 | j 360 | 1048576 361 | 2147483647 362 | 363 | 364 | 365 | 366 | 367 | 368 | 369 | 370 | Spelling and Grammar 371 | 372 | 1048576 373 | 2147483647 374 | 375 | 376 | submenuAction: 377 | 378 | Spelling and Grammar 379 | 380 | YES 381 | 382 | 383 | Show Spelling and Grammar 384 | : 385 | 1048576 386 | 2147483647 387 | 388 | 389 | 390 | 391 | 392 | Check Document Now 393 | ; 394 | 1048576 395 | 2147483647 396 | 397 | 398 | 399 | 400 | 401 | YES 402 | YES 403 | 404 | 405 | 2147483647 406 | 407 | 408 | 409 | 410 | 411 | Check Spelling While Typing 412 | 413 | 1048576 414 | 2147483647 415 | 416 | 417 | 418 | 419 | 420 | Check Grammar With Spelling 421 | 422 | 1048576 423 | 2147483647 424 | 425 | 426 | 427 | 428 | 429 | Correct Spelling Automatically 430 | 431 | 2147483647 432 | 433 | 434 | 435 | 436 | 437 | 438 | 439 | 440 | Substitutions 441 | 442 | 1048576 443 | 2147483647 444 | 445 | 446 | submenuAction: 447 | 448 | Substitutions 449 | 450 | YES 451 | 452 | 453 | Show Substitutions 454 | 455 | 2147483647 456 | 457 | 458 | 459 | 460 | 461 | YES 462 | YES 463 | 464 | 465 | 2147483647 466 | 467 | 468 | 469 | 470 | 471 | Smart Copy/Paste 472 | f 473 | 1048576 474 | 2147483647 475 | 476 | 477 | 1 478 | 479 | 480 | 481 | Smart Quotes 482 | g 483 | 1048576 484 | 2147483647 485 | 486 | 487 | 2 488 | 489 | 490 | 491 | Smart Dashes 492 | 493 | 2147483647 494 | 495 | 496 | 497 | 498 | 499 | Smart Links 500 | G 501 | 1179648 502 | 2147483647 503 | 504 | 505 | 3 506 | 507 | 508 | 509 | Text Replacement 510 | 511 | 2147483647 512 | 513 | 514 | 515 | 516 | 517 | 518 | 519 | 520 | Transformations 521 | 522 | 2147483647 523 | 524 | 525 | submenuAction: 526 | 527 | Transformations 528 | 529 | YES 530 | 531 | 532 | Make Upper Case 533 | 534 | 2147483647 535 | 536 | 537 | 538 | 539 | 540 | Make Lower Case 541 | 542 | 2147483647 543 | 544 | 545 | 546 | 547 | 548 | Capitalize 549 | 550 | 2147483647 551 | 552 | 553 | 554 | 555 | 556 | 557 | 558 | 559 | Speech 560 | 561 | 1048576 562 | 2147483647 563 | 564 | 565 | submenuAction: 566 | 567 | Speech 568 | 569 | YES 570 | 571 | 572 | Start Speaking 573 | 574 | 1048576 575 | 2147483647 576 | 577 | 578 | 579 | 580 | 581 | Stop Speaking 582 | 583 | 1048576 584 | 2147483647 585 | 586 | 587 | 588 | 589 | 590 | 591 | 592 | 593 | 594 | 595 | 596 | View 597 | 598 | 1048576 599 | 2147483647 600 | 601 | 602 | submenuAction: 603 | 604 | View 605 | 606 | YES 607 | 608 | 609 | Reload 610 | r 611 | 1048576 612 | 2147483647 613 | 614 | 615 | 616 | 617 | 618 | 619 | 620 | 621 | Window 622 | 623 | 1048576 624 | 2147483647 625 | 626 | 627 | submenuAction: 628 | 629 | Window 630 | 631 | YES 632 | 633 | 634 | Close 635 | w 636 | 1048576 637 | 2147483647 638 | 639 | 640 | 641 | 642 | 643 | Minimize 644 | m 645 | 1048576 646 | 2147483647 647 | 648 | 649 | 650 | 651 | 652 | Zoom 653 | 654 | 1048576 655 | 2147483647 656 | 657 | 658 | 659 | 660 | 661 | YES 662 | YES 663 | 664 | 665 | 1048576 666 | 2147483647 667 | 668 | 669 | 670 | 671 | 672 | Bring All to Front 673 | 674 | 1048576 675 | 2147483647 676 | 677 | 678 | 679 | 680 | _NSWindowsMenu 681 | 682 | 683 | 684 | 685 | Help 686 | 687 | 2147483647 688 | 689 | 690 | submenuAction: 691 | 692 | Help 693 | 694 | YES 695 | 696 | 697 | Cocoa Web App Help 698 | ? 699 | 1048576 700 | 2147483647 701 | 702 | 703 | 704 | 705 | _NSHelpMenu 706 | 707 | 708 | 709 | _NSMainMenu 710 | 711 | 712 | 15 713 | 2 714 | {{335, 409}, {604, 341}} 715 | 1954021376 716 | Cocoa Web App 717 | NSWindow 718 | 719 | {1.79769e+308, 1.79769e+308} 720 | 721 | 722 | 256 723 | 724 | YES 725 | 726 | 727 | 274 728 | 729 | YES 730 | 731 | YES 732 | Apple HTML pasteboard type 733 | Apple PDF pasteboard type 734 | Apple PICT pasteboard type 735 | Apple URL pasteboard type 736 | Apple Web Archive pasteboard type 737 | NSColor pasteboard type 738 | NSFilenamesPboardType 739 | NSStringPboardType 740 | NeXT RTFD pasteboard type 741 | NeXT Rich Text Format v1.0 pasteboard type 742 | NeXT TIFF v4.0 pasteboard type 743 | WebURLsWithTitlesPboardType 744 | public.png 745 | public.url 746 | public.url-name 747 | 748 | 749 | {604, 341} 750 | 751 | 752 | 753 | 754 | 755 | 756 | 757 | YES 758 | 759 | YES 760 | WebKitDefaultFixedFontSize 761 | WebKitDefaultFontSize 762 | WebKitMinimumFontSize 763 | 764 | 765 | YES 766 | 767 | 768 | 769 | 770 | 771 | 772 | YES 773 | YES 774 | 775 | 776 | {604, 341} 777 | 778 | 779 | {{0, 0}, {1920, 1178}} 780 | {1.79769e+308, 1.79769e+308} 781 | 782 | 783 | AppDelegate 784 | 785 | 786 | NSFontManager 787 | 788 | 789 | 790 | 791 | YES 792 | 793 | 794 | performMiniaturize: 795 | 796 | 797 | 798 | 37 799 | 800 | 801 | 802 | arrangeInFront: 803 | 804 | 805 | 806 | 39 807 | 808 | 809 | 810 | orderFrontStandardAboutPanel: 811 | 812 | 813 | 814 | 142 815 | 816 | 817 | 818 | toggleContinuousSpellChecking: 819 | 820 | 821 | 822 | 222 823 | 824 | 825 | 826 | undo: 827 | 828 | 829 | 830 | 223 831 | 832 | 833 | 834 | copy: 835 | 836 | 837 | 838 | 224 839 | 840 | 841 | 842 | checkSpelling: 843 | 844 | 845 | 846 | 225 847 | 848 | 849 | 850 | paste: 851 | 852 | 853 | 854 | 226 855 | 856 | 857 | 858 | stopSpeaking: 859 | 860 | 861 | 862 | 227 863 | 864 | 865 | 866 | cut: 867 | 868 | 869 | 870 | 228 871 | 872 | 873 | 874 | showGuessPanel: 875 | 876 | 877 | 878 | 230 879 | 880 | 881 | 882 | redo: 883 | 884 | 885 | 886 | 231 887 | 888 | 889 | 890 | selectAll: 891 | 892 | 893 | 894 | 232 895 | 896 | 897 | 898 | startSpeaking: 899 | 900 | 901 | 902 | 233 903 | 904 | 905 | 906 | delete: 907 | 908 | 909 | 910 | 235 911 | 912 | 913 | 914 | performZoom: 915 | 916 | 917 | 918 | 240 919 | 920 | 921 | 922 | performFindPanelAction: 923 | 924 | 925 | 926 | 241 927 | 928 | 929 | 930 | centerSelectionInVisibleArea: 931 | 932 | 933 | 934 | 245 935 | 936 | 937 | 938 | toggleGrammarChecking: 939 | 940 | 941 | 942 | 347 943 | 944 | 945 | 946 | toggleSmartInsertDelete: 947 | 948 | 949 | 950 | 355 951 | 952 | 953 | 954 | toggleAutomaticQuoteSubstitution: 955 | 956 | 957 | 958 | 356 959 | 960 | 961 | 962 | toggleAutomaticLinkDetection: 963 | 964 | 965 | 966 | 357 967 | 968 | 969 | 970 | hide: 971 | 972 | 973 | 974 | 367 975 | 976 | 977 | 978 | hideOtherApplications: 979 | 980 | 981 | 982 | 368 983 | 984 | 985 | 986 | unhideAllApplications: 987 | 988 | 989 | 990 | 370 991 | 992 | 993 | 994 | terminate: 995 | 996 | 997 | 998 | 449 999 | 1000 | 1001 | 1002 | toggleAutomaticSpellingCorrection: 1003 | 1004 | 1005 | 1006 | 456 1007 | 1008 | 1009 | 1010 | orderFrontSubstitutionsPanel: 1011 | 1012 | 1013 | 1014 | 458 1015 | 1016 | 1017 | 1018 | toggleAutomaticDashSubstitution: 1019 | 1020 | 1021 | 1022 | 461 1023 | 1024 | 1025 | 1026 | toggleAutomaticTextReplacement: 1027 | 1028 | 1029 | 1030 | 463 1031 | 1032 | 1033 | 1034 | uppercaseWord: 1035 | 1036 | 1037 | 1038 | 464 1039 | 1040 | 1041 | 1042 | capitalizeWord: 1043 | 1044 | 1045 | 1046 | 467 1047 | 1048 | 1049 | 1050 | lowercaseWord: 1051 | 1052 | 1053 | 1054 | 468 1055 | 1056 | 1057 | 1058 | pasteAsPlainText: 1059 | 1060 | 1061 | 1062 | 486 1063 | 1064 | 1065 | 1066 | performFindPanelAction: 1067 | 1068 | 1069 | 1070 | 487 1071 | 1072 | 1073 | 1074 | performFindPanelAction: 1075 | 1076 | 1077 | 1078 | 488 1079 | 1080 | 1081 | 1082 | performFindPanelAction: 1083 | 1084 | 1085 | 1086 | 489 1087 | 1088 | 1089 | 1090 | showHelp: 1091 | 1092 | 1093 | 1094 | 493 1095 | 1096 | 1097 | 1098 | delegate 1099 | 1100 | 1101 | 1102 | 495 1103 | 1104 | 1105 | 1106 | window 1107 | 1108 | 1109 | 1110 | 532 1111 | 1112 | 1113 | 1114 | performClose: 1115 | 1116 | 1117 | 1118 | 535 1119 | 1120 | 1121 | 1122 | reload: 1123 | 1124 | 1125 | 1126 | 552 1127 | 1128 | 1129 | 1130 | webView 1131 | 1132 | 1133 | 1134 | 553 1135 | 1136 | 1137 | 1138 | changeGreeting: 1139 | 1140 | 1141 | 1142 | 555 1143 | 1144 | 1145 | 1146 | frameLoadDelegate 1147 | 1148 | 1149 | 1150 | 556 1151 | 1152 | 1153 | 1154 | 1155 | YES 1156 | 1157 | 0 1158 | 1159 | 1160 | 1161 | 1162 | 1163 | -2 1164 | 1165 | 1166 | File's Owner 1167 | 1168 | 1169 | -1 1170 | 1171 | 1172 | First Responder 1173 | 1174 | 1175 | -3 1176 | 1177 | 1178 | Application 1179 | 1180 | 1181 | 29 1182 | 1183 | 1184 | YES 1185 | 1186 | 1187 | 1188 | 1189 | 1190 | 1191 | 1192 | 1193 | 1194 | 1195 | 19 1196 | 1197 | 1198 | YES 1199 | 1200 | 1201 | 1202 | 1203 | 1204 | 56 1205 | 1206 | 1207 | YES 1208 | 1209 | 1210 | 1211 | 1212 | 1213 | 217 1214 | 1215 | 1216 | YES 1217 | 1218 | 1219 | 1220 | 1221 | 1222 | 57 1223 | 1224 | 1225 | YES 1226 | 1227 | 1228 | 1229 | 1230 | 1231 | 1232 | 1233 | 1234 | 1235 | 1236 | 1237 | 1238 | 1239 | 58 1240 | 1241 | 1242 | 1243 | 1244 | 134 1245 | 1246 | 1247 | 1248 | 1249 | 150 1250 | 1251 | 1252 | 1253 | 1254 | 136 1255 | 1256 | 1257 | 1258 | 1259 | 144 1260 | 1261 | 1262 | 1263 | 1264 | 143 1265 | 1266 | 1267 | 1268 | 1269 | 131 1270 | 1271 | 1272 | YES 1273 | 1274 | 1275 | 1276 | 1277 | 1278 | 149 1279 | 1280 | 1281 | 1282 | 1283 | 145 1284 | 1285 | 1286 | 1287 | 1288 | 130 1289 | 1290 | 1291 | 1292 | 1293 | 24 1294 | 1295 | 1296 | YES 1297 | 1298 | 1299 | 1300 | 1301 | 1302 | 1303 | 1304 | 1305 | 1306 | 92 1307 | 1308 | 1309 | 1310 | 1311 | 5 1312 | 1313 | 1314 | 1315 | 1316 | 239 1317 | 1318 | 1319 | 1320 | 1321 | 23 1322 | 1323 | 1324 | 1325 | 1326 | 295 1327 | 1328 | 1329 | YES 1330 | 1331 | 1332 | 1333 | 1334 | 1335 | 296 1336 | 1337 | 1338 | YES 1339 | 1340 | 1341 | 1342 | 1343 | 1344 | 371 1345 | 1346 | 1347 | YES 1348 | 1349 | 1350 | 1351 | 1352 | 1353 | 372 1354 | 1355 | 1356 | YES 1357 | 1358 | 1359 | 1360 | 1361 | 1362 | 420 1363 | 1364 | 1365 | 1366 | 1367 | 490 1368 | 1369 | 1370 | YES 1371 | 1372 | 1373 | 1374 | 1375 | 1376 | 491 1377 | 1378 | 1379 | YES 1380 | 1381 | 1382 | 1383 | 1384 | 1385 | 492 1386 | 1387 | 1388 | 1389 | 1390 | 494 1391 | 1392 | 1393 | App Delegate 1394 | 1395 | 1396 | 533 1397 | 1398 | 1399 | 1400 | 1401 | 534 1402 | 1403 | 1404 | 1405 | 1406 | 536 1407 | 1408 | 1409 | 1410 | 1411 | 205 1412 | 1413 | 1414 | YES 1415 | 1416 | 1417 | 1418 | 1419 | 1420 | 1421 | 1422 | 1423 | 1424 | 1425 | 1426 | 1427 | 1428 | 1429 | 1430 | 1431 | 1432 | 1433 | 1434 | 485 1435 | 1436 | 1437 | 1438 | 1439 | 450 1440 | 1441 | 1442 | YES 1443 | 1444 | 1445 | 1446 | 1447 | 1448 | 451 1449 | 1450 | 1451 | YES 1452 | 1453 | 1454 | 1455 | 1456 | 1457 | 1458 | 1459 | 466 1460 | 1461 | 1462 | 1463 | 1464 | 465 1465 | 1466 | 1467 | 1468 | 1469 | 452 1470 | 1471 | 1472 | 1473 | 1474 | 348 1475 | 1476 | 1477 | YES 1478 | 1479 | 1480 | 1481 | 1482 | 1483 | 349 1484 | 1485 | 1486 | YES 1487 | 1488 | 1489 | 1490 | 1491 | 1492 | 1493 | 1494 | 1495 | 1496 | 1497 | 1498 | 462 1499 | 1500 | 1501 | 1502 | 1503 | 460 1504 | 1505 | 1506 | 1507 | 1508 | 459 1509 | 1510 | 1511 | 1512 | 1513 | 457 1514 | 1515 | 1516 | 1517 | 1518 | 354 1519 | 1520 | 1521 | 1522 | 1523 | 351 1524 | 1525 | 1526 | 1527 | 1528 | 350 1529 | 1530 | 1531 | 1532 | 1533 | 211 1534 | 1535 | 1536 | YES 1537 | 1538 | 1539 | 1540 | 1541 | 1542 | 212 1543 | 1544 | 1545 | YES 1546 | 1547 | 1548 | 1549 | 1550 | 1551 | 1552 | 196 1553 | 1554 | 1555 | 1556 | 1557 | 195 1558 | 1559 | 1560 | 1561 | 1562 | 216 1563 | 1564 | 1565 | YES 1566 | 1567 | 1568 | 1569 | 1570 | 1571 | 200 1572 | 1573 | 1574 | YES 1575 | 1576 | 1577 | 1578 | 1579 | 1580 | 1581 | 1582 | 1583 | 1584 | 1585 | 454 1586 | 1587 | 1588 | 1589 | 1590 | 453 1591 | 1592 | 1593 | 1594 | 1595 | 346 1596 | 1597 | 1598 | 1599 | 1600 | 204 1601 | 1602 | 1603 | 1604 | 1605 | 201 1606 | 1607 | 1608 | 1609 | 1610 | 219 1611 | 1612 | 1613 | 1614 | 1615 | 218 1616 | 1617 | 1618 | YES 1619 | 1620 | 1621 | 1622 | 1623 | 1624 | 220 1625 | 1626 | 1627 | YES 1628 | 1629 | 1630 | 1631 | 1632 | 1633 | 1634 | 1635 | 1636 | 1637 | 209 1638 | 1639 | 1640 | 1641 | 1642 | 208 1643 | 1644 | 1645 | 1646 | 1647 | 221 1648 | 1649 | 1650 | 1651 | 1652 | 210 1653 | 1654 | 1655 | 1656 | 1657 | 213 1658 | 1659 | 1660 | 1661 | 1662 | 215 1663 | 1664 | 1665 | 1666 | 1667 | 206 1668 | 1669 | 1670 | 1671 | 1672 | 197 1673 | 1674 | 1675 | 1676 | 1677 | 203 1678 | 1679 | 1680 | 1681 | 1682 | 199 1683 | 1684 | 1685 | 1686 | 1687 | 214 1688 | 1689 | 1690 | 1691 | 1692 | 207 1693 | 1694 | 1695 | 1696 | 1697 | 198 1698 | 1699 | 1700 | 1701 | 1702 | 202 1703 | 1704 | 1705 | 1706 | 1707 | 549 1708 | 1709 | 1710 | YES 1711 | 1712 | 1713 | 1714 | 1715 | 1716 | 550 1717 | 1718 | 1719 | YES 1720 | 1721 | 1722 | 1723 | 1724 | 1725 | 551 1726 | 1727 | 1728 | 1729 | 1730 | 1731 | 1732 | YES 1733 | 1734 | YES 1735 | -3.IBPluginDependency 1736 | 130.IBPluginDependency 1737 | 130.ImportedFromIB2 1738 | 130.editorWindowContentRectSynchronizationRect 1739 | 131.IBPluginDependency 1740 | 131.ImportedFromIB2 1741 | 134.IBPluginDependency 1742 | 134.ImportedFromIB2 1743 | 136.IBPluginDependency 1744 | 136.ImportedFromIB2 1745 | 143.IBPluginDependency 1746 | 143.ImportedFromIB2 1747 | 144.IBPluginDependency 1748 | 144.ImportedFromIB2 1749 | 145.IBPluginDependency 1750 | 145.ImportedFromIB2 1751 | 149.IBPluginDependency 1752 | 149.ImportedFromIB2 1753 | 150.IBPluginDependency 1754 | 150.ImportedFromIB2 1755 | 19.IBPluginDependency 1756 | 19.ImportedFromIB2 1757 | 195.IBPluginDependency 1758 | 195.ImportedFromIB2 1759 | 196.IBPluginDependency 1760 | 196.ImportedFromIB2 1761 | 197.IBPluginDependency 1762 | 197.ImportedFromIB2 1763 | 198.IBPluginDependency 1764 | 198.ImportedFromIB2 1765 | 199.IBPluginDependency 1766 | 199.ImportedFromIB2 1767 | 200.IBEditorWindowLastContentRect 1768 | 200.IBPluginDependency 1769 | 200.ImportedFromIB2 1770 | 200.editorWindowContentRectSynchronizationRect 1771 | 201.IBPluginDependency 1772 | 201.ImportedFromIB2 1773 | 202.IBPluginDependency 1774 | 202.ImportedFromIB2 1775 | 203.IBPluginDependency 1776 | 203.ImportedFromIB2 1777 | 204.IBPluginDependency 1778 | 204.ImportedFromIB2 1779 | 205.IBEditorWindowLastContentRect 1780 | 205.IBPluginDependency 1781 | 205.ImportedFromIB2 1782 | 205.editorWindowContentRectSynchronizationRect 1783 | 206.IBPluginDependency 1784 | 206.ImportedFromIB2 1785 | 207.IBPluginDependency 1786 | 207.ImportedFromIB2 1787 | 208.IBPluginDependency 1788 | 208.ImportedFromIB2 1789 | 209.IBPluginDependency 1790 | 209.ImportedFromIB2 1791 | 210.IBPluginDependency 1792 | 210.ImportedFromIB2 1793 | 211.IBPluginDependency 1794 | 211.ImportedFromIB2 1795 | 212.IBPluginDependency 1796 | 212.ImportedFromIB2 1797 | 212.editorWindowContentRectSynchronizationRect 1798 | 213.IBPluginDependency 1799 | 213.ImportedFromIB2 1800 | 214.IBPluginDependency 1801 | 214.ImportedFromIB2 1802 | 215.IBPluginDependency 1803 | 215.ImportedFromIB2 1804 | 216.IBPluginDependency 1805 | 216.ImportedFromIB2 1806 | 217.IBPluginDependency 1807 | 217.ImportedFromIB2 1808 | 218.IBPluginDependency 1809 | 218.ImportedFromIB2 1810 | 219.IBPluginDependency 1811 | 219.ImportedFromIB2 1812 | 220.IBEditorWindowLastContentRect 1813 | 220.IBPluginDependency 1814 | 220.ImportedFromIB2 1815 | 220.editorWindowContentRectSynchronizationRect 1816 | 221.IBPluginDependency 1817 | 221.ImportedFromIB2 1818 | 23.IBPluginDependency 1819 | 23.ImportedFromIB2 1820 | 239.IBPluginDependency 1821 | 239.ImportedFromIB2 1822 | 24.IBEditorWindowLastContentRect 1823 | 24.IBPluginDependency 1824 | 24.ImportedFromIB2 1825 | 24.editorWindowContentRectSynchronizationRect 1826 | 29.IBEditorWindowLastContentRect 1827 | 29.IBPluginDependency 1828 | 29.ImportedFromIB2 1829 | 29.WindowOrigin 1830 | 29.editorWindowContentRectSynchronizationRect 1831 | 295.IBPluginDependency 1832 | 296.IBEditorWindowLastContentRect 1833 | 296.IBPluginDependency 1834 | 296.editorWindowContentRectSynchronizationRect 1835 | 346.IBPluginDependency 1836 | 346.ImportedFromIB2 1837 | 348.IBPluginDependency 1838 | 348.ImportedFromIB2 1839 | 349.IBEditorWindowLastContentRect 1840 | 349.IBPluginDependency 1841 | 349.ImportedFromIB2 1842 | 349.editorWindowContentRectSynchronizationRect 1843 | 350.IBPluginDependency 1844 | 350.ImportedFromIB2 1845 | 351.IBPluginDependency 1846 | 351.ImportedFromIB2 1847 | 354.IBPluginDependency 1848 | 354.ImportedFromIB2 1849 | 371.IBEditorWindowLastContentRect 1850 | 371.IBPluginDependency 1851 | 371.IBWindowTemplateEditedContentRect 1852 | 371.NSWindowTemplate.visibleAtLaunch 1853 | 371.editorWindowContentRectSynchronizationRect 1854 | 371.windowTemplate.maxSize 1855 | 372.IBPluginDependency 1856 | 450.IBPluginDependency 1857 | 451.IBEditorWindowLastContentRect 1858 | 451.IBPluginDependency 1859 | 452.IBPluginDependency 1860 | 453.IBPluginDependency 1861 | 454.IBPluginDependency 1862 | 457.IBPluginDependency 1863 | 459.IBPluginDependency 1864 | 460.IBPluginDependency 1865 | 462.IBPluginDependency 1866 | 465.IBPluginDependency 1867 | 466.IBPluginDependency 1868 | 485.IBPluginDependency 1869 | 490.IBPluginDependency 1870 | 491.IBEditorWindowLastContentRect 1871 | 491.IBPluginDependency 1872 | 492.IBPluginDependency 1873 | 5.IBPluginDependency 1874 | 5.ImportedFromIB2 1875 | 533.IBPluginDependency 1876 | 534.IBPluginDependency 1877 | 536.IBPluginDependency 1878 | 549.IBPluginDependency 1879 | 550.IBEditorWindowLastContentRect 1880 | 550.IBPluginDependency 1881 | 551.IBPluginDependency 1882 | 56.IBPluginDependency 1883 | 56.ImportedFromIB2 1884 | 57.IBEditorWindowLastContentRect 1885 | 57.IBPluginDependency 1886 | 57.ImportedFromIB2 1887 | 57.editorWindowContentRectSynchronizationRect 1888 | 58.IBPluginDependency 1889 | 58.ImportedFromIB2 1890 | 92.IBPluginDependency 1891 | 92.ImportedFromIB2 1892 | 1893 | 1894 | YES 1895 | com.apple.InterfaceBuilder.CocoaPlugin 1896 | com.apple.InterfaceBuilder.CocoaPlugin 1897 | 1898 | {{436, 809}, {64, 6}} 1899 | com.apple.InterfaceBuilder.CocoaPlugin 1900 | 1901 | com.apple.InterfaceBuilder.CocoaPlugin 1902 | 1903 | com.apple.InterfaceBuilder.CocoaPlugin 1904 | 1905 | com.apple.InterfaceBuilder.CocoaPlugin 1906 | 1907 | com.apple.InterfaceBuilder.CocoaPlugin 1908 | 1909 | com.apple.InterfaceBuilder.CocoaPlugin 1910 | 1911 | com.apple.InterfaceBuilder.CocoaPlugin 1912 | 1913 | com.apple.InterfaceBuilder.CocoaPlugin 1914 | 1915 | com.apple.InterfaceBuilder.CocoaPlugin 1916 | 1917 | com.apple.InterfaceBuilder.CocoaPlugin 1918 | 1919 | com.apple.InterfaceBuilder.CocoaPlugin 1920 | 1921 | com.apple.InterfaceBuilder.CocoaPlugin 1922 | 1923 | com.apple.InterfaceBuilder.CocoaPlugin 1924 | 1925 | com.apple.InterfaceBuilder.CocoaPlugin 1926 | 1927 | {{753, 187}, {275, 113}} 1928 | com.apple.InterfaceBuilder.CocoaPlugin 1929 | 1930 | {{608, 612}, {275, 83}} 1931 | com.apple.InterfaceBuilder.CocoaPlugin 1932 | 1933 | com.apple.InterfaceBuilder.CocoaPlugin 1934 | 1935 | com.apple.InterfaceBuilder.CocoaPlugin 1936 | 1937 | com.apple.InterfaceBuilder.CocoaPlugin 1938 | 1939 | {{194, 619}, {254, 283}} 1940 | com.apple.InterfaceBuilder.CocoaPlugin 1941 | 1942 | {{187, 434}, {243, 243}} 1943 | com.apple.InterfaceBuilder.CocoaPlugin 1944 | 1945 | com.apple.InterfaceBuilder.CocoaPlugin 1946 | 1947 | com.apple.InterfaceBuilder.CocoaPlugin 1948 | 1949 | com.apple.InterfaceBuilder.CocoaPlugin 1950 | 1951 | com.apple.InterfaceBuilder.CocoaPlugin 1952 | 1953 | com.apple.InterfaceBuilder.CocoaPlugin 1954 | 1955 | com.apple.InterfaceBuilder.CocoaPlugin 1956 | 1957 | {{608, 612}, {167, 43}} 1958 | com.apple.InterfaceBuilder.CocoaPlugin 1959 | 1960 | com.apple.InterfaceBuilder.CocoaPlugin 1961 | 1962 | com.apple.InterfaceBuilder.CocoaPlugin 1963 | 1964 | com.apple.InterfaceBuilder.CocoaPlugin 1965 | 1966 | com.apple.InterfaceBuilder.CocoaPlugin 1967 | 1968 | com.apple.InterfaceBuilder.CocoaPlugin 1969 | 1970 | com.apple.InterfaceBuilder.CocoaPlugin 1971 | 1972 | {{753, 217}, {238, 103}} 1973 | com.apple.InterfaceBuilder.CocoaPlugin 1974 | 1975 | {{608, 612}, {241, 103}} 1976 | com.apple.InterfaceBuilder.CocoaPlugin 1977 | 1978 | com.apple.InterfaceBuilder.CocoaPlugin 1979 | 1980 | com.apple.InterfaceBuilder.CocoaPlugin 1981 | 1982 | {{364, 809}, {194, 93}} 1983 | com.apple.InterfaceBuilder.CocoaPlugin 1984 | 1985 | {{525, 802}, {197, 73}} 1986 | {{52, 902}, {433, 20}} 1987 | com.apple.InterfaceBuilder.CocoaPlugin 1988 | 1989 | {74, 862} 1990 | {{6, 978}, {478, 20}} 1991 | com.apple.InterfaceBuilder.CocoaPlugin 1992 | {{314, 879}, {120, 23}} 1993 | com.apple.InterfaceBuilder.CocoaPlugin 1994 | {{475, 832}, {234, 43}} 1995 | com.apple.InterfaceBuilder.CocoaPlugin 1996 | 1997 | com.apple.InterfaceBuilder.CocoaPlugin 1998 | 1999 | {{746, 287}, {220, 133}} 2000 | com.apple.InterfaceBuilder.CocoaPlugin 2001 | 2002 | {{608, 612}, {215, 63}} 2003 | com.apple.InterfaceBuilder.CocoaPlugin 2004 | 2005 | com.apple.InterfaceBuilder.CocoaPlugin 2006 | 2007 | com.apple.InterfaceBuilder.CocoaPlugin 2008 | 2009 | {{210, 469}, {604, 341}} 2010 | com.apple.InterfaceBuilder.CocoaPlugin 2011 | {{210, 469}, {604, 341}} 2012 | 2013 | {{33, 99}, {480, 360}} 2014 | {3.40282e+38, 3.40282e+38} 2015 | com.apple.InterfaceBuilder.CocoaPlugin 2016 | com.apple.InterfaceBuilder.CocoaPlugin 2017 | {{753, 197}, {170, 63}} 2018 | com.apple.InterfaceBuilder.CocoaPlugin 2019 | com.apple.InterfaceBuilder.CocoaPlugin 2020 | com.apple.InterfaceBuilder.CocoaPlugin 2021 | com.apple.InterfaceBuilder.CocoaPlugin 2022 | com.apple.InterfaceBuilder.CocoaPlugin 2023 | com.apple.InterfaceBuilder.CocoaPlugin 2024 | com.apple.InterfaceBuilder.CocoaPlugin 2025 | com.apple.InterfaceBuilder.CocoaPlugin 2026 | com.apple.InterfaceBuilder.CocoaPlugin 2027 | com.apple.InterfaceBuilder.CocoaPlugin 2028 | com.apple.InterfaceBuilder.CocoaPlugin 2029 | com.apple.InterfaceBuilder.CocoaPlugin 2030 | {{725, 289}, {246, 23}} 2031 | com.apple.InterfaceBuilder.CocoaPlugin 2032 | com.apple.InterfaceBuilder.CocoaPlugin 2033 | com.apple.InterfaceBuilder.CocoaPlugin 2034 | 2035 | com.apple.InterfaceBuilder.CocoaPlugin 2036 | com.apple.InterfaceBuilder.CocoaPlugin 2037 | com.apple.WebKitIBPlugin 2038 | com.apple.InterfaceBuilder.CocoaPlugin 2039 | {{194, 879}, {166, 23}} 2040 | com.apple.InterfaceBuilder.CocoaPlugin 2041 | com.apple.InterfaceBuilder.CocoaPlugin 2042 | com.apple.InterfaceBuilder.CocoaPlugin 2043 | 2044 | {{63, 672}, {242, 153}} 2045 | com.apple.InterfaceBuilder.CocoaPlugin 2046 | 2047 | {{23, 794}, {245, 183}} 2048 | com.apple.InterfaceBuilder.CocoaPlugin 2049 | 2050 | com.apple.InterfaceBuilder.CocoaPlugin 2051 | 2052 | 2053 | 2054 | 2055 | YES 2056 | 2057 | 2058 | YES 2059 | 2060 | 2061 | 2062 | 2063 | YES 2064 | 2065 | 2066 | YES 2067 | 2068 | 2069 | 2070 | 556 2071 | 2072 | 2073 | 2074 | YES 2075 | 2076 | AppDelegate 2077 | NSObject 2078 | 2079 | YES 2080 | 2081 | YES 2082 | bringMainWindowToFront: 2083 | changeGreeting: 2084 | 2085 | 2086 | YES 2087 | id 2088 | id 2089 | 2090 | 2091 | 2092 | YES 2093 | 2094 | YES 2095 | webView 2096 | window 2097 | 2098 | 2099 | YES 2100 | id 2101 | NSWindow 2102 | 2103 | 2104 | 2105 | IBProjectSource 2106 | AppDelegate.h 2107 | 2108 | 2109 | 2110 | 2111 | YES 2112 | 2113 | NSApplication 2114 | NSResponder 2115 | 2116 | IBFrameworkSource 2117 | AppKit.framework/Headers/NSApplication.h 2118 | 2119 | 2120 | 2121 | NSApplication 2122 | 2123 | IBFrameworkSource 2124 | AppKit.framework/Headers/NSApplicationScripting.h 2125 | 2126 | 2127 | 2128 | NSApplication 2129 | 2130 | IBFrameworkSource 2131 | AppKit.framework/Headers/NSColorPanel.h 2132 | 2133 | 2134 | 2135 | NSApplication 2136 | 2137 | IBFrameworkSource 2138 | AppKit.framework/Headers/NSHelpManager.h 2139 | 2140 | 2141 | 2142 | NSApplication 2143 | 2144 | IBFrameworkSource 2145 | AppKit.framework/Headers/NSPageLayout.h 2146 | 2147 | 2148 | 2149 | NSApplication 2150 | 2151 | IBFrameworkSource 2152 | AppKit.framework/Headers/NSUserInterfaceItemSearching.h 2153 | 2154 | 2155 | 2156 | NSBrowser 2157 | NSControl 2158 | 2159 | IBFrameworkSource 2160 | AppKit.framework/Headers/NSBrowser.h 2161 | 2162 | 2163 | 2164 | NSControl 2165 | NSView 2166 | 2167 | IBFrameworkSource 2168 | AppKit.framework/Headers/NSControl.h 2169 | 2170 | 2171 | 2172 | NSFontManager 2173 | NSObject 2174 | 2175 | IBFrameworkSource 2176 | AppKit.framework/Headers/NSFontManager.h 2177 | 2178 | 2179 | 2180 | NSFormatter 2181 | NSObject 2182 | 2183 | IBFrameworkSource 2184 | Foundation.framework/Headers/NSFormatter.h 2185 | 2186 | 2187 | 2188 | NSMatrix 2189 | NSControl 2190 | 2191 | IBFrameworkSource 2192 | AppKit.framework/Headers/NSMatrix.h 2193 | 2194 | 2195 | 2196 | NSMenu 2197 | NSObject 2198 | 2199 | IBFrameworkSource 2200 | AppKit.framework/Headers/NSMenu.h 2201 | 2202 | 2203 | 2204 | NSMenuItem 2205 | NSObject 2206 | 2207 | IBFrameworkSource 2208 | AppKit.framework/Headers/NSMenuItem.h 2209 | 2210 | 2211 | 2212 | NSMovieView 2213 | NSView 2214 | 2215 | IBFrameworkSource 2216 | AppKit.framework/Headers/NSMovieView.h 2217 | 2218 | 2219 | 2220 | NSObject 2221 | 2222 | IBFrameworkSource 2223 | AppKit.framework/Headers/NSAccessibility.h 2224 | 2225 | 2226 | 2227 | NSObject 2228 | 2229 | 2230 | 2231 | NSObject 2232 | 2233 | 2234 | 2235 | NSObject 2236 | 2237 | 2238 | 2239 | NSObject 2240 | 2241 | 2242 | 2243 | NSObject 2244 | 2245 | IBFrameworkSource 2246 | AppKit.framework/Headers/NSDictionaryController.h 2247 | 2248 | 2249 | 2250 | NSObject 2251 | 2252 | IBFrameworkSource 2253 | AppKit.framework/Headers/NSDragging.h 2254 | 2255 | 2256 | 2257 | NSObject 2258 | 2259 | 2260 | 2261 | NSObject 2262 | 2263 | IBFrameworkSource 2264 | AppKit.framework/Headers/NSFontPanel.h 2265 | 2266 | 2267 | 2268 | NSObject 2269 | 2270 | IBFrameworkSource 2271 | AppKit.framework/Headers/NSKeyValueBinding.h 2272 | 2273 | 2274 | 2275 | NSObject 2276 | 2277 | 2278 | 2279 | NSObject 2280 | 2281 | IBFrameworkSource 2282 | AppKit.framework/Headers/NSNibLoading.h 2283 | 2284 | 2285 | 2286 | NSObject 2287 | 2288 | IBFrameworkSource 2289 | AppKit.framework/Headers/NSOutlineView.h 2290 | 2291 | 2292 | 2293 | NSObject 2294 | 2295 | IBFrameworkSource 2296 | AppKit.framework/Headers/NSPasteboard.h 2297 | 2298 | 2299 | 2300 | NSObject 2301 | 2302 | IBFrameworkSource 2303 | AppKit.framework/Headers/NSSavePanel.h 2304 | 2305 | 2306 | 2307 | NSObject 2308 | 2309 | IBFrameworkSource 2310 | AppKit.framework/Headers/NSTableView.h 2311 | 2312 | 2313 | 2314 | NSObject 2315 | 2316 | IBFrameworkSource 2317 | AppKit.framework/Headers/NSToolbarItem.h 2318 | 2319 | 2320 | 2321 | NSObject 2322 | 2323 | IBFrameworkSource 2324 | AppKit.framework/Headers/NSView.h 2325 | 2326 | 2327 | 2328 | NSObject 2329 | 2330 | IBFrameworkSource 2331 | Foundation.framework/Headers/NSArchiver.h 2332 | 2333 | 2334 | 2335 | NSObject 2336 | 2337 | IBFrameworkSource 2338 | Foundation.framework/Headers/NSClassDescription.h 2339 | 2340 | 2341 | 2342 | NSObject 2343 | 2344 | IBFrameworkSource 2345 | Foundation.framework/Headers/NSError.h 2346 | 2347 | 2348 | 2349 | NSObject 2350 | 2351 | IBFrameworkSource 2352 | Foundation.framework/Headers/NSFileManager.h 2353 | 2354 | 2355 | 2356 | NSObject 2357 | 2358 | IBFrameworkSource 2359 | Foundation.framework/Headers/NSKeyValueCoding.h 2360 | 2361 | 2362 | 2363 | NSObject 2364 | 2365 | IBFrameworkSource 2366 | Foundation.framework/Headers/NSKeyValueObserving.h 2367 | 2368 | 2369 | 2370 | NSObject 2371 | 2372 | IBFrameworkSource 2373 | Foundation.framework/Headers/NSKeyedArchiver.h 2374 | 2375 | 2376 | 2377 | NSObject 2378 | 2379 | IBFrameworkSource 2380 | Foundation.framework/Headers/NSObject.h 2381 | 2382 | 2383 | 2384 | NSObject 2385 | 2386 | IBFrameworkSource 2387 | Foundation.framework/Headers/NSObjectScripting.h 2388 | 2389 | 2390 | 2391 | NSObject 2392 | 2393 | IBFrameworkSource 2394 | Foundation.framework/Headers/NSPortCoder.h 2395 | 2396 | 2397 | 2398 | NSObject 2399 | 2400 | IBFrameworkSource 2401 | Foundation.framework/Headers/NSRunLoop.h 2402 | 2403 | 2404 | 2405 | NSObject 2406 | 2407 | IBFrameworkSource 2408 | Foundation.framework/Headers/NSScriptClassDescription.h 2409 | 2410 | 2411 | 2412 | NSObject 2413 | 2414 | IBFrameworkSource 2415 | Foundation.framework/Headers/NSScriptKeyValueCoding.h 2416 | 2417 | 2418 | 2419 | NSObject 2420 | 2421 | IBFrameworkSource 2422 | Foundation.framework/Headers/NSScriptObjectSpecifiers.h 2423 | 2424 | 2425 | 2426 | NSObject 2427 | 2428 | IBFrameworkSource 2429 | Foundation.framework/Headers/NSScriptWhoseTests.h 2430 | 2431 | 2432 | 2433 | NSObject 2434 | 2435 | IBFrameworkSource 2436 | Foundation.framework/Headers/NSThread.h 2437 | 2438 | 2439 | 2440 | NSObject 2441 | 2442 | IBFrameworkSource 2443 | Foundation.framework/Headers/NSURL.h 2444 | 2445 | 2446 | 2447 | NSObject 2448 | 2449 | IBFrameworkSource 2450 | Foundation.framework/Headers/NSURLConnection.h 2451 | 2452 | 2453 | 2454 | NSObject 2455 | 2456 | IBFrameworkSource 2457 | Foundation.framework/Headers/NSURLDownload.h 2458 | 2459 | 2460 | 2461 | NSObject 2462 | 2463 | IBFrameworkSource 2464 | WebKit.framework/Headers/WebDownload.h 2465 | 2466 | 2467 | 2468 | NSObject 2469 | 2470 | IBFrameworkSource 2471 | WebKit.framework/Headers/WebEditingDelegate.h 2472 | 2473 | 2474 | 2475 | NSObject 2476 | 2477 | IBFrameworkSource 2478 | WebKit.framework/Headers/WebFrameLoadDelegate.h 2479 | 2480 | 2481 | 2482 | NSObject 2483 | 2484 | IBFrameworkSource 2485 | WebKit.framework/Headers/WebJavaPlugIn.h 2486 | 2487 | 2488 | 2489 | NSObject 2490 | 2491 | IBFrameworkSource 2492 | WebKit.framework/Headers/WebPlugin.h 2493 | 2494 | 2495 | 2496 | NSObject 2497 | 2498 | IBFrameworkSource 2499 | WebKit.framework/Headers/WebPluginContainer.h 2500 | 2501 | 2502 | 2503 | NSObject 2504 | 2505 | IBFrameworkSource 2506 | WebKit.framework/Headers/WebPolicyDelegate.h 2507 | 2508 | 2509 | 2510 | NSObject 2511 | 2512 | IBFrameworkSource 2513 | WebKit.framework/Headers/WebResourceLoadDelegate.h 2514 | 2515 | 2516 | 2517 | NSObject 2518 | 2519 | IBFrameworkSource 2520 | WebKit.framework/Headers/WebScriptObject.h 2521 | 2522 | 2523 | 2524 | NSObject 2525 | 2526 | IBFrameworkSource 2527 | WebKit.framework/Headers/WebUIDelegate.h 2528 | 2529 | 2530 | 2531 | NSResponder 2532 | 2533 | IBFrameworkSource 2534 | AppKit.framework/Headers/NSInterfaceStyle.h 2535 | 2536 | 2537 | 2538 | NSResponder 2539 | NSObject 2540 | 2541 | IBFrameworkSource 2542 | AppKit.framework/Headers/NSResponder.h 2543 | 2544 | 2545 | 2546 | NSTableView 2547 | NSControl 2548 | 2549 | 2550 | 2551 | NSText 2552 | NSView 2553 | 2554 | IBFrameworkSource 2555 | AppKit.framework/Headers/NSText.h 2556 | 2557 | 2558 | 2559 | NSTextView 2560 | NSText 2561 | 2562 | IBFrameworkSource 2563 | AppKit.framework/Headers/NSTextView.h 2564 | 2565 | 2566 | 2567 | NSView 2568 | 2569 | IBFrameworkSource 2570 | AppKit.framework/Headers/NSClipView.h 2571 | 2572 | 2573 | 2574 | NSView 2575 | 2576 | 2577 | 2578 | NSView 2579 | 2580 | IBFrameworkSource 2581 | AppKit.framework/Headers/NSRulerView.h 2582 | 2583 | 2584 | 2585 | NSView 2586 | NSResponder 2587 | 2588 | 2589 | 2590 | NSWindow 2591 | 2592 | IBFrameworkSource 2593 | AppKit.framework/Headers/NSDrawer.h 2594 | 2595 | 2596 | 2597 | NSWindow 2598 | NSResponder 2599 | 2600 | IBFrameworkSource 2601 | AppKit.framework/Headers/NSWindow.h 2602 | 2603 | 2604 | 2605 | NSWindow 2606 | 2607 | IBFrameworkSource 2608 | AppKit.framework/Headers/NSWindowScripting.h 2609 | 2610 | 2611 | 2612 | WebView 2613 | NSView 2614 | 2615 | YES 2616 | 2617 | YES 2618 | goBack: 2619 | goForward: 2620 | makeTextLarger: 2621 | makeTextSmaller: 2622 | makeTextStandardSize: 2623 | reload: 2624 | reloadFromOrigin: 2625 | stopLoading: 2626 | takeStringURLFrom: 2627 | toggleContinuousSpellChecking: 2628 | toggleSmartInsertDelete: 2629 | 2630 | 2631 | YES 2632 | id 2633 | id 2634 | id 2635 | id 2636 | id 2637 | id 2638 | id 2639 | id 2640 | id 2641 | id 2642 | id 2643 | 2644 | 2645 | 2646 | IBFrameworkSource 2647 | WebKit.framework/Headers/WebView.h 2648 | 2649 | 2650 | 2651 | 2652 | 0 2653 | 2654 | com.apple.InterfaceBuilder.CocoaPlugin.macosx 2655 | 2656 | 2657 | 2658 | com.apple.InterfaceBuilder.CocoaPlugin.InterfaceBuilder3 2659 | 2660 | 2661 | YES 2662 | ../Cocoa Web App.xcodeproj 2663 | 3 2664 | 2665 | 2666 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2010 Ryan Bates 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining 4 | a copy of this software and associated documentation files (the 5 | "Software"), to deal in the Software without restriction, including 6 | without limitation the rights to use, copy, modify, merge, publish, 7 | distribute, sublicense, and/or sell copies of the Software, and to 8 | permit persons to whom the Software is furnished to do so, subject to 9 | the following conditions: 10 | 11 | The above copyright notice and this permission notice shall be 12 | included in all copies or substantial portions of the Software. 13 | 14 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, 15 | EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF 16 | MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND 17 | NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE 18 | LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION 19 | OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION 20 | WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -------------------------------------------------------------------------------- /README: -------------------------------------------------------------------------------- 1 | COCOA WEB APP EXAMPLE 2 | 3 | This is an example Cocoa application which displays an HTML page in a WebView. It demonstrates how to communicate between Objective-C and JavaScript through the WebScriptObject. If you have a web app which could benefit from desktop integration, I highly recommend creating a Cocoa app which interacts with it. 4 | 5 | To try it out, open the "Cocoa Web App.xcodeproj" file in Xcode and click "Build and Run". See the code in "AppDelegate.m" and "index.html" to see how it works. 6 | 7 | git clone git://github.com/ryanb/cocoa-web-app-example.git 8 | open cocoa-web-app-example/Cocoa\ Web\ App.xcodeproj 9 | -------------------------------------------------------------------------------- /apple.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ryanb/cocoa-web-app-example/0cbb1bc541016ab491090b0709293aef309deb65/apple.png -------------------------------------------------------------------------------- /dogcow.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ryanb/cocoa-web-app-example/0cbb1bc541016ab491090b0709293aef309deb65/dogcow.png -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | Cocoa Web App Example 7 | 19 | 30 | 31 | 32 |

Hello World!

33 |

Click an icon below.

34 |
35 | Apple 36 | Dogcow 37 | Mac 38 |
39 | 43 | 44 | 45 | -------------------------------------------------------------------------------- /mac.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/ryanb/cocoa-web-app-example/0cbb1bc541016ab491090b0709293aef309deb65/mac.png -------------------------------------------------------------------------------- /main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // Cocoa Web App 4 | // 5 | // Created by Ryan Bates on 1/18/10. 6 | // Copyright 2010 Artbeats. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | int main(int argc, char *argv[]) 12 | { 13 | return NSApplicationMain(argc, (const char **) argv); 14 | } 15 | --------------------------------------------------------------------------------