Permalink
Browse files

Initial push

  • Loading branch information...
0 parents commit c18200e3981d71c2b6a2d09a9094bf112ef8804f @steventroughtonsmith steventroughtonsmith committed Aug 10, 2010
2 English.lproj/InfoPlist.strings
@@ -0,0 +1,2 @@
+/* Localized versions of Info.plist keys */
+
4,206 English.lproj/MainMenu.xib
4,206 additions, 0 deletions not shown because the diff is too large. Please use a local Git client to view these changes.
BIN Icon.icns
Binary file not shown.
34 Picker-Info.plist
@@ -0,0 +1,34 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>CFBundleDevelopmentRegion</key>
+ <string>English</string>
+ <key>CFBundleExecutable</key>
+ <string>${EXECUTABLE_NAME}</string>
+ <key>CFBundleIconFile</key>
+ <string>Icon.icns</string>
+ <key>CFBundleIdentifier</key>
+ <string>com.steventroughtonsmith.${PRODUCT_NAME:rfc1034identifier}</string>
+ <key>CFBundleInfoDictionaryVersion</key>
+ <string>6.0</string>
+ <key>CFBundleName</key>
+ <string>${PRODUCT_NAME}</string>
+ <key>CFBundlePackageType</key>
+ <string>APPL</string>
+ <key>CFBundleSignature</key>
+ <string>????</string>
+ <key>CFBundleShortVersionString</key>
+ <string>1.0</string>
+ <key>LSMinimumSystemVersion</key>
+ <string>${MACOSX_DEPLOYMENT_TARGET}</string>
+ <key>CFBundleVersion</key>
+ <string>1</string>
+ <key>NSMainNibFile</key>
+ <string>MainMenu</string>
+ <key>NSPrincipalClass</key>
+ <string>NSApplication</string>
+ <key>LSUIElement</key>
+ <true/>
+</dict>
+</plist>
305 Picker.xcodeproj/project.pbxproj
@@ -0,0 +1,305 @@
+// !$*UTF8*$!
+{
+ archiveVersion = 1;
+ classes = {
+ };
+ objectVersion = 45;
+ objects = {
+
+/* Begin PBXBuildFile section */
+ 1DDD58160DA1D0A300B32029 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1DDD58140DA1D0A300B32029 /* MainMenu.xib */; };
+ 256AC3DA0F4B6AC300CF3369 /* PickerAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 256AC3D90F4B6AC300CF3369 /* PickerAppDelegate.m */; };
+ 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */; };
+ 8D11072D0486CEB800E47090 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; settings = {ATTRIBUTES = (); }; };
+ 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */; };
+ B05742C711EC5CA00065EE0B /* wheel.png in Resources */ = {isa = PBXBuildFile; fileRef = B05742C611EC5CA00065EE0B /* wheel.png */; };
+ B05742E611EC5E780065EE0B /* wheel_selected.png in Resources */ = {isa = PBXBuildFile; fileRef = B05742E511EC5E780065EE0B /* wheel_selected.png */; };
+ B05742FE11EC5FC20065EE0B /* Icon.icns in Resources */ = {isa = PBXBuildFile; fileRef = B05742FD11EC5FC20065EE0B /* Icon.icns */; };
+ B0B07F2511EC84A300B7E872 /* PickerBackgroundView.m in Sources */ = {isa = PBXBuildFile; fileRef = B0B07F2411EC84A300B7E872 /* PickerBackgroundView.m */; };
+/* End PBXBuildFile section */
+
+/* Begin PBXFileReference section */
+ 089C165DFE840E0CC02AAC07 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/InfoPlist.strings; sourceTree = "<group>"; };
+ 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Cocoa.framework; path = /System/Library/Frameworks/Cocoa.framework; sourceTree = "<absolute>"; };
+ 13E42FB307B3F0F600E4EEF1 /* CoreData.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreData.framework; path = /System/Library/Frameworks/CoreData.framework; sourceTree = "<absolute>"; };
+ 1DDD58150DA1D0A300B32029 /* English */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = English; path = English.lproj/MainMenu.xib; sourceTree = "<group>"; };
+ 256AC3D80F4B6AC300CF3369 /* PickerAppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PickerAppDelegate.h; sourceTree = "<group>"; };
+ 256AC3D90F4B6AC300CF3369 /* PickerAppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PickerAppDelegate.m; sourceTree = "<group>"; };
+ 256AC3F00F4B6AF500CF3369 /* Picker_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Picker_Prefix.pch; sourceTree = "<group>"; };
+ 29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
+ 29B97324FDCFA39411CA2CEA /* AppKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AppKit.framework; path = /System/Library/Frameworks/AppKit.framework; sourceTree = "<absolute>"; };
+ 29B97325FDCFA39411CA2CEA /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = /System/Library/Frameworks/Foundation.framework; sourceTree = "<absolute>"; };
+ 8D1107310486CEB800E47090 /* Picker-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "Picker-Info.plist"; sourceTree = "<group>"; };
+ 8D1107320486CEB800E47090 /* Picker.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Picker.app; sourceTree = BUILT_PRODUCTS_DIR; };
+ B05742C611EC5CA00065EE0B /* wheel.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = wheel.png; sourceTree = "<group>"; };
+ B05742E511EC5E780065EE0B /* wheel_selected.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = wheel_selected.png; sourceTree = "<group>"; };
+ B05742FD11EC5FC20065EE0B /* Icon.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = Icon.icns; sourceTree = "<group>"; };
+ B0B07F2311EC84A300B7E872 /* PickerBackgroundView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PickerBackgroundView.h; sourceTree = "<group>"; };
+ B0B07F2411EC84A300B7E872 /* PickerBackgroundView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = PickerBackgroundView.m; sourceTree = "<group>"; };
+/* End PBXFileReference section */
+
+/* Begin PBXFrameworksBuildPhase section */
+ 8D11072E0486CEB800E47090 /* Frameworks */ = {
+ isa = PBXFrameworksBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 8D11072F0486CEB800E47090 /* Cocoa.framework in Frameworks */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXFrameworksBuildPhase section */
+
+/* Begin PBXGroup section */
+ 080E96DDFE201D6D7F000001 /* Classes */ = {
+ isa = PBXGroup;
+ children = (
+ 256AC3D80F4B6AC300CF3369 /* PickerAppDelegate.h */,
+ 256AC3D90F4B6AC300CF3369 /* PickerAppDelegate.m */,
+ B0B07F2311EC84A300B7E872 /* PickerBackgroundView.h */,
+ B0B07F2411EC84A300B7E872 /* PickerBackgroundView.m */,
+ );
+ name = Classes;
+ sourceTree = "<group>";
+ };
+ 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ 1058C7A1FEA54F0111CA2CBB /* Cocoa.framework */,
+ 29B97324FDCFA39411CA2CEA /* AppKit.framework */,
+ 13E42FB307B3F0F600E4EEF1 /* CoreData.framework */,
+ 29B97325FDCFA39411CA2CEA /* Foundation.framework */,
+ );
+ name = "Linked Frameworks";
+ sourceTree = "<group>";
+ };
+ 19C28FACFE9D520D11CA2CBB /* Products */ = {
+ isa = PBXGroup;
+ children = (
+ 8D1107320486CEB800E47090 /* Picker.app */,
+ );
+ name = Products;
+ sourceTree = "<group>";
+ };
+ 29B97314FDCFA39411CA2CEA /* GPUSwitcher */ = {
+ isa = PBXGroup;
+ children = (
+ 080E96DDFE201D6D7F000001 /* Classes */,
+ 29B97315FDCFA39411CA2CEA /* Other Sources */,
+ 29B97317FDCFA39411CA2CEA /* Resources */,
+ 29B97323FDCFA39411CA2CEA /* Frameworks */,
+ 19C28FACFE9D520D11CA2CBB /* Products */,
+ );
+ name = GPUSwitcher;
+ sourceTree = "<group>";
+ };
+ 29B97315FDCFA39411CA2CEA /* Other Sources */ = {
+ isa = PBXGroup;
+ children = (
+ 256AC3F00F4B6AF500CF3369 /* Picker_Prefix.pch */,
+ 29B97316FDCFA39411CA2CEA /* main.m */,
+ );
+ name = "Other Sources";
+ sourceTree = "<group>";
+ };
+ 29B97317FDCFA39411CA2CEA /* Resources */ = {
+ isa = PBXGroup;
+ children = (
+ B05742FD11EC5FC20065EE0B /* Icon.icns */,
+ B05742C611EC5CA00065EE0B /* wheel.png */,
+ B05742E511EC5E780065EE0B /* wheel_selected.png */,
+ 8D1107310486CEB800E47090 /* Picker-Info.plist */,
+ 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */,
+ 1DDD58140DA1D0A300B32029 /* MainMenu.xib */,
+ );
+ name = Resources;
+ sourceTree = "<group>";
+ };
+ 29B97323FDCFA39411CA2CEA /* Frameworks */ = {
+ isa = PBXGroup;
+ children = (
+ 1058C7A0FEA54F0111CA2CBB /* Linked Frameworks */,
+ );
+ name = Frameworks;
+ sourceTree = "<group>";
+ };
+/* End PBXGroup section */
+
+/* Begin PBXNativeTarget section */
+ 8D1107260486CEB800E47090 /* Picker */ = {
+ isa = PBXNativeTarget;
+ buildConfigurationList = C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "Picker" */;
+ buildPhases = (
+ 8D1107290486CEB800E47090 /* Resources */,
+ 8D11072C0486CEB800E47090 /* Sources */,
+ 8D11072E0486CEB800E47090 /* Frameworks */,
+ );
+ buildRules = (
+ );
+ dependencies = (
+ );
+ name = Picker;
+ productInstallPath = "$(HOME)/Applications";
+ productName = GPUSwitcher;
+ productReference = 8D1107320486CEB800E47090 /* Picker.app */;
+ productType = "com.apple.product-type.application";
+ };
+/* End PBXNativeTarget section */
+
+/* Begin PBXProject section */
+ 29B97313FDCFA39411CA2CEA /* Project object */ = {
+ isa = PBXProject;
+ buildConfigurationList = C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Picker" */;
+ compatibilityVersion = "Xcode 3.1";
+ developmentRegion = English;
+ hasScannedForEncodings = 1;
+ knownRegions = (
+ English,
+ Japanese,
+ French,
+ German,
+ );
+ mainGroup = 29B97314FDCFA39411CA2CEA /* GPUSwitcher */;
+ projectDirPath = "";
+ projectRoot = "";
+ targets = (
+ 8D1107260486CEB800E47090 /* Picker */,
+ );
+ };
+/* End PBXProject section */
+
+/* Begin PBXResourcesBuildPhase section */
+ 8D1107290486CEB800E47090 /* Resources */ = {
+ isa = PBXResourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 8D11072B0486CEB800E47090 /* InfoPlist.strings in Resources */,
+ 1DDD58160DA1D0A300B32029 /* MainMenu.xib in Resources */,
+ B05742C711EC5CA00065EE0B /* wheel.png in Resources */,
+ B05742E611EC5E780065EE0B /* wheel_selected.png in Resources */,
+ B05742FE11EC5FC20065EE0B /* Icon.icns in Resources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXResourcesBuildPhase section */
+
+/* Begin PBXSourcesBuildPhase section */
+ 8D11072C0486CEB800E47090 /* Sources */ = {
+ isa = PBXSourcesBuildPhase;
+ buildActionMask = 2147483647;
+ files = (
+ 8D11072D0486CEB800E47090 /* main.m in Sources */,
+ 256AC3DA0F4B6AC300CF3369 /* PickerAppDelegate.m in Sources */,
+ B0B07F2511EC84A300B7E872 /* PickerBackgroundView.m in Sources */,
+ );
+ runOnlyForDeploymentPostprocessing = 0;
+ };
+/* End PBXSourcesBuildPhase section */
+
+/* Begin PBXVariantGroup section */
+ 089C165CFE840E0CC02AAC07 /* InfoPlist.strings */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 089C165DFE840E0CC02AAC07 /* English */,
+ );
+ name = InfoPlist.strings;
+ sourceTree = "<group>";
+ };
+ 1DDD58140DA1D0A300B32029 /* MainMenu.xib */ = {
+ isa = PBXVariantGroup;
+ children = (
+ 1DDD58150DA1D0A300B32029 /* English */,
+ );
+ name = MainMenu.xib;
+ sourceTree = "<group>";
+ };
+/* End PBXVariantGroup section */
+
+/* Begin XCBuildConfiguration section */
+ C01FCF4B08A954540054247B /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ ARCHS = "$(ARCHS_STANDARD_64_BIT)";
+ COPY_PHASE_STRIP = NO;
+ GCC_DYNAMIC_NO_PIC = NO;
+ GCC_ENABLE_FIX_AND_CONTINUE = YES;
+ GCC_ENABLE_OBJC_GC = supported;
+ GCC_MODEL_TUNING = G5;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = Picker_Prefix.pch;
+ GCC_VERSION = com.apple.compilers.llvmgcc42;
+ INFOPLIST_FILE = "Picker-Info.plist";
+ INSTALL_PATH = "$(HOME)/Applications";
+ PRODUCT_NAME = Picker;
+ };
+ name = Debug;
+ };
+ C01FCF4C08A954540054247B /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ALWAYS_SEARCH_USER_PATHS = NO;
+ ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
+ GCC_ENABLE_OBJC_GC = supported;
+ GCC_MODEL_TUNING = G5;
+ GCC_PRECOMPILE_PREFIX_HEADER = YES;
+ GCC_PREFIX_HEADER = Picker_Prefix.pch;
+ GCC_VERSION = com.apple.compilers.llvmgcc42;
+ INFOPLIST_FILE = "Picker-Info.plist";
+ INSTALL_PATH = "$(HOME)/Applications";
+ PRODUCT_NAME = Picker;
+ };
+ name = Release;
+ };
+ C01FCF4F08A954540054247B /* Debug */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ GCC_C_LANGUAGE_STANDARD = gnu99;
+ GCC_OPTIMIZATION_LEVEL = 0;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ ONLY_ACTIVE_ARCH = YES;
+ PREBINDING = NO;
+ SDKROOT = macosx10.6;
+ };
+ name = Debug;
+ };
+ C01FCF5008A954540054247B /* Release */ = {
+ isa = XCBuildConfiguration;
+ buildSettings = {
+ ARCHS = "$(ARCHS_STANDARD_32_64_BIT)";
+ GCC_C_LANGUAGE_STANDARD = gnu99;
+ GCC_WARN_ABOUT_RETURN_TYPE = YES;
+ GCC_WARN_UNUSED_VARIABLE = YES;
+ PREBINDING = NO;
+ SDKROOT = macosx10.6;
+ };
+ name = Release;
+ };
+/* End XCBuildConfiguration section */
+
+/* Begin XCConfigurationList section */
+ C01FCF4A08A954540054247B /* Build configuration list for PBXNativeTarget "Picker" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ C01FCF4B08A954540054247B /* Debug */,
+ C01FCF4C08A954540054247B /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+ C01FCF4E08A954540054247B /* Build configuration list for PBXProject "Picker" */ = {
+ isa = XCConfigurationList;
+ buildConfigurations = (
+ C01FCF4F08A954540054247B /* Debug */,
+ C01FCF5008A954540054247B /* Release */,
+ );
+ defaultConfigurationIsVisible = 0;
+ defaultConfigurationName = Release;
+ };
+/* End XCConfigurationList section */
+ };
+ rootObject = 29B97313FDCFA39411CA2CEA /* Project object */;
+}
1,441 Picker.xcodeproj/steven.mode1v3
@@ -0,0 +1,1441 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
+<plist version="1.0">
+<dict>
+ <key>ActivePerspectiveName</key>
+ <string>Project</string>
+ <key>AllowedModules</key>
+ <array>
+ <dict>
+ <key>BundleLoadPath</key>
+ <string></string>
+ <key>MaxInstances</key>
+ <string>n</string>
+ <key>Module</key>
+ <string>PBXSmartGroupTreeModule</string>
+ <key>Name</key>
+ <string>Groups and Files Outline View</string>
+ </dict>
+ <dict>
+ <key>BundleLoadPath</key>
+ <string></string>
+ <key>MaxInstances</key>
+ <string>n</string>
+ <key>Module</key>
+ <string>PBXNavigatorGroup</string>
+ <key>Name</key>
+ <string>Editor</string>
+ </dict>
+ <dict>
+ <key>BundleLoadPath</key>
+ <string></string>
+ <key>MaxInstances</key>
+ <string>n</string>
+ <key>Module</key>
+ <string>XCTaskListModule</string>
+ <key>Name</key>
+ <string>Task List</string>
+ </dict>
+ <dict>
+ <key>BundleLoadPath</key>
+ <string></string>
+ <key>MaxInstances</key>
+ <string>n</string>
+ <key>Module</key>
+ <string>XCDetailModule</string>
+ <key>Name</key>
+ <string>File and Smart Group Detail Viewer</string>
+ </dict>
+ <dict>
+ <key>BundleLoadPath</key>
+ <string></string>
+ <key>MaxInstances</key>
+ <string>1</string>
+ <key>Module</key>
+ <string>PBXBuildResultsModule</string>
+ <key>Name</key>
+ <string>Detailed Build Results Viewer</string>
+ </dict>
+ <dict>
+ <key>BundleLoadPath</key>
+ <string></string>
+ <key>MaxInstances</key>
+ <string>1</string>
+ <key>Module</key>
+ <string>PBXProjectFindModule</string>
+ <key>Name</key>
+ <string>Project Batch Find Tool</string>
+ </dict>
+ <dict>
+ <key>BundleLoadPath</key>
+ <string></string>
+ <key>MaxInstances</key>
+ <string>n</string>
+ <key>Module</key>
+ <string>XCProjectFormatConflictsModule</string>
+ <key>Name</key>
+ <string>Project Format Conflicts List</string>
+ </dict>
+ <dict>
+ <key>BundleLoadPath</key>
+ <string></string>
+ <key>MaxInstances</key>
+ <string>n</string>
+ <key>Module</key>
+ <string>PBXBookmarksModule</string>
+ <key>Name</key>
+ <string>Bookmarks Tool</string>
+ </dict>
+ <dict>
+ <key>BundleLoadPath</key>
+ <string></string>
+ <key>MaxInstances</key>
+ <string>n</string>
+ <key>Module</key>
+ <string>PBXClassBrowserModule</string>
+ <key>Name</key>
+ <string>Class Browser</string>
+ </dict>
+ <dict>
+ <key>BundleLoadPath</key>
+ <string></string>
+ <key>MaxInstances</key>
+ <string>n</string>
+ <key>Module</key>
+ <string>PBXCVSModule</string>
+ <key>Name</key>
+ <string>Source Code Control Tool</string>
+ </dict>
+ <dict>
+ <key>BundleLoadPath</key>
+ <string></string>
+ <key>MaxInstances</key>
+ <string>n</string>
+ <key>Module</key>
+ <string>PBXDebugBreakpointsModule</string>
+ <key>Name</key>
+ <string>Debug Breakpoints Tool</string>
+ </dict>
+ <dict>
+ <key>BundleLoadPath</key>
+ <string></string>
+ <key>MaxInstances</key>
+ <string>n</string>
+ <key>Module</key>
+ <string>XCDockableInspector</string>
+ <key>Name</key>
+ <string>Inspector</string>
+ </dict>
+ <dict>
+ <key>BundleLoadPath</key>
+ <string></string>
+ <key>MaxInstances</key>
+ <string>n</string>
+ <key>Module</key>
+ <string>PBXOpenQuicklyModule</string>
+ <key>Name</key>
+ <string>Open Quickly Tool</string>
+ </dict>
+ <dict>
+ <key>BundleLoadPath</key>
+ <string></string>
+ <key>MaxInstances</key>
+ <string>1</string>
+ <key>Module</key>
+ <string>PBXDebugSessionModule</string>
+ <key>Name</key>
+ <string>Debugger</string>
+ </dict>
+ <dict>
+ <key>BundleLoadPath</key>
+ <string></string>
+ <key>MaxInstances</key>
+ <string>1</string>
+ <key>Module</key>
+ <string>PBXDebugCLIModule</string>
+ <key>Name</key>
+ <string>Debug Console</string>
+ </dict>
+ <dict>
+ <key>BundleLoadPath</key>
+ <string></string>
+ <key>MaxInstances</key>
+ <string>n</string>
+ <key>Module</key>
+ <string>XCSnapshotModule</string>
+ <key>Name</key>
+ <string>Snapshots Tool</string>
+ </dict>
+ </array>
+ <key>BundlePath</key>
+ <string>/Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources</string>
+ <key>Description</key>
+ <string>DefaultDescriptionKey</string>
+ <key>DockingSystemVisible</key>
+ <false/>
+ <key>Extension</key>
+ <string>mode1v3</string>
+ <key>FavBarConfig</key>
+ <dict>
+ <key>PBXProjectModuleGUID</key>
+ <string>B0AF06CA106D2AEC00165DD2</string>
+ <key>XCBarModuleItemNames</key>
+ <dict/>
+ <key>XCBarModuleItems</key>
+ <array/>
+ </dict>
+ <key>FirstTimeWindowDisplayed</key>
+ <false/>
+ <key>Identifier</key>
+ <string>com.apple.perspectives.project.mode1v3</string>
+ <key>MajorVersion</key>
+ <integer>33</integer>
+ <key>MinorVersion</key>
+ <integer>0</integer>
+ <key>Name</key>
+ <string>Default</string>
+ <key>Notifications</key>
+ <array/>
+ <key>OpenEditors</key>
+ <array/>
+ <key>PerspectiveWidths</key>
+ <array>
+ <integer>-1</integer>
+ <integer>-1</integer>
+ </array>
+ <key>Perspectives</key>
+ <array>
+ <dict>
+ <key>ChosenToolbarItems</key>
+ <array>
+ <string>active-combo-popup</string>
+ <string>action</string>
+ <string>NSToolbarFlexibleSpaceItem</string>
+ <string>buildOrClean</string>
+ <string>build-and-go</string>
+ <string>debugger-enable-breakpoints</string>
+ <string>com.apple.ide.PBXToolbarStopButton</string>
+ <string>get-info</string>
+ <string>NSToolbarFlexibleSpaceItem</string>
+ <string>com.apple.pbx.toolbar.searchfield</string>
+ </array>
+ <key>ControllerClassBaseName</key>
+ <string></string>
+ <key>IconName</key>
+ <string>WindowOfProjectWithEditor</string>
+ <key>Identifier</key>
+ <string>perspective.project</string>
+ <key>IsVertical</key>
+ <false/>
+ <key>Layout</key>
+ <array>
+ <dict>
+ <key>ContentConfiguration</key>
+ <dict>
+ <key>PBXBottomSmartGroupGIDs</key>
+ <array>
+ <string>1C37FBAC04509CD000000102</string>
+ <string>1C37FAAC04509CD000000102</string>
+ <string>1C37FABC05509CD000000102</string>
+ <string>1C37FABC05539CD112110102</string>
+ <string>E2644B35053B69B200211256</string>
+ <string>1C37FABC04509CD000100104</string>
+ <string>1CC0EA4004350EF90044410B</string>
+ <string>1CC0EA4004350EF90041110B</string>
+ </array>
+ <key>PBXProjectModuleGUID</key>
+ <string>1CE0B1FE06471DED0097A5F4</string>
+ <key>PBXProjectModuleLabel</key>
+ <string>Files</string>
+ <key>PBXProjectStructureProvided</key>
+ <string>yes</string>
+ <key>PBXSmartGroupTreeModuleColumnData</key>
+ <dict>
+ <key>PBXSmartGroupTreeModuleColumnWidthsKey</key>
+ <array>
+ <real>251</real>
+ </array>
+ <key>PBXSmartGroupTreeModuleColumnsKey_v4</key>
+ <array>
+ <string>MainColumn</string>
+ </array>
+ </dict>
+ <key>PBXSmartGroupTreeModuleOutlineStateKey_v7</key>
+ <dict>
+ <key>PBXSmartGroupTreeModuleOutlineStateExpansionKey</key>
+ <array>
+ <string>29B97314FDCFA39411CA2CEA</string>
+ <string>080E96DDFE201D6D7F000001</string>
+ <string>29B97315FDCFA39411CA2CEA</string>
+ <string>29B97317FDCFA39411CA2CEA</string>
+ <string>29B97323FDCFA39411CA2CEA</string>
+ <string>1058C7A0FEA54F0111CA2CBB</string>
+ <string>19C28FACFE9D520D11CA2CBB</string>
+ <string>1C37FABC05509CD000000102</string>
+ </array>
+ <key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
+ <array>
+ <array>
+ <integer>3</integer>
+ <integer>1</integer>
+ <integer>0</integer>
+ </array>
+ </array>
+ <key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
+ <string>{{0, 0}, {251, 933}}</string>
+ </dict>
+ <key>PBXTopSmartGroupGIDs</key>
+ <array/>
+ <key>XCIncludePerspectivesSwitch</key>
+ <true/>
+ <key>XCSharingToken</key>
+ <string>com.apple.Xcode.GFSharingToken</string>
+ </dict>
+ <key>GeometryConfiguration</key>
+ <dict>
+ <key>Frame</key>
+ <string>{{0, 0}, {268, 951}}</string>
+ <key>GroupTreeTableConfiguration</key>
+ <array>
+ <string>MainColumn</string>
+ <real>251</real>
+ </array>
+ <key>RubberWindowFrame</key>
+ <string>44 186 1773 992 0 0 1920 1178 </string>
+ </dict>
+ <key>Module</key>
+ <string>PBXSmartGroupTreeModule</string>
+ <key>Proportion</key>
+ <string>268pt</string>
+ </dict>
+ <dict>
+ <key>Dock</key>
+ <array>
+ <dict>
+ <key>BecomeActive</key>
+ <true/>
+ <key>ContentConfiguration</key>
+ <dict>
+ <key>PBXProjectModuleGUID</key>
+ <string>1CE0B20306471E060097A5F4</string>
+ <key>PBXProjectModuleLabel</key>
+ <string>PickerAppDelegate.m</string>
+ <key>PBXSplitModuleInNavigatorKey</key>
+ <dict>
+ <key>Split0</key>
+ <dict>
+ <key>PBXProjectModuleGUID</key>
+ <string>1CE0B20406471E060097A5F4</string>
+ <key>PBXProjectModuleLabel</key>
+ <string>PickerAppDelegate.m</string>
+ <key>_historyCapacity</key>
+ <integer>0</integer>
+ <key>bookmark</key>
+ <string>B028F22C121155E000F27191</string>
+ <key>history</key>
+ <array>
+ <string>B06651C511EC720A000DD19F</string>
+ <string>B06651CC11EC720A000DD19F</string>
+ <string>B06652DE11EC7B94000DD19F</string>
+ <string>B0B07FB111EC8FC000B7E872</string>
+ <string>B0B07FB411EC8FC000B7E872</string>
+ <string>B0C6F86F11EC9D530076E889</string>
+ <string>B0C6F87A11EC9DAD0076E889</string>
+ <string>B0C6F89911EC9F8B0076E889</string>
+ <string>B0C6F8A911ECA00E0076E889</string>
+ <string>B0C6F97C11ECA9D70076E889</string>
+ <string>B08FD54312115171004E5346</string>
+ <string>B08FD54412115171004E5346</string>
+ <string>B08FD54512115171004E5346</string>
+ <string>B08FD54612115171004E5346</string>
+ <string>B08FD54712115171004E5346</string>
+ <string>B08FD54812115171004E5346</string>
+ <string>B028F227121155E000F27191</string>
+ <string>B028F228121155E000F27191</string>
+ <string>B028F229121155E000F27191</string>
+ <string>B028F22A121155E000F27191</string>
+ <string>B028F22B121155E000F27191</string>
+ </array>
+ </dict>
+ <key>SplitCount</key>
+ <string>1</string>
+ </dict>
+ <key>StatusBarVisibility</key>
+ <true/>
+ </dict>
+ <key>GeometryConfiguration</key>
+ <dict>
+ <key>Frame</key>
+ <string>{{0, 0}, {1500, 807}}</string>
+ <key>RubberWindowFrame</key>
+ <string>44 186 1773 992 0 0 1920 1178 </string>
+ </dict>
+ <key>Module</key>
+ <string>PBXNavigatorGroup</string>
+ <key>Proportion</key>
+ <string>807pt</string>
+ </dict>
+ <dict>
+ <key>ContentConfiguration</key>
+ <dict>
+ <key>PBXProjectModuleGUID</key>
+ <string>1CE0B20506471E060097A5F4</string>
+ <key>PBXProjectModuleLabel</key>
+ <string>Detail</string>
+ </dict>
+ <key>GeometryConfiguration</key>
+ <dict>
+ <key>Frame</key>
+ <string>{{0, 812}, {1500, 139}}</string>
+ <key>RubberWindowFrame</key>
+ <string>44 186 1773 992 0 0 1920 1178 </string>
+ </dict>
+ <key>Module</key>
+ <string>XCDetailModule</string>
+ <key>Proportion</key>
+ <string>139pt</string>
+ </dict>
+ </array>
+ <key>Proportion</key>
+ <string>1500pt</string>
+ </dict>
+ </array>
+ <key>Name</key>
+ <string>Project</string>
+ <key>ServiceClasses</key>
+ <array>
+ <string>XCModuleDock</string>
+ <string>PBXSmartGroupTreeModule</string>
+ <string>XCModuleDock</string>
+ <string>PBXNavigatorGroup</string>
+ <string>XCDetailModule</string>
+ </array>
+ <key>TableOfContents</key>
+ <array>
+ <string>B028F22D121155E000F27191</string>
+ <string>1CE0B1FE06471DED0097A5F4</string>
+ <string>B028F22E121155E000F27191</string>
+ <string>1CE0B20306471E060097A5F4</string>
+ <string>1CE0B20506471E060097A5F4</string>
+ </array>
+ <key>ToolbarConfigUserDefaultsMinorVersion</key>
+ <string>2</string>
+ <key>ToolbarConfiguration</key>
+ <string>xcode.toolbar.config.defaultV3</string>
+ </dict>
+ <dict>
+ <key>ControllerClassBaseName</key>
+ <string></string>
+ <key>IconName</key>
+ <string>WindowOfProject</string>
+ <key>Identifier</key>
+ <string>perspective.morph</string>
+ <key>IsVertical</key>
+ <integer>0</integer>
+ <key>Layout</key>
+ <array>
+ <dict>
+ <key>BecomeActive</key>
+ <integer>1</integer>
+ <key>ContentConfiguration</key>
+ <dict>
+ <key>PBXBottomSmartGroupGIDs</key>
+ <array>
+ <string>1C37FBAC04509CD000000102</string>
+ <string>1C37FAAC04509CD000000102</string>
+ <string>1C08E77C0454961000C914BD</string>
+ <string>1C37FABC05509CD000000102</string>
+ <string>1C37FABC05539CD112110102</string>
+ <string>E2644B35053B69B200211256</string>
+ <string>1C37FABC04509CD000100104</string>
+ <string>1CC0EA4004350EF90044410B</string>
+ <string>1CC0EA4004350EF90041110B</string>
+ </array>
+ <key>PBXProjectModuleGUID</key>
+ <string>11E0B1FE06471DED0097A5F4</string>
+ <key>PBXProjectModuleLabel</key>
+ <string>Files</string>
+ <key>PBXProjectStructureProvided</key>
+ <string>yes</string>
+ <key>PBXSmartGroupTreeModuleColumnData</key>
+ <dict>
+ <key>PBXSmartGroupTreeModuleColumnWidthsKey</key>
+ <array>
+ <real>186</real>
+ </array>
+ <key>PBXSmartGroupTreeModuleColumnsKey_v4</key>
+ <array>
+ <string>MainColumn</string>
+ </array>
+ </dict>
+ <key>PBXSmartGroupTreeModuleOutlineStateKey_v7</key>
+ <dict>
+ <key>PBXSmartGroupTreeModuleOutlineStateExpansionKey</key>
+ <array>
+ <string>29B97314FDCFA39411CA2CEA</string>
+ <string>1C37FABC05509CD000000102</string>
+ </array>
+ <key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
+ <array>
+ <array>
+ <integer>0</integer>
+ </array>
+ </array>
+ <key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
+ <string>{{0, 0}, {186, 337}}</string>
+ </dict>
+ <key>PBXTopSmartGroupGIDs</key>
+ <array/>
+ <key>XCIncludePerspectivesSwitch</key>
+ <integer>1</integer>
+ <key>XCSharingToken</key>
+ <string>com.apple.Xcode.GFSharingToken</string>
+ </dict>
+ <key>GeometryConfiguration</key>
+ <dict>
+ <key>Frame</key>
+ <string>{{0, 0}, {203, 355}}</string>
+ <key>GroupTreeTableConfiguration</key>
+ <array>
+ <string>MainColumn</string>
+ <real>186</real>
+ </array>
+ <key>RubberWindowFrame</key>
+ <string>373 269 690 397 0 0 1440 878 </string>
+ </dict>
+ <key>Module</key>
+ <string>PBXSmartGroupTreeModule</string>
+ <key>Proportion</key>
+ <string>100%</string>
+ </dict>
+ </array>
+ <key>Name</key>
+ <string>Morph</string>
+ <key>PreferredWidth</key>
+ <integer>300</integer>
+ <key>ServiceClasses</key>
+ <array>
+ <string>XCModuleDock</string>
+ <string>PBXSmartGroupTreeModule</string>
+ </array>
+ <key>TableOfContents</key>
+ <array>
+ <string>11E0B1FE06471DED0097A5F4</string>
+ </array>
+ <key>ToolbarConfiguration</key>
+ <string>xcode.toolbar.config.default.shortV3</string>
+ </dict>
+ </array>
+ <key>PerspectivesBarVisible</key>
+ <false/>
+ <key>ShelfIsVisible</key>
+ <false/>
+ <key>SourceDescription</key>
+ <string>file at '/Developer/Library/PrivateFrameworks/DevToolsInterface.framework/Resources/XCPerspectivesSpecificationMode1.xcperspec'</string>
+ <key>StatusbarIsVisible</key>
+ <true/>
+ <key>TimeStamp</key>
+ <real>0.0</real>
+ <key>ToolbarConfigUserDefaultsMinorVersion</key>
+ <string>2</string>
+ <key>ToolbarDisplayMode</key>
+ <integer>2</integer>
+ <key>ToolbarIsVisible</key>
+ <true/>
+ <key>ToolbarSizeMode</key>
+ <integer>1</integer>
+ <key>Type</key>
+ <string>Perspectives</string>
+ <key>UpdateMessage</key>
+ <string>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 '%@'?</string>
+ <key>WindowJustification</key>
+ <integer>5</integer>
+ <key>WindowOrderList</key>
+ <array>
+ <string>B028F237121155E000F27191</string>
+ <string>B028F238121155E000F27191</string>
+ <string>1C78EAAD065D492600B07095</string>
+ <string>1CD10A99069EF8BA00B06720</string>
+ <string>B0AF06CB106D2AEC00165DD2</string>
+ <string>/Users/steven/Dropbox/Projects/picker/Picker.xcodeproj</string>
+ </array>
+ <key>WindowString</key>
+ <string>44 186 1773 992 0 0 1920 1178 </string>
+ <key>WindowToolsV3</key>
+ <array>
+ <dict>
+ <key>FirstTimeWindowDisplayed</key>
+ <false/>
+ <key>Identifier</key>
+ <string>windowTool.build</string>
+ <key>IsVertical</key>
+ <true/>
+ <key>Layout</key>
+ <array>
+ <dict>
+ <key>Dock</key>
+ <array>
+ <dict>
+ <key>ContentConfiguration</key>
+ <dict>
+ <key>PBXProjectModuleGUID</key>
+ <string>1CD0528F0623707200166675</string>
+ <key>PBXProjectModuleLabel</key>
+ <string></string>
+ <key>StatusBarVisibility</key>
+ <true/>
+ </dict>
+ <key>GeometryConfiguration</key>
+ <dict>
+ <key>Frame</key>
+ <string>{{0, 0}, {832, 303}}</string>
+ <key>RubberWindowFrame</key>
+ <string>621 380 832 585 0 0 1920 1178 </string>
+ </dict>
+ <key>Module</key>
+ <string>PBXNavigatorGroup</string>
+ <key>Proportion</key>
+ <string>303pt</string>
+ </dict>
+ <dict>
+ <key>ContentConfiguration</key>
+ <dict>
+ <key>PBXProjectModuleGUID</key>
+ <string>XCMainBuildResultsModuleGUID</string>
+ <key>PBXProjectModuleLabel</key>
+ <string>Build Results</string>
+ <key>XCBuildResultsTrigger_Collapse</key>
+ <integer>1021</integer>
+ <key>XCBuildResultsTrigger_Open</key>
+ <integer>1011</integer>
+ </dict>
+ <key>GeometryConfiguration</key>
+ <dict>
+ <key>Frame</key>
+ <string>{{0, 308}, {832, 236}}</string>
+ <key>RubberWindowFrame</key>
+ <string>621 380 832 585 0 0 1920 1178 </string>
+ </dict>
+ <key>Module</key>
+ <string>PBXBuildResultsModule</string>
+ <key>Proportion</key>
+ <string>236pt</string>
+ </dict>
+ </array>
+ <key>Proportion</key>
+ <string>544pt</string>
+ </dict>
+ </array>
+ <key>Name</key>
+ <string>Build Results</string>
+ <key>ServiceClasses</key>
+ <array>
+ <string>PBXBuildResultsModule</string>
+ </array>
+ <key>StatusbarIsVisible</key>
+ <true/>
+ <key>TableOfContents</key>
+ <array>
+ <string>B0AF06CB106D2AEC00165DD2</string>
+ <string>B028F22F121155E000F27191</string>
+ <string>1CD0528F0623707200166675</string>
+ <string>XCMainBuildResultsModuleGUID</string>
+ </array>
+ <key>ToolbarConfiguration</key>
+ <string>xcode.toolbar.config.buildV3</string>
+ <key>WindowContentMinSize</key>
+ <string>486 300</string>
+ <key>WindowString</key>
+ <string>621 380 832 585 0 0 1920 1178 </string>
+ <key>WindowToolGUID</key>
+ <string>B0AF06CB106D2AEC00165DD2</string>
+ <key>WindowToolIsVisible</key>
+ <false/>
+ </dict>
+ <dict>
+ <key>FirstTimeWindowDisplayed</key>
+ <false/>
+ <key>Identifier</key>
+ <string>windowTool.debugger</string>
+ <key>IsVertical</key>
+ <true/>
+ <key>Layout</key>
+ <array>
+ <dict>
+ <key>Dock</key>
+ <array>
+ <dict>
+ <key>ContentConfiguration</key>
+ <dict>
+ <key>Debugger</key>
+ <dict>
+ <key>HorizontalSplitView</key>
+ <dict>
+ <key>_collapsingFrameDimension</key>
+ <real>0.0</real>
+ <key>_indexOfCollapsedView</key>
+ <integer>0</integer>
+ <key>_percentageOfCollapsedView</key>
+ <real>0.0</real>
+ <key>isCollapsed</key>
+ <string>yes</string>
+ <key>sizes</key>
+ <array>
+ <string>{{0, 0}, {628, 233}}</string>
+ <string>{{628, 0}, {628, 233}}</string>
+ </array>
+ </dict>
+ <key>VerticalSplitView</key>
+ <dict>
+ <key>_collapsingFrameDimension</key>
+ <real>0.0</real>
+ <key>_indexOfCollapsedView</key>
+ <integer>0</integer>
+ <key>_percentageOfCollapsedView</key>
+ <real>0.0</real>
+ <key>isCollapsed</key>
+ <string>yes</string>
+ <key>sizes</key>
+ <array>
+ <string>{{0, 0}, {1256, 233}}</string>
+ <string>{{0, 233}, {1256, 207}}</string>
+ </array>
+ </dict>
+ </dict>
+ <key>LauncherConfigVersion</key>
+ <string>8</string>
+ <key>PBXProjectModuleGUID</key>
+ <string>1C162984064C10D400B95A72</string>
+ <key>PBXProjectModuleLabel</key>
+ <string>Debug - GLUTExamples (Underwater)</string>
+ </dict>
+ <key>GeometryConfiguration</key>
+ <dict>
+ <key>DebugConsoleVisible</key>
+ <string>None</string>
+ <key>DebugConsoleWindowFrame</key>
+ <string>{{200, 200}, {500, 300}}</string>
+ <key>DebugSTDIOWindowFrame</key>
+ <string>{{200, 200}, {500, 300}}</string>
+ <key>Frame</key>
+ <string>{{0, 0}, {1256, 440}}</string>
+ <key>PBXDebugSessionStackFrameViewKey</key>
+ <dict>
+ <key>DebugVariablesTableConfiguration</key>
+ <array>
+ <string>Name</string>
+ <real>120</real>
+ <string>Value</string>
+ <real>85</real>
+ <string>Summary</string>
+ <real>398</real>
+ </array>
+ <key>Frame</key>
+ <string>{{628, 0}, {628, 233}}</string>
+ <key>RubberWindowFrame</key>
+ <string>51 233 1256 481 0 0 1920 1178 </string>
+ </dict>
+ <key>RubberWindowFrame</key>
+ <string>51 233 1256 481 0 0 1920 1178 </string>
+ </dict>
+ <key>Module</key>
+ <string>PBXDebugSessionModule</string>
+ <key>Proportion</key>
+ <string>440pt</string>
+ </dict>
+ </array>
+ <key>Proportion</key>
+ <string>440pt</string>
+ </dict>
+ </array>
+ <key>Name</key>
+ <string>Debugger</string>
+ <key>ServiceClasses</key>
+ <array>
+ <string>PBXDebugSessionModule</string>
+ </array>
+ <key>StatusbarIsVisible</key>
+ <true/>
+ <key>TableOfContents</key>
+ <array>
+ <string>1CD10A99069EF8BA00B06720</string>
+ <string>B028F230121155E000F27191</string>
+ <string>1C162984064C10D400B95A72</string>
+ <string>B028F231121155E000F27191</string>
+ <string>B028F232121155E000F27191</string>
+ <string>B028F233121155E000F27191</string>
+ <string>B028F234121155E000F27191</string>
+ <string>B028F235121155E000F27191</string>
+ </array>
+ <key>ToolbarConfiguration</key>
+ <string>xcode.toolbar.config.debugV3</string>
+ <key>WindowString</key>
+ <string>51 233 1256 481 0 0 1920 1178 </string>
+ <key>WindowToolGUID</key>
+ <string>1CD10A99069EF8BA00B06720</string>
+ <key>WindowToolIsVisible</key>
+ <false/>
+ </dict>
+ <dict>
+ <key>Identifier</key>
+ <string>windowTool.find</string>
+ <key>Layout</key>
+ <array>
+ <dict>
+ <key>Dock</key>
+ <array>
+ <dict>
+ <key>Dock</key>
+ <array>
+ <dict>
+ <key>ContentConfiguration</key>
+ <dict>
+ <key>PBXProjectModuleGUID</key>
+ <string>1CDD528C0622207200134675</string>
+ <key>PBXProjectModuleLabel</key>
+ <string>&lt;No Editor&gt;</string>
+ <key>PBXSplitModuleInNavigatorKey</key>
+ <dict>
+ <key>Split0</key>
+ <dict>
+ <key>PBXProjectModuleGUID</key>
+ <string>1CD0528D0623707200166675</string>
+ </dict>
+ <key>SplitCount</key>
+ <string>1</string>
+ </dict>
+ <key>StatusBarVisibility</key>
+ <integer>1</integer>
+ </dict>
+ <key>GeometryConfiguration</key>
+ <dict>
+ <key>Frame</key>
+ <string>{{0, 0}, {781, 167}}</string>
+ <key>RubberWindowFrame</key>
+ <string>62 385 781 470 0 0 1440 878 </string>
+ </dict>
+ <key>Module</key>
+ <string>PBXNavigatorGroup</string>
+ <key>Proportion</key>
+ <string>781pt</string>
+ </dict>
+ </array>
+ <key>Proportion</key>
+ <string>50%</string>
+ </dict>
+ <dict>
+ <key>BecomeActive</key>
+ <integer>1</integer>
+ <key>ContentConfiguration</key>
+ <dict>
+ <key>PBXProjectModuleGUID</key>
+ <string>1CD0528E0623707200166675</string>
+ <key>PBXProjectModuleLabel</key>
+ <string>Project Find</string>
+ </dict>
+ <key>GeometryConfiguration</key>
+ <dict>
+ <key>Frame</key>
+ <string>{{8, 0}, {773, 254}}</string>
+ <key>RubberWindowFrame</key>
+ <string>62 385 781 470 0 0 1440 878 </string>
+ </dict>
+ <key>Module</key>
+ <string>PBXProjectFindModule</string>
+ <key>Proportion</key>
+ <string>50%</string>
+ </dict>
+ </array>
+ <key>Proportion</key>
+ <string>428pt</string>
+ </dict>
+ </array>
+ <key>Name</key>
+ <string>Project Find</string>
+ <key>ServiceClasses</key>
+ <array>
+ <string>PBXProjectFindModule</string>
+ </array>
+ <key>StatusbarIsVisible</key>
+ <integer>1</integer>
+ <key>TableOfContents</key>
+ <array>
+ <string>1C530D57069F1CE1000CFCEE</string>
+ <string>1C530D58069F1CE1000CFCEE</string>
+ <string>1C530D59069F1CE1000CFCEE</string>
+ <string>1CDD528C0622207200134675</string>
+ <string>1C530D5A069F1CE1000CFCEE</string>
+ <string>1CE0B1FE06471DED0097A5F4</string>
+ <string>1CD0528E0623707200166675</string>
+ </array>
+ <key>WindowString</key>
+ <string>62 385 781 470 0 0 1440 878 </string>
+ <key>WindowToolGUID</key>
+ <string>1C530D57069F1CE1000CFCEE</string>
+ <key>WindowToolIsVisible</key>
+ <integer>0</integer>
+ </dict>
+ <dict>
+ <key>Identifier</key>
+ <string>MENUSEPARATOR</string>
+ </dict>
+ <dict>
+ <key>FirstTimeWindowDisplayed</key>
+ <false/>
+ <key>Identifier</key>
+ <string>windowTool.debuggerConsole</string>
+ <key>IsVertical</key>
+ <true/>
+ <key>Layout</key>
+ <array>
+ <dict>
+ <key>Dock</key>
+ <array>
+ <dict>
+ <key>ContentConfiguration</key>
+ <dict>
+ <key>PBXProjectModuleGUID</key>
+ <string>1C78EAAC065D492600B07095</string>
+ <key>PBXProjectModuleLabel</key>
+ <string>Debugger Console</string>
+ </dict>
+ <key>GeometryConfiguration</key>
+ <dict>
+ <key>Frame</key>
+ <string>{{0, 0}, {1758, 346}}</string>
+ <key>RubberWindowFrame</key>
+ <string>9 753 1758 387 0 0 1920 1178 </string>
+ </dict>
+ <key>Module</key>
+ <string>PBXDebugCLIModule</string>
+ <key>Proportion</key>
+ <string>346pt</string>
+ </dict>
+ </array>
+ <key>Proportion</key>
+ <string>346pt</string>
+ </dict>
+ </array>
+ <key>Name</key>
+ <string>Debugger Console</string>
+ <key>ServiceClasses</key>
+ <array>
+ <string>PBXDebugCLIModule</string>
+ </array>
+ <key>StatusbarIsVisible</key>
+ <true/>
+ <key>TableOfContents</key>
+ <array>
+ <string>1C78EAAD065D492600B07095</string>
+ <string>B028F236121155E000F27191</string>
+ <string>1C78EAAC065D492600B07095</string>
+ </array>
+ <key>ToolbarConfiguration</key>
+ <string>xcode.toolbar.config.consoleV3</string>
+ <key>WindowString</key>
+ <string>9 753 1758 387 0 0 1920 1178 </string>
+ <key>WindowToolGUID</key>
+ <string>1C78EAAD065D492600B07095</string>
+ <key>WindowToolIsVisible</key>
+ <false/>
+ </dict>
+ <dict>
+ <key>Identifier</key>
+ <string>windowTool.snapshots</string>
+ <key>Layout</key>
+ <array>
+ <dict>
+ <key>Dock</key>
+ <array>
+ <dict>
+ <key>Module</key>
+ <string>XCSnapshotModule</string>
+ <key>Proportion</key>
+ <string>100%</string>
+ </dict>
+ </array>
+ <key>Proportion</key>
+ <string>100%</string>
+ </dict>
+ </array>
+ <key>Name</key>
+ <string>Snapshots</string>
+ <key>ServiceClasses</key>
+ <array>
+ <string>XCSnapshotModule</string>
+ </array>
+ <key>StatusbarIsVisible</key>
+ <string>Yes</string>
+ <key>ToolbarConfiguration</key>
+ <string>xcode.toolbar.config.snapshots</string>
+ <key>WindowString</key>
+ <string>315 824 300 550 0 0 1440 878 </string>
+ <key>WindowToolIsVisible</key>
+ <string>Yes</string>
+ </dict>
+ <dict>
+ <key>Identifier</key>
+ <string>windowTool.scm</string>
+ <key>Layout</key>
+ <array>
+ <dict>
+ <key>Dock</key>
+ <array>
+ <dict>
+ <key>ContentConfiguration</key>
+ <dict>
+ <key>PBXProjectModuleGUID</key>
+ <string>1C78EAB2065D492600B07095</string>
+ <key>PBXProjectModuleLabel</key>
+ <string>&lt;No Editor&gt;</string>
+ <key>PBXSplitModuleInNavigatorKey</key>
+ <dict>
+ <key>Split0</key>
+ <dict>
+ <key>PBXProjectModuleGUID</key>
+ <string>1C78EAB3065D492600B07095</string>
+ </dict>
+ <key>SplitCount</key>
+ <string>1</string>
+ </dict>
+ <key>StatusBarVisibility</key>
+ <integer>1</integer>
+ </dict>
+ <key>GeometryConfiguration</key>
+ <dict>
+ <key>Frame</key>
+ <string>{{0, 0}, {452, 0}}</string>
+ <key>RubberWindowFrame</key>
+ <string>743 379 452 308 0 0 1280 1002 </string>
+ </dict>
+ <key>Module</key>
+ <string>PBXNavigatorGroup</string>
+ <key>Proportion</key>
+ <string>0pt</string>
+ </dict>
+ <dict>
+ <key>BecomeActive</key>
+ <integer>1</integer>
+ <key>ContentConfiguration</key>
+ <dict>
+ <key>PBXProjectModuleGUID</key>
+ <string>1CD052920623707200166675</string>
+ <key>PBXProjectModuleLabel</key>
+ <string>SCM</string>
+ </dict>
+ <key>GeometryConfiguration</key>
+ <dict>
+ <key>ConsoleFrame</key>
+ <string>{{0, 259}, {452, 0}}</string>
+ <key>Frame</key>
+ <string>{{0, 7}, {452, 259}}</string>
+ <key>RubberWindowFrame</key>
+ <string>743 379 452 308 0 0 1280 1002 </string>
+ <key>TableConfiguration</key>
+ <array>
+ <string>Status</string>
+ <real>30</real>
+ <string>FileName</string>
+ <real>199</real>
+ <string>Path</string>
+ <real>197.0950012207031</real>
+ </array>
+ <key>TableFrame</key>
+ <string>{{0, 0}, {452, 250}}</string>
+ </dict>
+ <key>Module</key>
+ <string>PBXCVSModule</string>
+ <key>Proportion</key>
+ <string>262pt</string>
+ </dict>
+ </array>
+ <key>Proportion</key>
+ <string>266pt</string>
+ </dict>
+ </array>
+ <key>Name</key>
+ <string>SCM</string>
+ <key>ServiceClasses</key>
+ <array>
+ <string>PBXCVSModule</string>
+ </array>
+ <key>StatusbarIsVisible</key>
+ <integer>1</integer>
+ <key>TableOfContents</key>
+ <array>
+ <string>1C78EAB4065D492600B07095</string>
+ <string>1C78EAB5065D492600B07095</string>
+ <string>1C78EAB2065D492600B07095</string>
+ <string>1CD052920623707200166675</string>
+ </array>
+ <key>ToolbarConfiguration</key>
+ <string>xcode.toolbar.config.scm</string>
+ <key>WindowString</key>
+ <string>743 379 452 308 0 0 1280 1002 </string>
+ </dict>
+ <dict>
+ <key>Identifier</key>
+ <string>windowTool.breakpoints</string>
+ <key>IsVertical</key>
+ <integer>0</integer>
+ <key>Layout</key>
+ <array>
+ <dict>
+ <key>Dock</key>
+ <array>
+ <dict>
+ <key>BecomeActive</key>
+ <integer>1</integer>
+ <key>ContentConfiguration</key>
+ <dict>
+ <key>PBXBottomSmartGroupGIDs</key>
+ <array>
+ <string>1C77FABC04509CD000000102</string>
+ </array>
+ <key>PBXProjectModuleGUID</key>
+ <string>1CE0B1FE06471DED0097A5F4</string>
+ <key>PBXProjectModuleLabel</key>
+ <string>Files</string>
+ <key>PBXProjectStructureProvided</key>
+ <string>no</string>
+ <key>PBXSmartGroupTreeModuleColumnData</key>
+ <dict>
+ <key>PBXSmartGroupTreeModuleColumnWidthsKey</key>
+ <array>
+ <real>168</real>
+ </array>
+ <key>PBXSmartGroupTreeModuleColumnsKey_v4</key>
+ <array>
+ <string>MainColumn</string>
+ </array>
+ </dict>
+ <key>PBXSmartGroupTreeModuleOutlineStateKey_v7</key>
+ <dict>
+ <key>PBXSmartGroupTreeModuleOutlineStateExpansionKey</key>
+ <array>
+ <string>1C77FABC04509CD000000102</string>
+ </array>
+ <key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
+ <array>
+ <array>
+ <integer>0</integer>
+ </array>
+ </array>
+ <key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
+ <string>{{0, 0}, {168, 350}}</string>
+ </dict>
+ <key>PBXTopSmartGroupGIDs</key>
+ <array/>
+ <key>XCIncludePerspectivesSwitch</key>
+ <integer>0</integer>
+ </dict>
+ <key>GeometryConfiguration</key>
+ <dict>
+ <key>Frame</key>
+ <string>{{0, 0}, {185, 368}}</string>
+ <key>GroupTreeTableConfiguration</key>
+ <array>
+ <string>MainColumn</string>
+ <real>168</real>
+ </array>
+ <key>RubberWindowFrame</key>
+ <string>315 424 744 409 0 0 1440 878 </string>
+ </dict>
+ <key>Module</key>
+ <string>PBXSmartGroupTreeModule</string>
+ <key>Proportion</key>
+ <string>185pt</string>
+ </dict>
+ <dict>
+ <key>ContentConfiguration</key>
+ <dict>
+ <key>PBXProjectModuleGUID</key>
+ <string>1CA1AED706398EBD00589147</string>
+ <key>PBXProjectModuleLabel</key>
+ <string>Detail</string>
+ </dict>
+ <key>GeometryConfiguration</key>
+ <dict>
+ <key>Frame</key>
+ <string>{{190, 0}, {554, 368}}</string>
+ <key>RubberWindowFrame</key>
+ <string>315 424 744 409 0 0 1440 878 </string>
+ </dict>
+ <key>Module</key>
+ <string>XCDetailModule</string>
+ <key>Proportion</key>
+ <string>554pt</string>
+ </dict>
+ </array>
+ <key>Proportion</key>
+ <string>368pt</string>
+ </dict>
+ </array>
+ <key>MajorVersion</key>
+ <integer>3</integer>
+ <key>MinorVersion</key>
+ <integer>0</integer>
+ <key>Name</key>
+ <string>Breakpoints</string>
+ <key>ServiceClasses</key>
+ <array>
+ <string>PBXSmartGroupTreeModule</string>
+ <string>XCDetailModule</string>
+ </array>
+ <key>StatusbarIsVisible</key>
+ <integer>1</integer>
+ <key>TableOfContents</key>
+ <array>
+ <string>1CDDB66807F98D9800BB5817</string>
+ <string>1CDDB66907F98D9800BB5817</string>
+ <string>1CE0B1FE06471DED0097A5F4</string>
+ <string>1CA1AED706398EBD00589147</string>
+ </array>
+ <key>ToolbarConfiguration</key>
+ <string>xcode.toolbar.config.breakpointsV3</string>
+ <key>WindowString</key>
+ <string>315 424 744 409 0 0 1440 878 </string>
+ <key>WindowToolGUID</key>
+ <string>1CDDB66807F98D9800BB5817</string>
+ <key>WindowToolIsVisible</key>
+ <integer>1</integer>
+ </dict>
+ <dict>
+ <key>Identifier</key>
+ <string>windowTool.debugAnimator</string>
+ <key>Layout</key>
+ <array>
+ <dict>
+ <key>Dock</key>
+ <array>
+ <dict>
+ <key>Module</key>
+ <string>PBXNavigatorGroup</string>
+ <key>Proportion</key>
+ <string>100%</string>
+ </dict>
+ </array>
+ <key>Proportion</key>
+ <string>100%</string>
+ </dict>
+ </array>
+ <key>Name</key>
+ <string>Debug Visualizer</string>
+ <key>ServiceClasses</key>
+ <array>
+ <string>PBXNavigatorGroup</string>
+ </array>
+ <key>StatusbarIsVisible</key>
+ <integer>1</integer>
+ <key>ToolbarConfiguration</key>
+ <string>xcode.toolbar.config.debugAnimatorV3</string>
+ <key>WindowString</key>
+ <string>100 100 700 500 0 0 1280 1002 </string>
+ </dict>
+ <dict>
+ <key>Identifier</key>
+ <string>windowTool.bookmarks</string>
+ <key>Layout</key>
+ <array>
+ <dict>
+ <key>Dock</key>
+ <array>
+ <dict>
+ <key>Module</key>
+ <string>PBXBookmarksModule</string>
+ <key>Proportion</key>
+ <string>100%</string>
+ </dict>
+ </array>
+ <key>Proportion</key>
+ <string>100%</string>
+ </dict>
+ </array>
+ <key>Name</key>
+ <string>Bookmarks</string>
+ <key>ServiceClasses</key>
+ <array>
+ <string>PBXBookmarksModule</string>
+ </array>
+ <key>StatusbarIsVisible</key>
+ <integer>0</integer>
+ <key>WindowString</key>
+ <string>538 42 401 187 0 0 1280 1002 </string>
+ </dict>
+ <dict>
+ <key>Identifier</key>
+ <string>windowTool.projectFormatConflicts</string>
+ <key>Layout</key>
+ <array>
+ <dict>
+ <key>Dock</key>
+ <array>
+ <dict>
+ <key>Module</key>
+ <string>XCProjectFormatConflictsModule</string>
+ <key>Proportion</key>
+ <string>100%</string>
+ </dict>
+ </array>
+ <key>Proportion</key>
+ <string>100%</string>
+ </dict>
+ </array>
+ <key>Name</key>
+ <string>Project Format Conflicts</string>
+ <key>ServiceClasses</key>
+ <array>
+ <string>XCProjectFormatConflictsModule</string>
+ </array>
+ <key>StatusbarIsVisible</key>
+ <integer>0</integer>
+ <key>WindowContentMinSize</key>
+ <string>450 300</string>
+ <key>WindowString</key>
+ <string>50 850 472 307 0 0 1440 877</string>
+ </dict>
+ <dict>
+ <key>Identifier</key>
+ <string>windowTool.classBrowser</string>
+ <key>Layout</key>
+ <array>
+ <dict>
+ <key>Dock</key>
+ <array>
+ <dict>
+ <key>BecomeActive</key>
+ <integer>1</integer>
+ <key>ContentConfiguration</key>
+ <dict>
+ <key>OptionsSetName</key>
+ <string>Hierarchy, all classes</string>
+ <key>PBXProjectModuleGUID</key>
+ <string>1CA6456E063B45B4001379D8</string>
+ <key>PBXProjectModuleLabel</key>
+ <string>Class Browser - NSObject</string>
+ </dict>
+ <key>GeometryConfiguration</key>
+ <dict>
+ <key>ClassesFrame</key>
+ <string>{{0, 0}, {374, 96}}</string>
+ <key>ClassesTreeTableConfiguration</key>
+ <array>
+ <string>PBXClassNameColumnIdentifier</string>
+ <real>208</real>
+ <string>PBXClassBookColumnIdentifier</string>
+ <real>22</real>
+ </array>
+ <key>Frame</key>
+ <string>{{0, 0}, {630, 331}}</string>
+ <key>MembersFrame</key>
+ <string>{{0, 105}, {374, 395}}</string>
+ <key>MembersTreeTableConfiguration</key>
+ <array>
+ <string>PBXMemberTypeIconColumnIdentifier</string>
+ <real>22</real>
+ <string>PBXMemberNameColumnIdentifier</string>
+ <real>216</real>
+ <string>PBXMemberTypeColumnIdentifier</string>
+ <real>97</real>
+ <string>PBXMemberBookColumnIdentifier</string>
+ <real>22</real>
+ </array>
+ <key>PBXModuleWindowStatusBarHidden2</key>
+ <integer>1</integer>
+ <key>RubberWindowFrame</key>
+ <string>385 179 630 352 0 0 1440 878 </string>
+ </dict>
+ <key>Module</key>
+ <string>PBXClassBrowserModule</string>
+ <key>Proportion</key>
+ <string>332pt</string>
+ </dict>
+ </array>
+ <key>Proportion</key>
+ <string>332pt</string>
+ </dict>
+ </array>
+ <key>Name</key>
+ <string>Class Browser</string>
+ <key>ServiceClasses</key>
+ <array>
+ <string>PBXClassBrowserModule</string>
+ </array>
+ <key>StatusbarIsVisible</key>
+ <integer>0</integer>
+ <key>TableOfContents</key>
+ <array>
+ <string>1C0AD2AF069F1E9B00FABCE6</string>
+ <string>1C0AD2B0069F1E9B00FABCE6</string>
+ <string>1CA6456E063B45B4001379D8</string>
+ </array>
+ <key>ToolbarConfiguration</key>
+ <string>xcode.toolbar.config.classbrowser</string>
+ <key>WindowString</key>
+ <string>385 179 630 352 0 0 1440 878 </string>
+ <key>WindowToolGUID</key>
+ <string>1C0AD2AF069F1E9B00FABCE6</string>
+ <key>WindowToolIsVisible</key>
+ <integer>0</integer>
+ </dict>
+ <dict>
+ <key>FirstTimeWindowDisplayed</key>
+ <false/>
+ <key>Identifier</key>
+ <string>windowTool.refactoring</string>
+ <key>IncludeInToolsMenu</key>
+ <integer>0</integer>
+ <key>IsVertical</key>
+ <true/>
+ <key>Layout</key>
+ <array>
+ <dict>
+ <key>Dock</key>
+ <array>
+ <dict>
+ <key>ContentConfiguration</key>
+ <dict>
+ <key>PBXProjectModuleGUID</key>
+ <string>B0B07FBA11EC8FC000B7E872</string>
+ </dict>
+ <key>GeometryConfiguration</key>
+ <dict>
+ <key>Frame</key>
+ <string>{{0, 0}, {500, 315}}</string>
+ <key>RubberWindowFrame</key>
+ <string>138 772 500 356 0 0 1920 1178 </string>
+ </dict>
+ <key>Module</key>
+ <string>XCRefactoringModule</string>
+ <key>Proportion</key>
+ <string>315pt</string>
+ </dict>
+ </array>
+ <key>Proportion</key>
+ <string>315pt</string>
+ </dict>
+ </array>
+ <key>Name</key>
+ <string>Refactoring</string>
+ <key>ServiceClasses</key>
+ <array>
+ <string>XCRefactoringModule</string>
+ </array>
+ <key>StatusbarIsVisible</key>
+ <true/>
+ <key>TableOfContents</key>
+ <array>
+ <string>B0B07FBB11EC8FC000B7E872</string>
+ <string>B08FD55212115171004E5346</string>
+ <string>B0B07FBA11EC8FC000B7E872</string>
+ </array>
+ <key>WindowString</key>
+ <string>138 772 500 356 0 0 1920 1178 </string>
+ <key>WindowToolGUID</key>
+ <string>B0B07FBB11EC8FC000B7E872</string>
+ <key>WindowToolIsVisible</key>
+ <false/>
+ </dict>
+ </array>
+</dict>
+</plist>
445 Picker.xcodeproj/steven.pbxuser
@@ -0,0 +1,445 @@
+// !$*UTF8*$!
+{
+ 089C165DFE840E0CC02AAC07 /* English */ = {
+ uiCtxt = {
+ sepNavIntBoundsRect = "{{0, 0}, {1439, 778}}";
+ sepNavSelRange = "{0, 0}";
+ sepNavVisRange = "{0, 45}";
+ };
+ };
+ 256AC3D80F4B6AC300CF3369 /* PickerAppDelegate.h */ = {
+ uiCtxt = {
+ sepNavIntBoundsRect = "{{0, 0}, {1439, 775}}";
+ sepNavSelRange = "{27, 134}";
+ sepNavVisRange = "{0, 568}";
+ sepNavWindowFrame = "{{84, 70}, {985, 740}}";
+ };
+ };
+ 256AC3D90F4B6AC300CF3369 /* PickerAppDelegate.m */ = {
+ uiCtxt = {
+ sepNavIntBoundsRect = "{{0, 0}, {1439, 1664}}";
+ sepNavSelRange = "{541, 0}";
+ sepNavVisRange = "{404, 1697}";
+ };
+ };
+ 256AC3F00F4B6AF500CF3369 /* Picker_Prefix.pch */ = {
+ uiCtxt = {
+ sepNavIntBoundsRect = "{{0, 0}, {1439, 775}}";
+ sepNavSelRange = "{153, 0}";
+ sepNavVisRange = "{0, 153}";
+ };
+ };
+ 29B97313FDCFA39411CA2CEA /* Project object */ = {
+ activeBuildConfigurationName = Release;
+ activeExecutable = B0AF06BB106D2AE400165DD2 /* Picker */;
+ activeTarget = 8D1107260486CEB800E47090 /* Picker */;
+ addToTargets = (
+ 8D1107260486CEB800E47090 /* Picker */,
+ );
+ codeSenseManager = B0AF06CE106D2AEC00165DD2 /* Code sense */;
+ executables = (
+ B0AF06BB106D2AE400165DD2 /* Picker */,
+ );
+ perUserDictionary = {
+ PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
+ PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
+ PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
+ PBXFileTableDataSourceColumnWidthsKey = (
+ 20,
+ 1261,
+ 20,
+ 48,
+ 43,
+ 43,
+ 20,
+ );
+ PBXFileTableDataSourceColumnsKey = (
+ PBXFileDataSource_FiletypeID,
+ PBXFileDataSource_Filename_ColumnID,
+ PBXFileDataSource_Built_ColumnID,
+ PBXFileDataSource_ObjectSize_ColumnID,
+ PBXFileDataSource_Errors_ColumnID,
+ PBXFileDataSource_Warnings_ColumnID,
+ PBXFileDataSource_Target_ColumnID,
+ );
+ };
+ PBXPerProjectTemplateStateSaveDate = 303125682;
+ PBXWorkspaceStateSaveDate = 303125682;
+ };
+ perUserProjectItems = {
+ B028F227121155E000F27191 /* PBXTextBookmark */ = B028F227121155E000F27191 /* PBXTextBookmark */;
+ B028F228121155E000F27191 /* PBXTextBookmark */ = B028F228121155E000F27191 /* PBXTextBookmark */;
+ B028F229121155E000F27191 /* PBXTextBookmark */ = B028F229121155E000F27191 /* PBXTextBookmark */;
+ B028F22A121155E000F27191 /* PBXTextBookmark */ = B028F22A121155E000F27191 /* PBXTextBookmark */;
+ B028F22B121155E000F27191 /* PBXTextBookmark */ = B028F22B121155E000F27191 /* PBXTextBookmark */;
+ B028F22C121155E000F27191 /* PBXTextBookmark */ = B028F22C121155E000F27191 /* PBXTextBookmark */;
+ B06651C511EC720A000DD19F /* PBXTextBookmark */ = B06651C511EC720A000DD19F /* PBXTextBookmark */;
+ B06651CC11EC720A000DD19F /* PBXTextBookmark */ = B06651CC11EC720A000DD19F /* PBXTextBookmark */;
+ B06652DE11EC7B94000DD19F /* PBXTextBookmark */ = B06652DE11EC7B94000DD19F /* PBXTextBookmark */;
+ B08FD54312115171004E5346 /* PBXTextBookmark */ = B08FD54312115171004E5346 /* PBXTextBookmark */;
+ B08FD54412115171004E5346 /* PlistBookmark */ = B08FD54412115171004E5346 /* PlistBookmark */;
+ B08FD54512115171004E5346 /* PBXBookmark */ = B08FD54512115171004E5346 /* PBXBookmark */;
+ B08FD54612115171004E5346 /* PBXBookmark */ = B08FD54612115171004E5346 /* PBXBookmark */;
+ B08FD54712115171004E5346 /* PBXBookmark */ = B08FD54712115171004E5346 /* PBXBookmark */;
+ B08FD54812115171004E5346 /* PBXTextBookmark */ = B08FD54812115171004E5346 /* PBXTextBookmark */;
+ B0B07FB111EC8FC000B7E872 /* PBXTextBookmark */ = B0B07FB111EC8FC000B7E872 /* PBXTextBookmark */;
+ B0B07FB411EC8FC000B7E872 /* PBXTextBookmark */ = B0B07FB411EC8FC000B7E872 /* PBXTextBookmark */;
+ B0C6F86F11EC9D530076E889 /* PBXTextBookmark */ = B0C6F86F11EC9D530076E889 /* PBXTextBookmark */;
+ B0C6F87A11EC9DAD0076E889 /* PBXTextBookmark */ = B0C6F87A11EC9DAD0076E889 /* PBXTextBookmark */;
+ B0C6F89911EC9F8B0076E889 /* PlistBookmark */ = B0C6F89911EC9F8B0076E889 /* PlistBookmark */;
+ B0C6F8A911ECA00E0076E889 /* PBXTextBookmark */ = B0C6F8A911ECA00E0076E889 /* PBXTextBookmark */;
+ B0C6F97C11ECA9D70076E889 /* PBXTextBookmark */ = B0C6F97C11ECA9D70076E889 /* PBXTextBookmark */;
+ };
+ sourceControlManager = B0AF06CD106D2AEC00165DD2 /* Source Control */;
+ userBuildSettings = {
+ };
+ };
+ 29B97316FDCFA39411CA2CEA /* main.m */ = {
+ uiCtxt = {
+ sepNavIntBoundsRect = "{{0, 0}, {1439, 778}}";
+ sepNavSelRange = "{0, 0}";
+ sepNavVisRange = "{0, 275}";
+ };
+ };
+ 8D1107260486CEB800E47090 /* Picker */ = {
+ activeExec = 0;
+ executables = (
+ B0AF06BB106D2AE400165DD2 /* Picker */,
+ );
+ };
+ B028F227121155E000F27191 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 256AC3F00F4B6AF500CF3369 /* Picker_Prefix.pch */;
+ name = "Picker_Prefix.pch: 8";
+ rLen = 0;
+ rLoc = 153;
+ rType = 0;
+ vrLen = 153;
+ vrLoc = 0;
+ };
+ B028F228121155E000F27191 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 256AC3D80F4B6AC300CF3369 /* PickerAppDelegate.h */;
+ name = "PickerAppDelegate.h: 3";
+ rLen = 134;
+ rLoc = 27;
+ rType = 0;
+ vrLen = 568;
+ vrLoc = 0;
+ };
+ B028F229121155E000F27191 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = B0B07F2311EC84A300B7E872 /* PickerBackgroundView.h */;
+ name = "PickerBackgroundView.h: 2";
+ rLen = 0;
+ rLoc = 13;
+ rType = 0;
+ vrLen = 244;
+ vrLoc = 0;
+ };
+ B028F22A121155E000F27191 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = B0B07F2411EC84A300B7E872 /* PickerBackgroundView.m */;
+ name = "PickerBackgroundView.m: 20";
+ rLen = 0;
+ rLoc = 306;
+ rType = 0;
+ vrLen = 1440;
+ vrLoc = 0;
+ };
+ B028F22B121155E000F27191 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 256AC3D90F4B6AC300CF3369 /* PickerAppDelegate.m */;
+ name = "PickerAppDelegate.m: 99";
+ rLen = 0;
+ rLoc = 2493;
+ rType = 0;
+ vrLen = 1405;
+ vrLoc = 0;
+ };
+ B028F22C121155E000F27191 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 256AC3D90F4B6AC300CF3369 /* PickerAppDelegate.m */;
+ name = "PickerAppDelegate.m: 31";
+ rLen = 0;
+ rLoc = 541;
+ rType = 0;
+ vrLen = 1697;
+ vrLoc = 404;
+ };
+ B057430C11EC60670065EE0B /* NSColorPanel.h */ = {
+ isa = PBXFileReference;
+ lastKnownFileType = sourcecode.c.h;
+ name = NSColorPanel.h;
+ path = /Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/AppKit.framework/Versions/C/Headers/NSColorPanel.h;
+ sourceTree = "<absolute>";
+ };
+ B057431111EC60670065EE0B /* NSWindow.h */ = {
+ isa = PBXFileReference;
+ lastKnownFileType = sourcecode.c.h;
+ name = NSWindow.h;
+ path = /Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/AppKit.framework/Versions/C/Headers/NSWindow.h;
+ sourceTree = "<absolute>";
+ };
+ B06651C511EC720A000DD19F /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = B06651C611EC720A000DD19F /* NSView.h */;
+ name = "NSView.h: 154";
+ rLen = 23;
+ rLoc = 5077;
+ rType = 0;
+ vrLen = 1173;
+ vrLoc = 4135;
+ };
+ B06651C611EC720A000DD19F /* NSView.h */ = {
+ isa = PBXFileReference;
+ lastKnownFileType = sourcecode.c.h;
+ name = NSView.h;
+ path = /Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/AppKit.framework/Versions/C/Headers/NSView.h;
+ sourceTree = "<absolute>";
+ };
+ B06651C911EC720A000DD19F /* NSMenu.h */ = {
+ isa = PBXFileReference;
+ lastKnownFileType = sourcecode.c.h;
+ name = NSMenu.h;
+ path = /Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/AppKit.framework/Versions/C/Headers/NSMenu.h;
+ sourceTree = "<absolute>";
+ };
+ B06651CC11EC720A000DD19F /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = B06651CD11EC720A000DD19F /* NSStatusItem.h */;
+ name = "NSStatusItem.h: 20";
+ rLen = 35;
+ rLoc = 345;
+ rType = 0;
+ vrLen = 894;
+ vrLoc = 0;
+ };
+ B06651CD11EC720A000DD19F /* NSStatusItem.h */ = {
+ isa = PBXFileReference;
+ lastKnownFileType = sourcecode.c.h;
+ name = NSStatusItem.h;
+ path = /Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/AppKit.framework/Versions/C/Headers/NSStatusItem.h;
+ sourceTree = "<absolute>";
+ };
+ B06652DE11EC7B94000DD19F /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = B06651C911EC720A000DD19F /* NSMenu.h */;
+ name = "NSMenu.h: 18";
+ rLen = 51;
+ rLoc = 329;
+ rType = 0;
+ vrLen = 2441;
+ vrLoc = 3583;
+ };
+ B08FD54312115171004E5346 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 089C165DFE840E0CC02AAC07 /* English */;
+ name = "InfoPlist.strings: 1";
+ rLen = 0;
+ rLoc = 0;
+ rType = 0;
+ vrLen = 45;
+ vrLoc = 0;
+ };
+ B08FD54412115171004E5346 /* PlistBookmark */ = {
+ isa = PlistBookmark;
+ fRef = 8D1107310486CEB800E47090 /* Picker-Info.plist */;
+ fallbackIsa = PBXBookmark;
+ isK = 0;
+ kPath = (
+ );
+ name = "/Users/steven/Dropbox/Projects/picker/Picker-Info.plist";
+ rLen = 0;
+ rLoc = 9223372036854775808;
+ };
+ B08FD54512115171004E5346 /* PBXBookmark */ = {
+ isa = PBXBookmark;
+ fRef = B05742E511EC5E780065EE0B /* wheel_selected.png */;
+ };
+ B08FD54612115171004E5346 /* PBXBookmark */ = {
+ isa = PBXBookmark;
+ fRef = B05742C611EC5CA00065EE0B /* wheel.png */;
+ };
+ B08FD54712115171004E5346 /* PBXBookmark */ = {
+ isa = PBXBookmark;
+ fRef = B05742FD11EC5FC20065EE0B /* Icon.icns */;
+ };
+ B08FD54812115171004E5346 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 29B97316FDCFA39411CA2CEA /* main.m */;
+ name = "main.m: 1";
+ rLen = 0;
+ rLoc = 0;
+ rType = 0;
+ vrLen = 275;
+ vrLoc = 0;
+ };
+ B0AF06BB106D2AE400165DD2 /* Picker */ = {
+ isa = PBXExecutable;
+ activeArgIndices = (
+ );
+ argumentStrings = (
+ );
+ autoAttachOnCrash = 1;
+ breakpointsEnabled = 0;
+ configStateDict = {
+ };
+ customDataFormattersEnabled = 1;
+ dataTipCustomDataFormattersEnabled = 1;
+ dataTipShowTypeColumn = 1;
+ dataTipSortType = 0;
+ debuggerPlugin = GDBDebugging;
+ disassemblyDisplayState = 0;
+ dylibVariantSuffix = "";
+ enableDebugStr = 1;
+ environmentEntries = (
+ );
+ executableSystemSymbolLevel = 0;
+ executableUserSymbolLevel = 0;
+ libgmallocEnabled = 0;
+ name = Picker;
+ savedGlobals = {
+ };
+ showTypeColumn = 0;
+ sourceDirectories = (
+ );
+ };
+ B0AF06CD106D2AEC00165DD2 /* Source Control */ = {
+ isa = PBXSourceControlManager;
+ fallbackIsa = XCSourceControlManager;
+ isSCMEnabled = 0;
+ scmConfiguration = {
+ repositoryNamesForRoots = {
+ "" = "";
+ };
+ };
+ };
+ B0AF06CE106D2AEC00165DD2 /* Code sense */ = {
+ isa = PBXCodeSenseManager;
+ indexTemplatePath = "";
+ };
+ B0B07F2311EC84A300B7E872 /* PickerBackgroundView.h */ = {
+ uiCtxt = {
+ sepNavIntBoundsRect = "{{0, 0}, {1439, 775}}";
+ sepNavSelRange = "{13, 0}";
+ sepNavVisRange = "{0, 244}";
+ };
+ };
+ B0B07F2411EC84A300B7E872 /* PickerBackgroundView.m */ = {
+ uiCtxt = {
+ sepNavIntBoundsRect = "{{0, 0}, {1439, 775}}";
+ sepNavSelRange = "{306, 0}";
+ sepNavVisRange = "{0, 1440}";
+ };
+ };
+ B0B07FB111EC8FC000B7E872 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = B0B07FB211EC8FC000B7E872 /* NSGradient.h */;
+ name = "NSGradient.h: 50";
+ rLen = 57;
+ rLoc = 2632;
+ rType = 0;
+ vrLen = 2237;
+ vrLoc = 1189;
+ };
+ B0B07FB211EC8FC000B7E872 /* NSGradient.h */ = {
+ isa = PBXFileReference;
+ lastKnownFileType = sourcecode.c.h;
+ name = NSGradient.h;
+ path = /Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/AppKit.framework/Versions/C/Headers/NSGradient.h;
+ sourceTree = "<absolute>";
+ };
+ B0B07FB411EC8FC000B7E872 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = B057431111EC60670065EE0B /* NSWindow.h */;
+ name = "NSWindow.h: 88";
+ rLen = 55;
+ rLoc = 2677;
+ rType = 0;
+ vrLen = 2182;
+ vrLoc = 1730;
+ };
+ B0C6F86F11EC9D530076E889 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = B057430C11EC60670065EE0B /* NSColorPanel.h */;
+ name = "NSColorPanel.h: 48";
+ rLen = 34;
+ rLoc = 1273;
+ rType = 0;
+ vrLen = 1217;
+ vrLoc = 646;
+ };
+ B0C6F87A11EC9DAD0076E889 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = B0C6F87B11EC9DAD0076E889 /* NSString.h */;
+ name = "NSString.h: 84";
+ rLen = 71;
+ rLoc = 3923;
+ rType = 0;
+ vrLen = 1763;
+ vrLoc = 2708;
+ };
+ B0C6F87B11EC9DAD0076E889 /* NSString.h */ = {
+ isa = PBXFileReference;
+ lastKnownFileType = sourcecode.c.h;
+ name = NSString.h;
+ path = /Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Foundation.framework/Versions/C/Headers/NSString.h;
+ sourceTree = "<absolute>";
+ };
+ B0C6F89911EC9F8B0076E889 /* PlistBookmark */ = {
+ isa = PlistBookmark;
+ fRef = B0C6F89A11EC9F8B0076E889 /* NSColorPanelSwatches.plist */;
+ fallbackIsa = PBXBookmark;
+ isK = 0;
+ kPath = (
+ $objects,
+ 2,
+ NSColorSpace,
+ );
+ name = /Users/steven/Library/Colors/NSColorPanelSwatches.plist;
+ rLen = 0;
+ rLoc = 9223372036854775808;
+ };
+ B0C6F89A11EC9F8B0076E889 /* NSColorPanelSwatches.plist */ = {
+ isa = PBXFileReference;
+ lastKnownFileType = file.bplist;
+ name = NSColorPanelSwatches.plist;
+ path = /Users/steven/Library/Colors/NSColorPanelSwatches.plist;
+ sourceTree = "<absolute>";
+ };
+ B0C6F89C11EC9F8B0076E889 /* NSKeyedArchiver.h */ = {
+ isa = PBXFileReference;
+ lastKnownFileType = sourcecode.c.h;
+ name = NSKeyedArchiver.h;
+ path = /Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/Foundation.framework/Versions/C/Headers/NSKeyedArchiver.h;
+ sourceTree = "<absolute>";
+ };
+ B0C6F8A911ECA00E0076E889 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = B0C6F89C11EC9F8B0076E889 /* NSKeyedArchiver.h */;
+ name = "NSKeyedArchiver.h: 94";
+ rLen = 48;
+ rLoc = 2748;
+ rType = 0;
+ vrLen = 1066;
+ vrLoc = 2352;
+ };
+ B0C6F97C11ECA9D70076E889 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = B0C6F97D11ECA9D70076E889 /* NSAnimation.h */;
+ name = "NSAnimation.h: 155";
+ rLen = 29;
+ rLoc = 5225;
+ rType = 0;
+ vrLen = 4668;
+ vrLoc = 5013;
+ };
+ B0C6F97D11ECA9D70076E889 /* NSAnimation.h */ = {
+ isa = PBXFileReference;
+ lastKnownFileType = sourcecode.c.h;
+ name = NSAnimation.h;
+ path = /Developer/SDKs/MacOSX10.6.sdk/System/Library/Frameworks/AppKit.framework/Versions/C/Headers/NSAnimation.h;
+ sourceTree = "<absolute>";
+ };
+}
27 PickerAppDelegate.h
@@ -0,0 +1,27 @@
+//
+// PickerAppDelegate.h
+// Picker
+//
+// Created by Steven Troughton-Smith on 25/09/2009.
+// Copyright 2009 Steven Troughton-Smith. All rights reserved.
+//
+
+#import <Cocoa/Cocoa.h>
+
+@interface PickerAppDelegate : NSObject <NSApplicationDelegate, NSMenuDelegate> {
+ NSView *mainView;
+ IBOutlet NSTextField *deviceLabel;
+ IBOutlet NSTextField *summaryLabel;
+ IBOutlet NSView *deviceGraphic;
+
+ NSWindow *popupWindow;
+@private
+ NSStatusItem *_statusItem;
+}
+
+- (NSMenu *) createMenu;
+-(NSWindow *)createWindow;
+
+@property (assign) IBOutlet NSView *mainView;
+
+@end
127 PickerAppDelegate.m
@@ -0,0 +1,127 @@
+//
+// PickerAppDelegate.m
+// Picker
+//
+// Created by Steven Troughton-Smith on 25/09/2009.
+// Copyright 2009 Steven Troughton-Smith. All rights reserved.
+//
+
+#import "PickerAppDelegate.h"
+#import "PickerBackgroundView.h"
+
+/* A few private APIs we need */
+
+@interface NSColorPanel (_STS_PickerExtras)
+
+-(NSView *)_toolbarView;
+
+@end
+
+@interface NSStatusItem (_STS_PickerExtras)
+
+-(NSWindow *)_window;
+
+@end
+
+@implementation PickerAppDelegate
+
+@synthesize mainView;
+
+- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
+
+ popupWindow = [self createWindow];
+
+ _statusItem = [[[NSStatusBar systemStatusBar]
+ statusItemWithLength:NSSquareStatusItemLength] retain];
+
+ [_statusItem setImage:[NSImage imageNamed:@"wheel"]];
+
+ [_statusItem setTarget:self];
+ [_statusItem setAction:@selector(menuWillOpen:)];
+}
+
+-(NSWindow *)createWindow
+{
+ PickerBackgroundView *v = [[PickerBackgroundView alloc] initWithFrame:NSMakeRect(0, 0, 320, 410)];
+
+ NSRect vFrame = v.bounds;
+ vFrame.size.height-=10;
+
+ NSWindow *win = [[NSWindow alloc] initWithContentRect:v.frame styleMask:NSBorderlessWindowMask backing:NSBackingStoreBuffered defer:NO];
+ [win setHasShadow:YES];
+ [win setLevel:NSStatusWindowLevel];
+ [win setOpaque:NO];
+ [win setBackgroundColor:[NSColor clearColor]];
+ [win setCollectionBehavior:NSWindowCollectionBehaviorStationary];
+
+ [win setContentView:v];
+ [v release];
+
+ return win;
+}
+
+-(void)populate
+{
+ NSView *v = [popupWindow contentView];
+
+ NSRect vFrame = [v frame];
+ vFrame.size.height-=10;
+
+ NSColorPanel *picker = [NSColorPanel sharedColorPanel];
+ [[picker valueForKey:@"_colorSwatch"] performSelector:@selector(readColors)]; // Private API
+ [picker setFrame:vFrame display:YES];
+
+ NSView *toolbar = [picker _toolbarView]; // Private API
+ NSView *content = [picker contentView];
+
+ [toolbar setFrame:NSMakeRect(0, vFrame.size.height- toolbar.frame.size.height, vFrame.size.width, toolbar.frame.size.height)];
+ [content setFrame:NSMakeRect(0, 0, vFrame.size.width, vFrame.size.height-toolbar.frame.size.height)];
+
+ [v addSubview:toolbar];
+ [v addSubview:content];
+}
+
+-(void)menuWillOpen:(NSMenu *)s
+{
+ if ([popupWindow isVisible])
+ {
+ [[NSAnimationContext currentContext] setDuration:0.15];
+ [[popupWindow animator] setAlphaValue:0.0];
+
+ [popupWindow performSelector:@selector(orderOut:) withObject:self afterDelay:0.3];
+ }
+ else
+ {
+ [self populate];
+
+ NSRect frame = popupWindow.frame;
+
+ frame.origin.x = [[_statusItem _window] frame].origin.x-5;
+ frame.origin.y = [[_statusItem _window] frame].origin.y - [popupWindow frame].size.height;
+
+ [popupWindow setFrame:frame display:NO];
+
+
+ [popupWindow setAlphaValue:0.0];
+ [popupWindow makeKeyAndOrderFront:self];
+
+ [[NSAnimationContext currentContext] setDuration:0.15];
+ [[popupWindow animator] setAlphaValue:1.0];
+ }
+}
+
+- (NSMenu *) createMenu {
+ NSZone *menuZone = [NSMenu menuZone];
+ NSMenu *menu = [[NSMenu allocWithZone:menuZone] init];
+ NSMenuItem *menuItem;
+
+ menuItem = [menu addItemWithTitle:@"Picker"
+ action:nil
+ keyEquivalent:@""];
+ [menuItem setTarget:self];
+
+
+ return [menu autorelease];
+}
+
+@end
17 PickerBackgroundView.h
@@ -0,0 +1,17 @@
+//
+// PickerBackgroundView.h
+// Picker
+//
+// Created by Steven Troughton-Smith on 25/09/2009.
+// Copyright 2009 Steven Troughton-Smith. All rights reserved.
+//
+
+
+#import <Cocoa/Cocoa.h>
+
+
+@interface PickerBackgroundView : NSView {
+
+}
+
+@end
51 PickerBackgroundView.m
@@ -0,0 +1,51 @@
+//
+// PickerBackgroundView.m
+// Picker
+//
+// Created by Steven Troughton-Smith on 25/09/2009.
+// Copyright 2009 Steven Troughton-Smith. All rights reserved.
+//
+
+#import "PickerBackgroundView.h"
+
+
+@implementation PickerBackgroundView
+
+-(BOOL)opaque
+{
+ return NO;
+}
+
+- (void)drawRect:(NSRect)dirtyRect {
+
+ [[NSColor windowBackgroundColor] set];
+
+ NSRectFill(NSMakeRect(0, 0, self.bounds.size.width, self.bounds.size.height-20));
+
+
+ NSBezierPath *path = [[NSBezierPath alloc] init];
+
+ CGFloat arrowHeight = 10;
+
+ [path moveToPoint:NSMakePoint(0, self.bounds.size.height-arrowHeight)];
+ [path lineToPoint:NSMakePoint(10, self.bounds.size.height-arrowHeight)];
+ [path lineToPoint:NSMakePoint(20, self.bounds.size.height)];
+ [path lineToPoint:NSMakePoint(30, self.bounds.size.height-arrowHeight)];
+ [path lineToPoint:NSMakePoint(self.bounds.size.width, self.bounds.size.height-arrowHeight)];
+
+ [path lineToPoint:NSMakePoint(self.bounds.size.width, self.bounds.size.height-32-arrowHeight)];
+ [path lineToPoint:NSMakePoint(0, self.bounds.size.height-32-arrowHeight)];
+
+ [[NSColor colorWithCalibratedWhite:0.946 alpha:1.000] set];
+
+
+ NSColor *aColor = [NSColor colorWithCalibratedWhite:0.874 alpha:1.000];
+ NSColor *bColor = [NSColor colorWithCalibratedWhite:0.590 alpha:1.000];
+
+ NSGradient *grad = [[ NSGradient alloc] initWithColors:[NSArray arrayWithObjects:aColor, bColor, nil]];
+
+
+ [grad drawInBezierPath:path angle:-90];
+}
+
+@end
7 Picker_Prefix.pch
@@ -0,0 +1,7 @@
+//
+// Prefix header for all source files of the 'GPUSwitcher' target in the 'GPUSwitcher' project
+//
+
+#ifdef __OBJC__
+ #import <Cocoa/Cocoa.h>
+#endif
27 README.mdown
@@ -0,0 +1,27 @@
+PICKER
+======
+
+[![](http://lh5.ggpht.com/_O4LAMWmWg8o/TGEfJ4HkfII/AAAAAAAAAg0/tk-8i33qqys/Screen%20shot%202010-08-10%20at%2010.38.50.png)](http://lh5.ggpht.com/_O4LAMWmWg8o/TGEfJ4HkfII/AAAAAAAAAg0/tk-8i33qqys/Screen%20shot%202010-08-10%20at%2010.38.50.png)
+
+
+WHAT IS THIS?
+=============
+
+This is a quick and dirty implementation of a menu-bar based systemwide color picker. It always runs in your menu bar, and won't close by itself (so you can use it in the background and not steal focus from the current window).
+
+It will provide access to any custom color pickers you have installed (for example Wade's excellent Developer Color Picker - http://www.panic.com/~wade/picker/).
+
+HOW TO USE?
+===========
+
+Build & go in Xcode. The app should run hidden from the Dock but an icon will appear in your menu bar.
+
+It should be set up for running on Mac OS X v10.6 Snow Leopard without issue. Haven't tested on any other OS, but I suspect it should run fine on 10.5 too.
+
+Uses some necessary private API (to load in the color palette, and to show the toolbar).
+
+TODO:
+=====
+
+* Add a quit button (and possibly settings?)
+* Get a real icon set
14 main.m
@@ -0,0 +1,14 @@
+//
+// main.m
+// GPUSwitcher
+//
+// Created by Steven Troughton-Smith on 25/09/2009.
+// Copyright 2009 Steven Troughton-Smith. All rights reserved.
+//
+
+#import <Cocoa/Cocoa.h>
+
+int main(int argc, char *argv[])
+{
+ return NSApplicationMain(argc, (const char **) argv);
+}
BIN wheel.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
BIN wheel_selected.png
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit c18200e

Please sign in to comment.