diff options
author | gtm.daemon <gtm.daemon@7dc7ac4e-7543-0410-b95c-c1676fc8e2a3> | 2013-01-02 13:00:13 +0000 |
---|---|---|
committer | gtm.daemon <gtm.daemon@7dc7ac4e-7543-0410-b95c-c1676fc8e2a3> | 2013-01-02 13:00:13 +0000 |
commit | 3d42089a8fac73ca2c437fdfffaffc12ac540159 (patch) | |
tree | 25df431d42703439793720061f3ba213ea7fe7ee | |
parent | 2c2586d12e7757a41a1eda0c47c6b9c2fabe970e (diff) |
[Author: thomasvl]
Remove the GC support code.
Add the needed images for the iOS unittests under iOS 6.0.
Add a workspace file for the iPhone project.
R=dmaclach
DELTA=215 (85 added, 122 deleted, 8 changed)
20 files changed, 88 insertions, 130 deletions
diff --git a/AppKit/GTMCarbonEvent.m b/AppKit/GTMCarbonEvent.m index 9ff1fbf..e2c5758 100644 --- a/AppKit/GTMCarbonEvent.m +++ b/AppKit/GTMCarbonEvent.m @@ -134,16 +134,6 @@ return carbonEvent; } -#if GTM_SUPPORT_GC -- (void)finalize { - if (event_) { - ReleaseEvent(event_); - event_ = NULL; - } - [super finalize]; -} -#endif - // releases our retained event // - (void)dealloc { diff --git a/AppKit/GTMLinearRGBShading.m b/AppKit/GTMLinearRGBShading.m index 4ddabce..f605350 100644 --- a/AppKit/GTMLinearRGBShading.m +++ b/AppKit/GTMLinearRGBShading.m @@ -58,18 +58,6 @@ static void cShadeFunction(void *info, const CGFloat *inPos, CGFloat *outVals); return self; } -#if GTM_SUPPORT_GC -- (void)finalize { - if (nil != function_) { - CGFunctionRelease(function_); - } - if (nil != colorSpace_) { - CGColorSpaceRelease(colorSpace_); - } - [super finalize]; -} -#endif - - (void)dealloc { if (nil != function_) { CGFunctionRelease(function_); diff --git a/Foundation/GTMFileSystemKQueue.m b/Foundation/GTMFileSystemKQueue.m index 7114304..a66dc47 100644 --- a/Foundation/GTMFileSystemKQueue.m +++ b/Foundation/GTMFileSystemKQueue.m @@ -85,14 +85,6 @@ static CFSocketRef gRunLoopSocket = NULL; return self; } -#if GTM_SUPPORT_GC -- (void)finalize { - [self unregisterWithKQueue]; - - [super finalize]; -} -#endif - - (void)dealloc { [self unregisterWithKQueue]; [path_ release]; diff --git a/Foundation/GTMLightweightProxy.m b/Foundation/GTMLightweightProxy.m index 643478a..dc89807 100644 --- a/Foundation/GTMLightweightProxy.m +++ b/Foundation/GTMLightweightProxy.m @@ -31,16 +31,6 @@ return [self initWithRepresentedObject:nil]; } -#if MAC_OS_X_VERSION_MIN_REQUIRED >= MAC_OS_X_VERSION_10_5 -#if GTM_SUPPORT_GC -// -[NSProxy finalize] is only in 10.5 or later -- (void)finalize { - representedObject_ = nil; - [super finalize]; -} -#endif -#endif - - (void)dealloc { // it's weak, we don't release representedObject_ = nil; diff --git a/Foundation/GTMLogger+ASL.m b/Foundation/GTMLogger+ASL.m index a4299dc..43375fe 100644 --- a/Foundation/GTMLogger+ASL.m +++ b/Foundation/GTMLogger+ASL.m @@ -157,13 +157,6 @@ [super dealloc]; } -#if GTM_SUPPORT_GC -- (void)finalize { - if (client_ != NULL) asl_close(client_); - [super finalize]; -} -#endif - // We don't test this one line because we don't want to pollute actual system // logs with test messages. // COV_NF_START diff --git a/Foundation/GTMNSObject+KeyValueObserving.m b/Foundation/GTMNSObject+KeyValueObserving.m index 8d6580d..814419b 100644 --- a/Foundation/GTMNSObject+KeyValueObserving.m +++ b/Foundation/GTMNSObject+KeyValueObserving.m @@ -121,18 +121,6 @@ static char* GTMKeyValueObservingHelperContext NSStringFromSelector(selector_)]; } -#if GTM_SUPPORT_GC - -- (void)finalize { - if (target_) { - _GTMDevLog(@"Didn't deregister %@", self); - [self deregister]; - } - [super finalize]; -} - -#endif // GTM_SUPPORT_GC - - (void)dealloc { if (target_) { _GTMDevLog(@"Didn't deregister %@", self); diff --git a/Foundation/GTMRegex.m b/Foundation/GTMRegex.m index d0b831c..238ca48 100644 --- a/Foundation/GTMRegex.m +++ b/Foundation/GTMRegex.m @@ -190,19 +190,6 @@ static NSString *const kReplacementPattern = return self; } -#if GTM_SUPPORT_GC -- (void)finalize { - // we used pattern_ as our flag that we initialized the regex_t - if (pattern_) { - regfree(®exData_); - [pattern_ release]; - // play it safe and clear it since we use it as a flag for regexData_ - pattern_ = nil; - } - [super finalize]; -} -#endif - - (void)dealloc { // we used pattern_ as our flag that we initialized the regex_t if (pattern_) { diff --git a/Foundation/GTMSQLite.m b/Foundation/GTMSQLite.m index 4313949..29980ae 100644 --- a/Foundation/GTMSQLite.m +++ b/Foundation/GTMSQLite.m @@ -224,13 +224,6 @@ static CFLocaleRef gCurrentLocale = NULL; errorCode:err]; } -#if GTM_SUPPORT_GC -- (void)finalize { - [self cleanupDB]; - [super finalize]; -} -#endif - - (void)dealloc { [self cleanupDB]; [super dealloc]; @@ -1717,16 +1710,6 @@ static void Glob16(sqlite3_context *context, int argc, sqlite3_value **argv) { return obj; } -#if GTM_SUPPORT_GC -- (void)finalize { - if (statement_) { - _GTMDevLog(@"-[GTMSQLiteStatement finalizeStatement] must be called when" - @" statement is no longer needed"); - } - [super finalize]; -} -#endif - - (void)dealloc { if (statement_) { _GTMDevLog(@"-[GTMSQLiteStatement finalizeStatement] must be called when" diff --git a/Foundation/GTMSignalHandler.m b/Foundation/GTMSignalHandler.m index 677c10a..26a06f1 100644 --- a/Foundation/GTMSignalHandler.m +++ b/Foundation/GTMSignalHandler.m @@ -86,15 +86,6 @@ static CFSocketRef gRunLoopSocket = NULL; return self; } -#if GTM_SUPPORT_GC - -- (void)finalize { - [self invalidate]; - [super finalize]; -} - -#endif - - (void)dealloc { [self invalidate]; [super dealloc]; diff --git a/GTM.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/GTM.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..b3b7752 --- /dev/null +++ b/GTM.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Workspace + version = "1.0"> + <FileRef + location = "self:GTM.xcodeproj"> + </FileRef> +</Workspace> diff --git a/GTMDefines.h b/GTMDefines.h index b970d69..c615d9f 100644 --- a/GTMDefines.h +++ b/GTMDefines.h @@ -217,21 +217,10 @@ #define GTM_AVAILABLE_ONLY_ON_MACOS UNAVAILABLE_ATTRIBUTE #endif -// Provide a symbol to include/exclude extra code for GC support. (This mainly -// just controls the inclusion of finalize methods). +// GC was dropped by Apple, define the old constant incase anyone still keys +// off of it. #ifndef GTM_SUPPORT_GC - #if GTM_IPHONE_SDK - // iPhone never needs GC - #define GTM_SUPPORT_GC 0 - #else - // We can't find a symbol to tell if GC is supported/required, so best we - // do on Mac targets is include it if we're on 10.5 or later. - #if MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_X_VERSION_10_5 - #define GTM_SUPPORT_GC 0 - #else - #define GTM_SUPPORT_GC 1 - #endif - #endif + #define GTM_SUPPORT_GC 0 #endif // To simplify support for 64bit (and Leopard in general), we provide the type diff --git a/GTMiPhone.xcodeproj/project.pbxproj b/GTMiPhone.xcodeproj/project.pbxproj index eefff17..8271e6a 100644 --- a/GTMiPhone.xcodeproj/project.pbxproj +++ b/GTMiPhone.xcodeproj/project.pbxproj @@ -157,6 +157,16 @@ F45F27B814F41441003A91E6 /* GTMFadeTruncatingLabelTest5.5.png in Resources */ = {isa = PBXBuildFile; fileRef = F45F27AF14F41441003A91E6 /* GTMFadeTruncatingLabelTest5.5.png */; }; F45F27B914F41441003A91E6 /* GTMFadeTruncatingLabelTest5.5.png in Resources */ = {isa = PBXBuildFile; fileRef = F45F27AF14F41441003A91E6 /* GTMFadeTruncatingLabelTest5.5.png */; }; F4746721129703600022C1FB /* GTMSenTestCaseTest.m in Sources */ = {isa = PBXBuildFile; fileRef = F4746720129703600022C1FB /* GTMSenTestCaseTest.m */; }; + F4C35E70164EB3A300688B6E /* GTMFadeTruncatingLabelTest1.6.png in Resources */ = {isa = PBXBuildFile; fileRef = F4C35E6B164EB39F00688B6E /* GTMFadeTruncatingLabelTest1.6.png */; }; + F4C35E71164EB3A300688B6E /* GTMFadeTruncatingLabelTest1.6.png in Resources */ = {isa = PBXBuildFile; fileRef = F4C35E6B164EB39F00688B6E /* GTMFadeTruncatingLabelTest1.6.png */; }; + F4C35E72164EB3A300688B6E /* GTMFadeTruncatingLabelTest2.6.png in Resources */ = {isa = PBXBuildFile; fileRef = F4C35E6C164EB39F00688B6E /* GTMFadeTruncatingLabelTest2.6.png */; }; + F4C35E73164EB3A300688B6E /* GTMFadeTruncatingLabelTest2.6.png in Resources */ = {isa = PBXBuildFile; fileRef = F4C35E6C164EB39F00688B6E /* GTMFadeTruncatingLabelTest2.6.png */; }; + F4C35E74164EB3A300688B6E /* GTMFadeTruncatingLabelTest3.6.png in Resources */ = {isa = PBXBuildFile; fileRef = F4C35E6D164EB3A000688B6E /* GTMFadeTruncatingLabelTest3.6.png */; }; + F4C35E75164EB3A300688B6E /* GTMFadeTruncatingLabelTest3.6.png in Resources */ = {isa = PBXBuildFile; fileRef = F4C35E6D164EB3A000688B6E /* GTMFadeTruncatingLabelTest3.6.png */; }; + F4C35E76164EB3A300688B6E /* GTMFadeTruncatingLabelTest4.6.png in Resources */ = {isa = PBXBuildFile; fileRef = F4C35E6E164EB3A100688B6E /* GTMFadeTruncatingLabelTest4.6.png */; }; + F4C35E77164EB3A300688B6E /* GTMFadeTruncatingLabelTest4.6.png in Resources */ = {isa = PBXBuildFile; fileRef = F4C35E6E164EB3A100688B6E /* GTMFadeTruncatingLabelTest4.6.png */; }; + F4C35E78164EB3A300688B6E /* GTMFadeTruncatingLabelTest5.6.png in Resources */ = {isa = PBXBuildFile; fileRef = F4C35E6F164EB3A100688B6E /* GTMFadeTruncatingLabelTest5.6.png */; }; + F4C35E79164EB3A300688B6E /* GTMFadeTruncatingLabelTest5.6.png in Resources */ = {isa = PBXBuildFile; fileRef = F4C35E6F164EB3A100688B6E /* GTMFadeTruncatingLabelTest5.6.png */; }; F4D20EB114852CA40001600C /* GTMABAddressBook.m in Sources */ = {isa = PBXBuildFile; fileRef = 8BFE15C10FB0F764001BE894 /* GTMABAddressBook.m */; }; F4D20EB214852CA40001600C /* GTMABAddressBook.strings in Resources */ = {isa = PBXBuildFile; fileRef = 8BFE15C20FB0F764001BE894 /* GTMABAddressBook.strings */; }; F4D20EB314852CA40001600C /* GTMABAddressBookTest.m in Sources */ = {isa = PBXBuildFile; fileRef = 8BFE15C30FB0F764001BE894 /* GTMABAddressBookTest.m */; }; @@ -488,6 +498,11 @@ F4746720129703600022C1FB /* GTMSenTestCaseTest.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GTMSenTestCaseTest.m; sourceTree = "<group>"; }; F4A0A95E140438B90010B64B /* DebugiOS.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = DebugiOS.xcconfig; sourceTree = "<group>"; }; F4A0A95F140438B90010B64B /* ReleaseiOS.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = ReleaseiOS.xcconfig; sourceTree = "<group>"; }; + F4C35E6B164EB39F00688B6E /* GTMFadeTruncatingLabelTest1.6.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = GTMFadeTruncatingLabelTest1.6.png; path = TestData/GTMFadeTruncatingLabelTest1.6.png; sourceTree = "<group>"; }; + F4C35E6C164EB39F00688B6E /* GTMFadeTruncatingLabelTest2.6.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = GTMFadeTruncatingLabelTest2.6.png; path = TestData/GTMFadeTruncatingLabelTest2.6.png; sourceTree = "<group>"; }; + F4C35E6D164EB3A000688B6E /* GTMFadeTruncatingLabelTest3.6.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = GTMFadeTruncatingLabelTest3.6.png; path = TestData/GTMFadeTruncatingLabelTest3.6.png; sourceTree = "<group>"; }; + F4C35E6E164EB3A100688B6E /* GTMFadeTruncatingLabelTest4.6.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = GTMFadeTruncatingLabelTest4.6.png; path = TestData/GTMFadeTruncatingLabelTest4.6.png; sourceTree = "<group>"; }; + F4C35E6F164EB3A100688B6E /* GTMFadeTruncatingLabelTest5.6.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = GTMFadeTruncatingLabelTest5.6.png; path = TestData/GTMFadeTruncatingLabelTest5.6.png; sourceTree = "<group>"; }; F4D20EAA14852BFB0001600C /* GTMiPhoneUnitTestingOCUnit.octest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = GTMiPhoneUnitTestingOCUnit.octest; sourceTree = BUILT_PRODUCTS_DIR; }; F4D20EAB14852BFB0001600C /* GTMiPhoneUnitTestingOCUnit-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "GTMiPhoneUnitTestingOCUnit-Info.plist"; sourceTree = "<group>"; }; F4E3B3D60EB5EF2400CB713D /* GTMUIFont+LineHeight.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "GTMUIFont+LineHeight.h"; sourceTree = "<group>"; }; @@ -594,25 +609,25 @@ 64D0F5CB0FD3E66A00506CC7 /* TestData */ = { isa = PBXGroup; children = ( - 9340CFA1140550E30026DDC9 /* GTMFadeTruncatingLabelTest1.png */, F45F27AB14F41441003A91E6 /* GTMFadeTruncatingLabelTest1.5.png */, - 9340CFA2140550E30026DDC9 /* GTMFadeTruncatingLabelTest2.png */, + F4C35E6B164EB39F00688B6E /* GTMFadeTruncatingLabelTest1.6.png */, + 9340CFA1140550E30026DDC9 /* GTMFadeTruncatingLabelTest1.png */, F45F27AC14F41441003A91E6 /* GTMFadeTruncatingLabelTest2.5.png */, - 9340CFA3140550E30026DDC9 /* GTMFadeTruncatingLabelTest3.png */, + F4C35E6C164EB39F00688B6E /* GTMFadeTruncatingLabelTest2.6.png */, + 9340CFA2140550E30026DDC9 /* GTMFadeTruncatingLabelTest2.png */, F45F27AD14F41441003A91E6 /* GTMFadeTruncatingLabelTest3.5.png */, - 9340CFA4140550E30026DDC9 /* GTMFadeTruncatingLabelTest4.png */, + F4C35E6D164EB3A000688B6E /* GTMFadeTruncatingLabelTest3.6.png */, + 9340CFA3140550E30026DDC9 /* GTMFadeTruncatingLabelTest3.png */, F45F27AE14F41441003A91E6 /* GTMFadeTruncatingLabelTest4.5.png */, - 9340CFA5140550E30026DDC9 /* GTMFadeTruncatingLabelTest5.png */, + F4C35E6E164EB3A100688B6E /* GTMFadeTruncatingLabelTest4.6.png */, + 9340CFA4140550E30026DDC9 /* GTMFadeTruncatingLabelTest4.png */, F45F27AF14F41441003A91E6 /* GTMFadeTruncatingLabelTest5.5.png */, + F4C35E6F164EB3A100688B6E /* GTMFadeTruncatingLabelTest5.6.png */, + 9340CFA5140550E30026DDC9 /* GTMFadeTruncatingLabelTest5.png */, + 64D0F5DB0FD3E68400506CC7 /* GTMUIImage+Resize_100x100.png */, + 64D0F5DC0FD3E68400506CC7 /* GTMUIImage+Resize_100x100_to_40x60.png */, + 64D0F5DD0FD3E68400506CC7 /* GTMUIImage+Resize_100x100_to_50x50.png */, 64D0F5CC0FD3E68400506CC7 /* GTMUIImage+Resize_100x100_to_60x40.png */, - 64D0F5CD0FD3E68400506CC7 /* GTMUIImage+Resize_50x100.png */, - 448D61B011AC1AAD0097ACBC /* GTMUIImage+Resize_50x100_flipped.png */, - 64D0F5CE0FD3E68400506CC7 /* GTMUIImage+Resize_50x100_to_40x60_clip.png */, - 64D0F5CF0FD3E68400506CC7 /* GTMUIImage+Resize_50x100_to_40x60_noclip.png */, - 64D0F5D00FD3E68400506CC7 /* GTMUIImage+Resize_50x100_to_50x50_clip.png */, - 64D0F5D10FD3E68400506CC7 /* GTMUIImage+Resize_50x100_to_50x50_noclip.png */, - 64D0F5D20FD3E68400506CC7 /* GTMUIImage+Resize_50x100_to_60x40_clip.png */, - 64D0F5D30FD3E68400506CC7 /* GTMUIImage+Resize_50x100_to_60x40_noclip.png */, 64D0F5D40FD3E68400506CC7 /* GTMUIImage+Resize_100x50.png */, 448D61B111AC1AAD0097ACBC /* GTMUIImage+Resize_100x50_flipped.png */, 64D0F5D50FD3E68400506CC7 /* GTMUIImage+Resize_100x50_to_40x60_clip.png */, @@ -621,9 +636,14 @@ 64D0F5D80FD3E68400506CC7 /* GTMUIImage+Resize_100x50_to_50x50_noclip.png */, 64D0F5D90FD3E68400506CC7 /* GTMUIImage+Resize_100x50_to_60x40_clip.png */, 64D0F5DA0FD3E68400506CC7 /* GTMUIImage+Resize_100x50_to_60x40_noclip.png */, - 64D0F5DB0FD3E68400506CC7 /* GTMUIImage+Resize_100x100.png */, - 64D0F5DC0FD3E68400506CC7 /* GTMUIImage+Resize_100x100_to_40x60.png */, - 64D0F5DD0FD3E68400506CC7 /* GTMUIImage+Resize_100x100_to_50x50.png */, + 64D0F5CD0FD3E68400506CC7 /* GTMUIImage+Resize_50x100.png */, + 448D61B011AC1AAD0097ACBC /* GTMUIImage+Resize_50x100_flipped.png */, + 64D0F5CE0FD3E68400506CC7 /* GTMUIImage+Resize_50x100_to_40x60_clip.png */, + 64D0F5CF0FD3E68400506CC7 /* GTMUIImage+Resize_50x100_to_40x60_noclip.png */, + 64D0F5D00FD3E68400506CC7 /* GTMUIImage+Resize_50x100_to_50x50_clip.png */, + 64D0F5D10FD3E68400506CC7 /* GTMUIImage+Resize_50x100_to_50x50_noclip.png */, + 64D0F5D20FD3E68400506CC7 /* GTMUIImage+Resize_50x100_to_60x40_clip.png */, + 64D0F5D30FD3E68400506CC7 /* GTMUIImage+Resize_50x100_to_60x40_noclip.png */, ); name = TestData; sourceTree = "<group>"; @@ -980,6 +1000,11 @@ F45F27B414F41441003A91E6 /* GTMFadeTruncatingLabelTest3.5.png in Resources */, F45F27B614F41441003A91E6 /* GTMFadeTruncatingLabelTest4.5.png in Resources */, F45F27B814F41441003A91E6 /* GTMFadeTruncatingLabelTest5.5.png in Resources */, + F4C35E70164EB3A300688B6E /* GTMFadeTruncatingLabelTest1.6.png in Resources */, + F4C35E72164EB3A300688B6E /* GTMFadeTruncatingLabelTest2.6.png in Resources */, + F4C35E74164EB3A300688B6E /* GTMFadeTruncatingLabelTest3.6.png in Resources */, + F4C35E76164EB3A300688B6E /* GTMFadeTruncatingLabelTest4.6.png in Resources */, + F4C35E78164EB3A300688B6E /* GTMFadeTruncatingLabelTest5.6.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -1022,6 +1047,11 @@ F45F27B514F41441003A91E6 /* GTMFadeTruncatingLabelTest3.5.png in Resources */, F45F27B714F41441003A91E6 /* GTMFadeTruncatingLabelTest4.5.png in Resources */, F45F27B914F41441003A91E6 /* GTMFadeTruncatingLabelTest5.5.png in Resources */, + F4C35E71164EB3A300688B6E /* GTMFadeTruncatingLabelTest1.6.png in Resources */, + F4C35E73164EB3A300688B6E /* GTMFadeTruncatingLabelTest2.6.png in Resources */, + F4C35E75164EB3A300688B6E /* GTMFadeTruncatingLabelTest3.6.png in Resources */, + F4C35E77164EB3A300688B6E /* GTMFadeTruncatingLabelTest4.6.png in Resources */, + F4C35E79164EB3A300688B6E /* GTMFadeTruncatingLabelTest5.6.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/GTMiPhone.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/GTMiPhone.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 0000000..25767ca --- /dev/null +++ b/GTMiPhone.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<Workspace + version = "1.0"> + <FileRef + location = "self:GTMiPhone.xcodeproj"> + </FileRef> +</Workspace> diff --git a/ReleaseNotes.txt b/ReleaseNotes.txt index 0bd6557..41b16d9 100644 --- a/ReleaseNotes.txt +++ b/ReleaseNotes.txt @@ -27,6 +27,9 @@ Changes since 1.6.0 - Initial support for using the Xcode provided OCUnit for unittesting on iOS. Define GTM_IPHONE_USE_SENTEST to 1 to use this. +- Removed support for Garbage Collection, leaving just the shell for other code + that might have depended on some of the constants/method GTM provided. + Release 1.6.0 Changes since 1.5.1 diff --git a/iPhone/GTMUILocalizer.m b/iPhone/GTMUILocalizer.m index 7923d05..269d2f6 100644 --- a/iPhone/GTMUILocalizer.m +++ b/iPhone/GTMUILocalizer.m @@ -25,6 +25,7 @@ // Never recursively call any of these methods. Always call // -[self localizeObject:recursively:]. - (void)localizeToolbar:(UIToolbar *)toolbar; +- (void)localizeSegmentedControl:(UISegmentedControl *)segmentedControl; - (void)localizeView:(UIView *)view recursively:(BOOL)recursive; - (void)localizeButton:(UIButton *)button; @end @@ -96,10 +97,12 @@ if ([object isKindOfClass:[UIViewController class]]) { UIView *view = [object view]; [self localizeView:view recursively:recursive]; - } else if ([object isKindOfClass:[UIView class]]) { - [self localizeView:(UIView *)object recursively:recursive]; } else if ([object isKindOfClass:[UIToolbar class]]) { [self localizeToolbar:(UIToolbar*)object]; + } else if ([object isKindOfClass:[UISegmentedControl class]]) { + [self localizeSegmentedControl:(UISegmentedControl*)object]; + } else if ([object isKindOfClass:[UIView class]]) { + [self localizeView:(UIView *)object recursively:recursive]; } } } @@ -119,6 +122,23 @@ } } +- (void)localizeSegmentedControl:(UISegmentedControl *)segmentedControl { + // A UISegmentedControl uses a few objects as subviews, but they aren't + // documented. It happened to work out that their inherritance was right + // with the selectors they implemented that things localized, but iOS 6 + // changed some of that, so they are now directly handled. + NSUInteger numberOfSegments = segmentedControl.numberOfSegments; + for (NSUInteger i = 0; i < numberOfSegments; ++i) { + NSString *title = [segmentedControl titleForSegmentAtIndex:i]; + if (title) { + title = [self localizedStringForString:title]; + if (title) { + [segmentedControl setTitle:title forSegmentAtIndex:i]; + } + } + } +} + - (void)localizeView:(UIView *)view recursively:(BOOL)recursive { if (view) { // Do accessibility on views. diff --git a/iPhone/TestData/GTMFadeTruncatingLabelTest1.6.png b/iPhone/TestData/GTMFadeTruncatingLabelTest1.6.png Binary files differnew file mode 100644 index 0000000..e2a2777 --- /dev/null +++ b/iPhone/TestData/GTMFadeTruncatingLabelTest1.6.png diff --git a/iPhone/TestData/GTMFadeTruncatingLabelTest2.6.png b/iPhone/TestData/GTMFadeTruncatingLabelTest2.6.png Binary files differnew file mode 100644 index 0000000..cb840ba --- /dev/null +++ b/iPhone/TestData/GTMFadeTruncatingLabelTest2.6.png diff --git a/iPhone/TestData/GTMFadeTruncatingLabelTest3.6.png b/iPhone/TestData/GTMFadeTruncatingLabelTest3.6.png Binary files differnew file mode 100644 index 0000000..b9a07fa --- /dev/null +++ b/iPhone/TestData/GTMFadeTruncatingLabelTest3.6.png diff --git a/iPhone/TestData/GTMFadeTruncatingLabelTest4.6.png b/iPhone/TestData/GTMFadeTruncatingLabelTest4.6.png Binary files differnew file mode 100644 index 0000000..1fecc29 --- /dev/null +++ b/iPhone/TestData/GTMFadeTruncatingLabelTest4.6.png diff --git a/iPhone/TestData/GTMFadeTruncatingLabelTest5.6.png b/iPhone/TestData/GTMFadeTruncatingLabelTest5.6.png Binary files differnew file mode 100644 index 0000000..8c2db75 --- /dev/null +++ b/iPhone/TestData/GTMFadeTruncatingLabelTest5.6.png |