Skip to content
Browse files

Reorganize project to use a designated subdirectory for core source f…

…iles and strings. Also use a bundle for strings, to facilitate easy drag-n-drop use with existing projects.
  • Loading branch information...
1 parent 906b14d commit 27b9ef7b7f23939eca320841f3731c3bf7f979ea @adamjernst adamjernst committed Mar 7, 2012
View
BIN English.lproj/.DS_Store
Binary file not shown.
View
0 AppDelegate.h → Example/AppDelegate.h
File renamed without changes.
View
0 AppDelegate.m → Example/AppDelegate.m
File renamed without changes.
View
0 MainWindow.xib → Example/MainWindow.xib
File renamed without changes.
View
0 SORelativeDateTransformer-Info.plist → Example/SORelativeDateTransformer-Info.plist
File renamed without changes.
View
29 ...DateTransformer.xcodeproj/project.pbxproj → ...DateTransformer.xcodeproj/project.pbxproj
@@ -12,10 +12,10 @@
1DF5F4E00D08C38300B7A737 /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1DF5F4DF0D08C38300B7A737 /* UIKit.framework */; };
288765A50DF7441C002DB57D /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 288765A40DF7441C002DB57D /* CoreGraphics.framework */; };
28AD733F0D9D9553002E5188 /* MainWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = 28AD733E0D9D9553002E5188 /* MainWindow.xib */; };
+ C40BE5EE150837DA00354062 /* SORelativeDateTransformer.bundle in Resources */ = {isa = PBXBuildFile; fileRef = C40BE5ED150837DA00354062 /* SORelativeDateTransformer.bundle */; };
F2A33B3F12AD9CA400459019 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = F2A33B3A12AD9CA400459019 /* AppDelegate.m */; };
F2A33B4012AD9CA400459019 /* SORelativeDateTransformer.m in Sources */ = {isa = PBXBuildFile; fileRef = F2A33B3C12AD9CA400459019 /* SORelativeDateTransformer.m */; };
F2A33B4112AD9CA400459019 /* TesterViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = F2A33B3E12AD9CA400459019 /* TesterViewController.m */; };
- F2A33B4C12ADA09A00459019 /* SORelativeDateTransformer.strings in Resources */ = {isa = PBXBuildFile; fileRef = F2A33B4A12ADA09A00459019 /* SORelativeDateTransformer.strings */; };
F2A33B5612ADA0FA00459019 /* TesterViewController.xib in Resources */ = {isa = PBXBuildFile; fileRef = F2A33B5412ADA0E900459019 /* TesterViewController.xib */; };
/* End PBXBuildFile section */
@@ -28,16 +28,13 @@
29B97316FDCFA39411CA2CEA /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; };
32CA4F630368D1EE00C91783 /* SORelativeDateTransformer_Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SORelativeDateTransformer_Prefix.pch; sourceTree = "<group>"; };
8D1107310486CEB800E47090 /* SORelativeDateTransformer-Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = "SORelativeDateTransformer-Info.plist"; plistStructureDefinitionIdentifier = "com.apple.xcode.plist.structure-definition.iphone.info-plist"; sourceTree = "<group>"; };
+ C40BE5ED150837DA00354062 /* SORelativeDateTransformer.bundle */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.plug-in"; name = SORelativeDateTransformer.bundle; path = ../SORelativeDateTransformer/SORelativeDateTransformer.bundle; sourceTree = "<group>"; };
F2A33B3912AD9CA400459019 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
F2A33B3A12AD9CA400459019 /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
- F2A33B3B12AD9CA400459019 /* SORelativeDateTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SORelativeDateTransformer.h; sourceTree = "<group>"; };
- F2A33B3C12AD9CA400459019 /* SORelativeDateTransformer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SORelativeDateTransformer.m; sourceTree = "<group>"; };
+ F2A33B3B12AD9CA400459019 /* SORelativeDateTransformer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SORelativeDateTransformer.h; path = ../SORelativeDateTransformer/SORelativeDateTransformer.h; sourceTree = "<group>"; };
+ F2A33B3C12AD9CA400459019 /* SORelativeDateTransformer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SORelativeDateTransformer.m; path = ../SORelativeDateTransformer/SORelativeDateTransformer.m; sourceTree = "<group>"; };
F2A33B3D12AD9CA400459019 /* TesterViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TesterViewController.h; sourceTree = "<group>"; };
F2A33B3E12AD9CA400459019 /* TesterViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TesterViewController.m; sourceTree = "<group>"; };
- F2A33B4B12ADA09A00459019 /* English */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = English; path = English.lproj/SORelativeDateTransformer.strings; sourceTree = "<group>"; };
- F2A33B5012ADA0BC00459019 /* French */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = French; path = French.lproj/SORelativeDateTransformer.strings; sourceTree = "<group>"; };
- F2A33B5112ADA0C600459019 /* German */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = German; path = German.lproj/SORelativeDateTransformer.strings; sourceTree = "<group>"; };
- F2A33B5212ADA0CF00459019 /* Spanish */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Spanish; path = Spanish.lproj/SORelativeDateTransformer.strings; sourceTree = "<group>"; };
F2A33B5412ADA0E900459019 /* TesterViewController.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = TesterViewController.xib; sourceTree = "<group>"; };
/* End PBXFileReference section */
@@ -68,7 +65,7 @@
children = (
F2A33B3B12AD9CA400459019 /* SORelativeDateTransformer.h */,
F2A33B3C12AD9CA400459019 /* SORelativeDateTransformer.m */,
- F2A33B4A12ADA09A00459019 /* SORelativeDateTransformer.strings */,
+ C40BE5ED150837DA00354062 /* SORelativeDateTransformer.bundle */,
F2A33B3412AD9C7C00459019 /* Tester App Source */,
29B97315FDCFA39411CA2CEA /* Other Sources */,
29B97317FDCFA39411CA2CEA /* Resources */,
@@ -170,8 +167,8 @@
buildActionMask = 2147483647;
files = (
28AD733F0D9D9553002E5188 /* MainWindow.xib in Resources */,
- F2A33B4C12ADA09A00459019 /* SORelativeDateTransformer.strings in Resources */,
F2A33B5612ADA0FA00459019 /* TesterViewController.xib in Resources */,
+ C40BE5EE150837DA00354062 /* SORelativeDateTransformer.bundle in Resources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -191,20 +188,6 @@
};
/* End PBXSourcesBuildPhase section */
-/* Begin PBXVariantGroup section */
- F2A33B4A12ADA09A00459019 /* SORelativeDateTransformer.strings */ = {
- isa = PBXVariantGroup;
- children = (
- F2A33B4B12ADA09A00459019 /* English */,
- F2A33B5012ADA0BC00459019 /* French */,
- F2A33B5112ADA0C600459019 /* German */,
- F2A33B5212ADA0CF00459019 /* Spanish */,
- );
- name = SORelativeDateTransformer.strings;
- sourceTree = "<group>";
- };
-/* End PBXVariantGroup section */
-
/* Begin XCBuildConfiguration section */
1D6058940D05DD3E006BFB54 /* Debug */ = {
isa = XCBuildConfiguration;
View
7 Example/SORelativeDateTransformer.xcodeproj/project.xcworkspace/contents.xcworkspacedata
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<Workspace
+ version = "1.0">
+ <FileRef
+ location = "self:SORelativeDateTransformer.xcodeproj">
+ </FileRef>
+</Workspace>
View
0 SORelativeDateTransformer_Prefix.pch → Example/SORelativeDateTransformer_Prefix.pch
File renamed without changes.
View
0 TesterViewController.h → Example/TesterViewController.h
File renamed without changes.
View
0 TesterViewController.m → Example/TesterViewController.m
File renamed without changes.
View
0 TesterViewController.xib → Example/TesterViewController.xib
File renamed without changes.
View
0 main.m → Example/main.m
File renamed without changes.
View
6 README.markdown
@@ -15,15 +15,11 @@ The transformer does not provide reverse transformations; you can only transform
## How To Use ##
-Add the header and implementation files to your project.
+Add the source files and strings bundle to your project.
SORelativeDateTransformer.h
SORelativeDateTransformer.m
-
-If you want a localization other than English, also add the .strings file.
-
SORelativeDataTransformer.strings
-
Instantiate an instance of SORelativeDateTransformer wherever you need to generate relative date phrases.
View
1,545 SORelativeDateTransformer.xcodeproj/stdorbit.mode1v3
@@ -1,1545 +0,0 @@
-<?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>F2A339CC12AD759400459019</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>
- <dict>
- <key>XCObserverAutoDisconnectKey</key>
- <true/>
- <key>XCObserverDefintionKey</key>
- <dict>
- <key>PBXStatusErrorsKey</key>
- <integer>0</integer>
- </dict>
- <key>XCObserverFactoryKey</key>
- <string>XCPerspectivesSpecificationIdentifier</string>
- <key>XCObserverGUIDKey</key>
- <string>XCObserverProjectIdentifier</string>
- <key>XCObserverNotificationKey</key>
- <string>PBXStatusBuildStateMessageNotification</string>
- <key>XCObserverTargetKey</key>
- <string>XCMainBuildResultsModuleGUID</string>
- <key>XCObserverTriggerKey</key>
- <string>awakenModuleWithObserver:</string>
- <key>XCObserverValidationKey</key>
- <dict>
- <key>PBXStatusErrorsKey</key>
- <integer>2</integer>
- </dict>
- </dict>
- <dict>
- <key>XCObserverAutoDisconnectKey</key>
- <true/>
- <key>XCObserverDefintionKey</key>
- <dict>
- <key>PBXStatusWarningsKey</key>
- <integer>0</integer>
- </dict>
- <key>XCObserverFactoryKey</key>
- <string>XCPerspectivesSpecificationIdentifier</string>
- <key>XCObserverGUIDKey</key>
- <string>XCObserverProjectIdentifier</string>
- <key>XCObserverNotificationKey</key>
- <string>PBXStatusBuildStateMessageNotification</string>
- <key>XCObserverTargetKey</key>
- <string>XCMainBuildResultsModuleGUID</string>
- <key>XCObserverTriggerKey</key>
- <string>awakenModuleWithObserver:</string>
- <key>XCObserverValidationKey</key>
- <dict>
- <key>PBXStatusWarningsKey</key>
- <integer>2</integer>
- </dict>
- </dict>
- <dict>
- <key>XCObserverAutoDisconnectKey</key>
- <true/>
- <key>XCObserverDefintionKey</key>
- <dict>
- <key>PBXStatusAnalyzerResultsKey</key>
- <integer>0</integer>
- </dict>
- <key>XCObserverFactoryKey</key>
- <string>XCPerspectivesSpecificationIdentifier</string>
- <key>XCObserverGUIDKey</key>
- <string>XCObserverProjectIdentifier</string>
- <key>XCObserverNotificationKey</key>
- <string>PBXStatusBuildStateMessageNotification</string>
- <key>XCObserverTargetKey</key>
- <string>XCMainBuildResultsModuleGUID</string>
- <key>XCObserverTriggerKey</key>
- <string>awakenModuleWithObserver:</string>
- <key>XCObserverValidationKey</key>
- <dict>
- <key>PBXStatusAnalyzerResultsKey</key>
- <integer>2</integer>
- </dict>
- </dict>
- </array>
- <key>OpenEditors</key>
- <array>
- <dict>
- <key>Content</key>
- <dict>
- <key>PBXProjectModuleGUID</key>
- <string>F2A33B9C12ADBEE300459019</string>
- <key>PBXProjectModuleLabel</key>
- <string>SORelativeDateTransformer.m</string>
- <key>PBXSplitModuleInNavigatorKey</key>
- <dict>
- <key>Split0</key>
- <dict>
- <key>PBXProjectModuleGUID</key>
- <string>F2A33B9D12ADBEE300459019</string>
- <key>PBXProjectModuleLabel</key>
- <string>SORelativeDateTransformer.m</string>
- <key>_historyCapacity</key>
- <integer>0</integer>
- <key>bookmark</key>
- <string>F2DD7E8112ADC3E300CCAE81</string>
- <key>history</key>
- <array>
- <string>F2DD7E5D12ADC3BF00CCAE81</string>
- </array>
- </dict>
- <key>SplitCount</key>
- <string>1</string>
- </dict>
- <key>StatusBarVisibility</key>
- <true/>
- </dict>
- <key>Geometry</key>
- <dict>
- <key>Frame</key>
- <string>{{0, 20}, {1428, 939}}</string>
- <key>PBXModuleWindowStatusBarHidden2</key>
- <false/>
- <key>RubberWindowFrame</key>
- <string>1644 -53 1428 980 1600 -142 1920 1080 </string>
- </dict>
- </dict>
- </array>
- <key>PerspectiveWidths</key>
- <array>
- <integer>-1</integer>
- <integer>-1</integer>
- </array>
- <key>Perspectives</key>
- <array>
- <dict>
- <key>ChosenToolbarItems</key>
- <array>
- <string>active-target-popup</string>
- <string>active-buildstyle-popup</string>
- <string>active-platform-popup</string>
- <string>active-executable-popup</string>
- <string>NSToolbarFlexibleSpaceItem</string>
- <string>build-and-go</string>
- <string>com.apple.ide.PBXToolbarStopButton</string>
- <string>NSToolbarFlexibleSpaceItem</string>
- <string>clean-target</string>
- <string>servicesModulebreakpoints</string>
- <string>servicesModuleproject</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>BecomeActive</key>
- <true/>
- <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>423</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>F2A33B3412AD9C7C00459019</string>
- <string>1C37FBAC04509CD000000102</string>
- <string>1C37FABC05509CD000000102</string>
- </array>
- <key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
- <array>
- <array>
- <integer>4</integer>
- <integer>0</integer>
- </array>
- </array>
- <key>PBXSmartGroupTreeModuleOutlineStateVisibleRectKey</key>
- <string>{{0, 0}, {423, 833}}</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}, {440, 851}}</string>
- <key>GroupTreeTableConfiguration</key>
- <array>
- <string>MainColumn</string>
- <real>423</real>
- </array>
- <key>RubberWindowFrame</key>
- <string>224 -116 1304 892 0 0 1600 1002 </string>
- </dict>
- <key>Module</key>
- <string>PBXSmartGroupTreeModule</string>
- <key>Proportion</key>
- <string>440pt</string>
- </dict>
- <dict>
- <key>Dock</key>
- <array>
- <dict>
- <key>ContentConfiguration</key>
- <dict>
- <key>PBXProjectModuleGUID</key>
- <string>1CE0B20306471E060097A5F4</string>
- <key>PBXProjectModuleLabel</key>
- <string>TesterViewController.m</string>
- <key>PBXSplitModuleInNavigatorKey</key>
- <dict>
- <key>Split0</key>
- <dict>
- <key>PBXProjectModuleGUID</key>
- <string>1CE0B20406471E060097A5F4</string>
- <key>PBXProjectModuleLabel</key>
- <string>TesterViewController.m</string>
- <key>_historyCapacity</key>
- <integer>0</integer>
- <key>bookmark</key>
- <string>F2DD7E8012ADC3E300CCAE81</string>
- <key>history</key>
- <array>
- <string>F2A33A2712AD77EB00459019</string>
- <string>F2A33B5D12ADA10B00459019</string>
- <string>F2A33B5F12ADA10B00459019</string>
- <string>F2A33B6212ADA10B00459019</string>
- <string>F2A33B6412ADA10B00459019</string>
- <string>F2A33B6612ADA10B00459019</string>
- <string>F2A33B6812ADA10B00459019</string>
- <string>F2A33B6C12ADA10B00459019</string>
- <string>F2A33B6E12ADA10B00459019</string>
- <string>F2A33B7B12ADA17200459019</string>
- <string>F2A33B7D12ADA17200459019</string>
- <string>F2A33C0E12ADC38400459019</string>
- <string>F2DD7E5A12ADC3BF00CCAE81</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}, {859, 656}}</string>
- <key>RubberWindowFrame</key>
- <string>224 -116 1304 892 0 0 1600 1002 </string>
- </dict>
- <key>Module</key>
- <string>PBXNavigatorGroup</string>
- <key>Proportion</key>
- <string>656pt</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, 661}, {859, 190}}</string>
- <key>RubberWindowFrame</key>
- <string>224 -116 1304 892 0 0 1600 1002 </string>
- </dict>
- <key>Module</key>
- <string>XCDetailModule</string>
- <key>Proportion</key>
- <string>190pt</string>
- </dict>
- </array>
- <key>Proportion</key>
- <string>859pt</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>F2DD7E7512ADC3D400CCAE81</string>
- <string>1CE0B1FE06471DED0097A5F4</string>
- <string>F2DD7E7612ADC3D400CCAE81</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>313377763.998604</real>
- <key>ToolbarConfigUserDefaultsMinorVersion</key>
- <string>2</string>
- <key>ToolbarDisplayMode</key>
- <integer>1</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>F2A339D012AD759400459019</string>
- <string>F2A33B9C12ADBEE300459019</string>
- <string>1C78EAAD065D492600B07095</string>
- <string>1CD10A99069EF8BA00B06720</string>
- <string>/Users/stdorbit/Documents/hg/SORelativeDateTransformer/SORelativeDateTransformer.xcodeproj</string>
- </array>
- <key>WindowString</key>
- <string>224 -116 1304 892 0 0 1600 1002 </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}, {500, 218}}</string>
- <key>RubberWindowFrame</key>
- <string>49 453 500 500 0 0 1600 1002 </string>
- </dict>
- <key>Module</key>
- <string>PBXNavigatorGroup</string>
- <key>Proportion</key>
- <string>218pt</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>1013</integer>
- </dict>
- <key>GeometryConfiguration</key>
- <dict>
- <key>Frame</key>
- <string>{{0, 223}, {500, 236}}</string>
- <key>RubberWindowFrame</key>
- <string>49 453 500 500 0 0 1600 1002 </string>
- </dict>
- <key>Module</key>
- <string>PBXBuildResultsModule</string>
- <key>Proportion</key>
- <string>236pt</string>
- </dict>
- </array>
- <key>Proportion</key>
- <string>459pt</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>F2A339D012AD759400459019</string>
- <string>F2DD7E7812ADC3D400CCAE81</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>49 453 500 500 0 0 1600 1002 </string>
- <key>WindowToolGUID</key>
- <string>F2A339D012AD759400459019</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}, {697, 335}}</string>
- <string>{{697, 0}, {832, 335}}</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}, {1529, 335}}</string>
- <string>{{0, 335}, {1529, 381}}</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}, {1529, 716}}</string>
- <key>PBXDebugSessionStackFrameViewKey</key>
- <dict>
- <key>DebugVariablesTableConfiguration</key>
- <array>
- <string>Name</string>
- <real>275</real>
- <string>Value</string>
- <real>85</real>
- <string>Summary</string>
- <real>447</real>
- </array>
- <key>Frame</key>
- <string>{{697, 0}, {832, 335}}</string>
- <key>RubberWindowFrame</key>
- <string>1733 54 1529 757 1600 -142 1920 1080 </string>
- </dict>
- <key>RubberWindowFrame</key>
- <string>1733 54 1529 757 1600 -142 1920 1080 </string>
- </dict>
- <key>Module</key>
- <string>PBXDebugSessionModule</string>
- <key>Proportion</key>
- <string>716pt</string>
- </dict>
- </array>
- <key>Proportion</key>
- <string>716pt</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>F2DD7E7912ADC3D400CCAE81</string>
- <string>1C162984064C10D400B95A72</string>
- <string>F2DD7E7A12ADC3D400CCAE81</string>
- <string>F2DD7E7B12ADC3D400CCAE81</string>
- <string>F2DD7E7C12ADC3D400CCAE81</string>
- <string>F2DD7E7D12ADC3D400CCAE81</string>
- <string>F2DD7E7E12ADC3D400CCAE81</string>
- </array>
- <key>ToolbarConfiguration</key>
- <string>xcode.toolbar.config.debugV3</string>
- <key>WindowString</key>
- <string>1733 54 1529 757 1600 -142 1920 1080 </string>
- <key>WindowToolGUID</key>
- <string>1CD10A99069EF8BA00B06720</string>
- <key>WindowToolIsVisible</key>
- <true/>
- </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>BecomeActive</key>
- <true/>
- <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}, {1177, 224}}</string>
- <key>RubberWindowFrame</key>
- <string>48 88 1177 265 0 0 1600 1002 </string>
- </dict>
- <key>Module</key>
- <string>PBXDebugCLIModule</string>
- <key>Proportion</key>
- <string>224pt</string>
- </dict>
- </array>
- <key>Proportion</key>
- <string>224pt</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>F2DD7E7F12ADC3D400CCAE81</string>
- <string>1C78EAAC065D492600B07095</string>
- </array>
- <key>ToolbarConfiguration</key>
- <string>xcode.toolbar.config.consoleV3</string>
- <key>WindowString</key>
- <string>48 88 1177 265 0 0 1600 1002 </string>
- <key>WindowToolGUID</key>
- <string>1C78EAAD065D492600B07095</string>
- <key>WindowToolIsVisible</key>
- <true/>
- </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>F2A339D212AD759400459019</string>
- </dict>
- <key>GeometryConfiguration</key>
- <dict>
- <key>Frame</key>
- <string>{{0, 0}, {800, 239}}</string>
- <key>RubberWindowFrame</key>
- <string>501 662 800 280 0 0 1600 1002 </string>
- </dict>
- <key>Module</key>
- <string>XCRefactoringModule</string>
- <key>Proportion</key>
- <string>239pt</string>
- </dict>
- </array>
- <key>Proportion</key>
- <string>239pt</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>F2A339D312AD759400459019</string>
- <string>F2A339D412AD759400459019</string>
- <string>F2A339D212AD759400459019</string>
- </array>
- <key>WindowString</key>
- <string>501 662 800 280 0 0 1600 1002 </string>
- <key>WindowToolGUID</key>
- <string>F2A339D312AD759400459019</string>
- <key>WindowToolIsVisible</key>
- <false/>
- </dict>
- </array>
-</dict>
-</plist>
View
445 SORelativeDateTransformer.xcodeproj/stdorbit.pbxuser
@@ -1,445 +0,0 @@
-// !$*UTF8*$!
-{
- 1D6058900D05DD3D006BFB54 /* SORelativeDateTransformer */ = {
- activeExec = 0;
- executables = (
- F2A339B012AD72D200459019 /* SORelativeDateTransformer */,
- );
- };
- 29B97313FDCFA39411CA2CEA /* Project object */ = {
- activeBuildConfigurationName = Debug;
- activeExecutable = F2A339B012AD72D200459019 /* SORelativeDateTransformer */;
- activeSDKPreference = iphonesimulator4.2;
- activeTarget = 1D6058900D05DD3D006BFB54 /* SORelativeDateTransformer */;
- addToTargets = (
- 1D6058900D05DD3D006BFB54 /* SORelativeDateTransformer */,
- );
- breakpoints = (
- F2A33A3E12AD783000459019 /* SORelativeDateTransformer.m:51 */,
- F2A33A4912AD785200459019 /* TesterViewController.m:35 */,
- F2A33B9512ADBEDF00459019 /* SORelativeDateTransformer.m:65 */,
- );
- codeSenseManager = F2A339C012AD72E300459019 /* Code sense */;
- executables = (
- F2A339B012AD72D200459019 /* SORelativeDateTransformer */,
- );
- perUserDictionary = {
- PBXConfiguration.PBXFileTableDataSource3.PBXFileTableDataSource = {
- PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
- PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
- PBXFileTableDataSourceColumnWidthsKey = (
- 20,
- 620,
- 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,
- );
- };
- PBXConfiguration.PBXTargetDataSource.PBXTargetDataSource = {
- PBXFileTableDataSourceColumnSortingDirectionKey = "-1";
- PBXFileTableDataSourceColumnSortingKey = PBXFileDataSource_Filename_ColumnID;
- PBXFileTableDataSourceColumnWidthsKey = (
- 20,
- 580,
- 60,
- 20,
- 48,
- 43,
- 43,
- );
- PBXFileTableDataSourceColumnsKey = (
- PBXFileDataSource_FiletypeID,
- PBXFileDataSource_Filename_ColumnID,
- PBXTargetDataSource_PrimaryAttribute,
- PBXFileDataSource_Built_ColumnID,
- PBXFileDataSource_ObjectSize_ColumnID,
- PBXFileDataSource_Errors_ColumnID,
- PBXFileDataSource_Warnings_ColumnID,
- );
- };
- PBXPerProjectTemplateStateSaveDate = 313377736;
- PBXWorkspaceStateSaveDate = 313377736;
- };
- perUserProjectItems = {
- F2A33A2712AD77EB00459019 /* PlistBookmark */ = F2A33A2712AD77EB00459019 /* PlistBookmark */;
- F2A33B5D12ADA10B00459019 /* PBXTextBookmark */ = F2A33B5D12ADA10B00459019 /* PBXTextBookmark */;
- F2A33B5F12ADA10B00459019 /* PBXTextBookmark */ = F2A33B5F12ADA10B00459019 /* PBXTextBookmark */;
- F2A33B6212ADA10B00459019 /* PBXTextBookmark */ = F2A33B6212ADA10B00459019 /* PBXTextBookmark */;
- F2A33B6412ADA10B00459019 /* PBXTextBookmark */ = F2A33B6412ADA10B00459019 /* PBXTextBookmark */;
- F2A33B6612ADA10B00459019 /* PBXTextBookmark */ = F2A33B6612ADA10B00459019 /* PBXTextBookmark */;
- F2A33B6812ADA10B00459019 /* PBXTextBookmark */ = F2A33B6812ADA10B00459019 /* PBXTextBookmark */;
- F2A33B6C12ADA10B00459019 /* PBXTextBookmark */ = F2A33B6C12ADA10B00459019 /* PBXTextBookmark */;
- F2A33B6E12ADA10B00459019 /* PBXTextBookmark */ = F2A33B6E12ADA10B00459019 /* PBXTextBookmark */;
- F2A33B7B12ADA17200459019 /* PBXTextBookmark */ = F2A33B7B12ADA17200459019 /* PBXTextBookmark */;
- F2A33B7D12ADA17200459019 /* PBXTextBookmark */ = F2A33B7D12ADA17200459019 /* PBXTextBookmark */;
- F2A33C0E12ADC38400459019 /* PBXTextBookmark */ = F2A33C0E12ADC38400459019 /* PBXTextBookmark */;
- F2DD7E5A12ADC3BF00CCAE81 /* PBXTextBookmark */ = F2DD7E5A12ADC3BF00CCAE81 /* PBXTextBookmark */;
- F2DD7E5D12ADC3BF00CCAE81 /* PBXTextBookmark */ = F2DD7E5D12ADC3BF00CCAE81 /* PBXTextBookmark */;
- F2DD7E8012ADC3E300CCAE81 /* PBXTextBookmark */ = F2DD7E8012ADC3E300CCAE81 /* PBXTextBookmark */;
- F2DD7E8112ADC3E300CCAE81 /* PBXTextBookmark */ = F2DD7E8112ADC3E300CCAE81 /* PBXTextBookmark */;
- };
- sourceControlManager = F2A339BF12AD72E300459019 /* Source Control */;
- userBuildSettings = {
- };
- };
- 32CA4F630368D1EE00C91783 /* SORelativeDateTransformer_Prefix.pch */ = {
- uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {1348, 737}}";
- sepNavSelRange = "{222, 0}";
- sepNavVisRange = "{0, 223}";
- sepNavWindowFrame = "{{1776, -64}, {1407, 850}}";
- };
- };
- F2A339B012AD72D200459019 /* SORelativeDateTransformer */ = {
- 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 = SORelativeDateTransformer;
- savedGlobals = {
- };
- showTypeColumn = 0;
- sourceDirectories = (
- );
- variableFormatDictionary = {
- };
- };
- F2A339BF12AD72E300459019 /* Source Control */ = {
- isa = PBXSourceControlManager;
- fallbackIsa = XCSourceControlManager;
- isSCMEnabled = 0;
- scmConfiguration = {
- repositoryNamesForRoots = {
- "" = "";
- };
- };
- };
- F2A339C012AD72E300459019 /* Code sense */ = {
- isa = PBXCodeSenseManager;
- indexTemplatePath = "";
- };
- F2A33A2712AD77EB00459019 /* PlistBookmark */ = {
- isa = PlistBookmark;
- fRef = 8D1107310486CEB800E47090 /* SORelativeDateTransformer-Info.plist */;
- fallbackIsa = PBXBookmark;
- isK = 0;
- kPath = (
- );
- name = "/Users/stdorbit/Documents/hg/SORelativeDateTransformerTester/SORelativeDateTransformerTester-Info.plist";
- rLen = 0;
- rLoc = 9223372036854775808;
- };
- F2A33A3E12AD783000459019 /* SORelativeDateTransformer.m:51 */ = {
- isa = PBXFileBreakpoint;
- actions = (
- );
- breakpointStyle = 0;
- continueAfterActions = 0;
- countType = 0;
- delayBeforeContinue = 0;
- fileReference = F2A33B3C12AD9CA400459019 /* SORelativeDateTransformer.m */;
- functionName = "-transformedValue:";
- hitCount = 0;
- ignoreCount = 0;
- lineNumber = 51;
- location = SORelativeDateTransformerTester;
- modificationTime = 313376485.1033629;
- originalNumberOfMultipleMatches = 1;
- state = 1;
- };
- F2A33A4912AD785200459019 /* TesterViewController.m:35 */ = {
- isa = PBXFileBreakpoint;
- actions = (
- );
- breakpointStyle = 0;
- continueAfterActions = 0;
- countType = 0;
- delayBeforeContinue = 0;
- fileReference = F2A33B3E12AD9CA400459019 /* TesterViewController.m */;
- functionName = "-datePickerChangedValue:";
- hitCount = 0;
- ignoreCount = 0;
- lineNumber = 35;
- location = SORelativeDateTransformerTester;
- modificationTime = 313376485.103442;
- originalNumberOfMultipleMatches = 1;
- state = 1;
- };
- F2A33B3B12AD9CA400459019 /* SORelativeDateTransformer.h */ = {
- uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {1348, 740}}";
- sepNavSelRange = "{854, 0}";
- sepNavVisRange = "{0, 1910}";
- sepNavWindowFrame = "{{1822, -106}, {1407, 850}}";
- };
- };
- F2A33B3C12AD9CA400459019 /* SORelativeDateTransformer.m */ = {
- uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {1369, 2299}}";
- sepNavSelRange = "{1794, 28}";
- sepNavVisRange = "{1518, 2772}";
- sepNavWindowFrame = "{{1644, -109}, {1428, 1036}}";
- };
- };
- F2A33B3E12AD9CA400459019 /* TesterViewController.m */ = {
- uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {798, 659}}";
- sepNavSelRange = "{151, 0}";
- sepNavVisRange = "{0, 850}";
- sepNavWindowFrame = "{{1799, -85}, {1407, 850}}";
- };
- };
- F2A33B4B12ADA09A00459019 /* English */ = {
- uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {600, 480}}";
- sepNavSelRange = "{0, 0}";
- sepNavVisRange = "{0, 695}";
- };
- };
- F2A33B5D12ADA10B00459019 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = F2A33B5E12ADA10B00459019 /* Common.strings */;
- name = "Common.strings: 1";
- rLen = 0;
- rLoc = 0;
- rType = 0;
- vrLen = 798;
- vrLoc = 0;
- };
- F2A33B5E12ADA10B00459019 /* Common.strings */ = {
- isa = PBXFileReference;
- lastKnownFileType = text.plist.strings;
- name = Common.strings;
- path = /System/Library/Frameworks/AppKit.framework/Versions/C/Resources/English.lproj/Common.strings;
- sourceTree = "<absolute>";
- };
- F2A33B5F12ADA10B00459019 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = F2A33B6012ADA10B00459019 /* Preferences.strings */;
- name = "Preferences.strings: 1";
- rLen = 0;
- rLoc = 0;
- rType = 0;
- vrLen = 688;
- vrLoc = 0;
- };
- F2A33B6012ADA10B00459019 /* Preferences.strings */ = {
- isa = PBXFileReference;
- lastKnownFileType = text.plist.strings;
- name = Preferences.strings;
- path = /System/Library/Frameworks/AppKit.framework/Versions/C/Resources/English.lproj/Preferences.strings;
- sourceTree = "<absolute>";
- };
- F2A33B6212ADA10B00459019 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = F2A33B6312ADA10B00459019 /* AccessibilityImageDescriptions.strings */;
- name = "AccessibilityImageDescriptions.strings: 1";
- rLen = 0;
- rLoc = 0;
- rType = 0;
- vrLen = 608;
- vrLoc = 0;
- };
- F2A33B6312ADA10B00459019 /* AccessibilityImageDescriptions.strings */ = {
- isa = PBXFileReference;
- lastKnownFileType = text.plist.strings;
- name = AccessibilityImageDescriptions.strings;
- path = /System/Library/Frameworks/AppKit.framework/Versions/C/Resources/English.lproj/AccessibilityImageDescriptions.strings;
- sourceTree = "<absolute>";
- };
- F2A33B6412ADA10B00459019 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = F2A33B6512ADA10B00459019 /* Accessibility.strings */;
- name = "Accessibility.strings: 1";
- rLen = 0;
- rLoc = 0;
- rType = 0;
- vrLen = 869;
- vrLoc = 4116;
- };
- F2A33B6512ADA10B00459019 /* Accessibility.strings */ = {
- isa = PBXFileReference;
- lastKnownFileType = text.plist.strings;
- name = Accessibility.strings;
- path = /System/Library/Frameworks/AppKit.framework/Versions/C/Resources/English.lproj/Accessibility.strings;
- sourceTree = "<absolute>";
- };
- F2A33B6612ADA10B00459019 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = F2A33B6712ADA10B00459019 /* TextSystem.strings */;
- name = "TextSystem.strings: 1";
- rLen = 0;
- rLoc = 0;
- rType = 0;
- vrLen = 709;
- vrLoc = 0;
- };
- F2A33B6712ADA10B00459019 /* TextSystem.strings */ = {
- isa = PBXFileReference;
- lastKnownFileType = text.plist.strings;
- name = TextSystem.strings;
- path = /System/Library/Frameworks/AppKit.framework/Versions/C/Resources/English.lproj/TextSystem.strings;
- sourceTree = "<absolute>";
- };
- F2A33B6812ADA10B00459019 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = F2A33B6912ADA10B00459019 /* Spelling.strings */;
- name = "Spelling.strings: 1";
- rLen = 0;
- rLoc = 0;
- rType = 0;
- vrLen = 1094;
- vrLoc = 0;
- };
- F2A33B6912ADA10B00459019 /* Spelling.strings */ = {
- isa = PBXFileReference;
- lastKnownFileType = text.plist.strings;
- name = Spelling.strings;
- path = /System/Library/Frameworks/AppKit.framework/Versions/C/Resources/English.lproj/Spelling.strings;
- sourceTree = "<absolute>";
- };
- F2A33B6C12ADA10B00459019 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = F2A33B6D12ADA10B00459019 /* Document.strings */;
- name = "Document.strings: 1";
- rLen = 0;
- rLoc = 0;
- rType = 0;
- vrLen = 1363;
- vrLoc = 0;
- };
- F2A33B6D12ADA10B00459019 /* Document.strings */ = {
- isa = PBXFileReference;
- lastKnownFileType = text.plist.strings;
- name = Document.strings;
- path = /System/Library/Frameworks/AppKit.framework/Versions/C/Resources/English.lproj/Document.strings;
- sourceTree = "<absolute>";
- };
- F2A33B6E12ADA10B00459019 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = F2A33B4B12ADA09A00459019 /* English */;
- name = "SORelativeDateTransformer.strings: 1";
- rLen = 0;
- rLoc = 0;
- rType = 0;
- vrLen = 695;
- vrLoc = 0;
- };
- F2A33B7B12ADA17200459019 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = F2A33B3B12AD9CA400459019 /* SORelativeDateTransformer.h */;
- name = "SORelativeDateTransformer.h: 1";
- rLen = 0;
- rLoc = 0;
- rType = 0;
- vrLen = 1240;
- vrLoc = 0;
- };
- F2A33B7D12ADA17200459019 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = 32CA4F630368D1EE00C91783 /* SORelativeDateTransformer_Prefix.pch */;
- name = "SORelativeDateTransformerTester_Prefix.pch: 7";
- rLen = 0;
- rLoc = 215;
- rType = 0;
- vrLen = 223;
- vrLoc = 0;
- };
- F2A33B9512ADBEDF00459019 /* SORelativeDateTransformer.m:65 */ = {
- isa = PBXFileBreakpoint;
- actions = (
- );
- breakpointStyle = 0;
- continueAfterActions = 0;
- countType = 0;
- delayBeforeContinue = 0;
- fileReference = F2A33B3C12AD9CA400459019 /* SORelativeDateTransformer.m */;
- functionName = "-transformedValue:";
- hitCount = 3;
- ignoreCount = 0;
- lineNumber = 65;
- location = SORelativeDateTransformerTester;
- modificationTime = 313376712.567502;
- originalNumberOfMultipleMatches = 1;
- state = 2;
- };
- F2A33C0E12ADC38400459019 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = F2A33B3C12AD9CA400459019 /* SORelativeDateTransformer.m */;
- name = "SORelativeDateTransformer.m: 13";
- rLen = 0;
- rLoc = 510;
- rType = 0;
- vrLen = 1103;
- vrLoc = 0;
- };
- F2DD7E5A12ADC3BF00CCAE81 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = F2A33B3E12AD9CA400459019 /* TesterViewController.m */;
- name = "TesterViewController.m: 7";
- rLen = 0;
- rLoc = 151;
- rType = 0;
- vrLen = 850;
- vrLoc = 0;
- };
- F2DD7E5D12ADC3BF00CCAE81 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = F2A33B3C12AD9CA400459019 /* SORelativeDateTransformer.m */;
- name = "SORelativeDateTransformer.m: 59";
- rLen = 28;
- rLoc = 1794;
- rType = 0;
- vrLen = 2772;
- vrLoc = 1518;
- };
- F2DD7E8012ADC3E300CCAE81 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = F2A33B3E12AD9CA400459019 /* TesterViewController.m */;
- name = "TesterViewController.m: 7";
- rLen = 0;
- rLoc = 151;
- rType = 0;
- vrLen = 850;
- vrLoc = 0;
- };
- F2DD7E8112ADC3E300CCAE81 /* PBXTextBookmark */ = {
- isa = PBXTextBookmark;
- fRef = F2A33B3C12AD9CA400459019 /* SORelativeDateTransformer.m */;
- name = "SORelativeDateTransformer.m: 59";
- rLen = 28;
- rLoc = 1794;
- rType = 0;
- vrLen = 2772;
- vrLoc = 1518;
- };
-}
View
0 ...n.lproj/SORelativeDateTransformer.strings → ...e.lproj/SORelativeDateTransformer.strings
File renamed without changes.
View
0 ...h.lproj/SORelativeDateTransformer.strings → ...n.lproj/SORelativeDateTransformer.strings
File renamed without changes.
View
0 ...h.lproj/SORelativeDateTransformer.strings → ...s.lproj/SORelativeDateTransformer.strings
File renamed without changes.
View
0 ...h.lproj/SORelativeDateTransformer.strings → ...r.lproj/SORelativeDateTransformer.strings
File renamed without changes.
View
0 SORelativeDateTransformer.h → ...teTransformer/SORelativeDateTransformer.h
File renamed without changes.
View
22 SORelativeDateTransformer.m → ...teTransformer/SORelativeDateTransformer.m
@@ -11,6 +11,18 @@
@implementation SORelativeDateTransformer
++ (NSBundle *)bundle {
+ static NSBundle *bundle = nil;
+ static dispatch_once_t onceToken;
+ dispatch_once(&onceToken, ^{
+ NSURL *url = [[[NSBundle mainBundle] resourceURL] URLByAppendingPathComponent:@"SORelativeDateTransformer.bundle" isDirectory:YES];
+ bundle = [[NSBundle bundleWithURL:url] retain];
+ });
+ return bundle;
+}
+
+#define SORelativeDateLocalizedString(x, y) NSLocalizedStringFromTableInBundle((x), @"SORelativeDateTransformer", [SORelativeDateTransformer bundle], (y))
+
- (id) init
{
self = [super init];
@@ -47,12 +59,12 @@ - (id) transformedValue:(id)value
{
// Return early if input is whacked
if ([value isKindOfClass:[NSDate class]] == NO) {
- return NSLocalizedStringFromTable (@"now", NSStringFromClass([self class]), @"label for current date-time");
+ return SORelativeDateLocalizedString(@"now", @"label for current date-time");
}
// Default return value is "now".
- id transformedValue = NSLocalizedStringFromTable (@"now", NSStringFromClass([self class]), @"label for current date-time");
+ id transformedValue = SORelativeDateLocalizedString(@"now", @"label for current date-time");
// Obtain the date components for the relative difference between the input date and now.
@@ -92,7 +104,7 @@ - (id) transformedValue:(id)value
if (labs (relativeDifference) > 1) {
localizedDateComponentKey = [NSString stringWithFormat:@"%@s", selectorName];
}
- localizedDateComponentName = NSLocalizedStringFromTable (localizedDateComponentKey, NSStringFromClass([self class]), nil);
+ localizedDateComponentName = SORelativeDateLocalizedString(localizedDateComponentKey, nil);
}
// Generate the langugage-friendly phrase representing the relative difference between the input date and now.
@@ -103,11 +115,11 @@ - (id) transformedValue:(id)value
if (isRelativePastDate) {
// Fetch the string format template for relative past dates from the localization file and crunch out a formatted string.
- NSString *pastDatePhraseTemplate = NSLocalizedStringFromTable (@"formatTemplateForRelativePastDatePhrase", NSStringFromClass([self class]), nil);
+ NSString *pastDatePhraseTemplate = SORelativeDateLocalizedString(@"formatTemplateForRelativePastDatePhrase", nil);
transformedValue = [NSString stringWithFormat:pastDatePhraseTemplate, relativeDifference, localizedDateComponentName];
} else {
// Fetch the string format template for relative future dates from the localization file and crunch out a formatted string.
- NSString *futureDatePhraseTemplate = NSLocalizedStringFromTable (@"formatTemplateForRelativeFutureDatePhrase", NSStringFromClass([self class]), nil);
+ NSString *futureDatePhraseTemplate = SORelativeDateLocalizedString(@"formatTemplateForRelativeFutureDatePhrase", nil);
transformedValue = [NSString stringWithFormat:futureDatePhraseTemplate, labs (relativeDifference), localizedDateComponentName];
}

0 comments on commit 27b9ef7

Please sign in to comment.
Something went wrong with that request. Please try again.