From ef2b047e63cc1768e095a2003a819b1f142effde Mon Sep 17 00:00:00 2001 From: Francesco Frison Date: Thu, 11 Jul 2013 16:15:14 +0100 Subject: [PATCH] Fixes Table Header + Idioms and languages var names --- .../Controllers/ZFFileDetailController.m | 19 ++-- HiperStrings/en.lproj/MainMenu.xib | 94 +++++++++---------- Strings/ZFLangFile.h | 2 +- Strings/ZFLangFile.m | 6 +- Strings/ZFTranslationFile.h | 2 +- Strings/ZFTranslationFile.m | 24 ++--- 6 files changed, 76 insertions(+), 71 deletions(-) diff --git a/HiperStrings/Controllers/ZFFileDetailController.m b/HiperStrings/Controllers/ZFFileDetailController.m index ef3d28d..d059cf8 100644 --- a/HiperStrings/Controllers/ZFFileDetailController.m +++ b/HiperStrings/Controllers/ZFFileDetailController.m @@ -25,7 +25,7 @@ @implementation ZFFileDetailController - (void)setLangFile:(ZFTranslationFile *)langFile { _langFile = langFile; - self.columns = [[NSArray arrayWithObject:KEY_KEY] arrayByAddingObjectsFromArray:[_langFile allLanguageIdentifiers]]; + self.columns = [[NSArray arrayWithObject:KEY_KEY] arrayByAddingObjectsFromArray:[_langFile allIdioms]]; self.keys = (self.columns.count > 1)? [self.langFile allKeys] : [NSArray array]; NSMutableArray *addCol = [self.columns mutableCopy]; @@ -40,19 +40,25 @@ - (void)setLangFile:(ZFTranslationFile *)langFile { }]; [addCol enumerateObjectsUsingBlock:^(NSString *obj, NSUInteger idx, BOOL *stop) { NSTableColumn *column = [[NSTableColumn alloc] initWithIdentifier:obj]; - [column setHeaderCell:[[NSCell alloc] initTextCell:obj]]; + [[column headerCell] setStringValue:obj]; + [[column headerCell] setAlignment:NSLeftTextAlignment]; [self.tableView addTableColumn:column]; }]; - [self didSwithSegmentedControl:self.segmentedControl]; } #pragma mark - Segmented Controller +-(void)tableViewColumnDidResize:(NSNotification *)notification { + +// NSTableColumn *column = [[notification userInfo] objectForKey:@"NSTableColumn"]; + +} + - (IBAction)didSwithSegmentedControl:(NSSegmentedControl *)sender { - self.rows = [self.langFile translationsByType:(self.segmentedControl.selectedSegment == 0)? ZFLangTypeIOS : ZFLangTypeAndorid andLanguageIdentifier:nil]; + self.rows = [self.langFile translationsByType:(self.segmentedControl.selectedSegment == 0)? ZFLangTypeIOS : ZFLangTypeAndorid andLanguageIdentifier:nil]; [self.tableView reloadData]; } @@ -62,13 +68,14 @@ - (NSInteger)numberOfRowsInTableView:(NSTableView *)tableView { return [self.keys count]; } -- (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row { +- (id)tableView:(NSTableView *)tableView objectValueForTableColumn:(NSTableColumn *)tableColumn row:(NSInteger)row { NSString *key = [self.keys objectAtIndex:row]; if ([tableColumn.identifier isEqualToString:KEY_KEY]) return key; else { NSArray *translation = [self.langFile translationsByType:(self.segmentedControl.selectedSegment == 0)? ZFLangTypeIOS : ZFLangTypeAndorid andLanguageIdentifier:tableColumn.identifier]; ZFLangFile *lang = [translation lastObject]; - return [[lang lineForKey:key] value]; + ZFTranslationLine *line = [lang lineForKey:key]; + return (line.type != ZFTranslationLineTypeUntranslated)? line.value : @"--"; } //return [[self.rows objectForKey:tableColumn.identifier] objectForKey:[self.keys objectAtIndex:row]]; diff --git a/HiperStrings/en.lproj/MainMenu.xib b/HiperStrings/en.lproj/MainMenu.xib index 1205907..8f2c613 100644 --- a/HiperStrings/en.lproj/MainMenu.xib +++ b/HiperStrings/en.lproj/MainMenu.xib @@ -1407,9 +1407,10 @@ 60 - -700448768 + -163577856 + 2 4 15 0 @@ -1513,14 +1514,13 @@ YES NO YES - - + + 256 {721, 17} - + - _NS:16 @@ -1601,10 +1601,11 @@ 17 - -700448768 + 1992327168 - 4 + 3 + 1 15 0 YES @@ -1632,8 +1633,7 @@ NO _doScroller: - 37 - 0.1947367936372757 + 0.99842271293375395 @@ -1647,20 +1647,19 @@ 1 _doScroller: - 0.57142859697341919 + 0.99861495844875348 - + 2304 - + {{1, 0}, {721, 17}} - - _NS:15 - + + 4 @@ -1668,13 +1667,13 @@ {{278, -1}, {723, 651}} - + _NS:9 133682 - + QSAAAEEgAABBmAAAQZgAAA 0.25 4 @@ -3552,8 +3551,8 @@ - + @@ -4116,8 +4115,8 @@ - + @@ -4135,11 +4134,6 @@ - - 636 - - - 637 @@ -4414,7 +4408,7 @@ 274 {{1, 1}, {447, 50}} - + @@ -4424,11 +4418,6 @@ - - 678 - - - 681 @@ -4473,11 +4462,6 @@ - - 701 - - - 702 @@ -4541,21 +4525,11 @@ - - 708 - - - 709 - - 713 - - - 715 @@ -4566,6 +4540,31 @@ + + 678 + + + + + 713 + + + + + 708 + + + + + 701 + + + + + 752 + + + @@ -4750,8 +4749,6 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin - - com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -4831,6 +4828,7 @@ com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin + com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin com.apple.InterfaceBuilder.CocoaPlugin @@ -4843,7 +4841,7 @@ - 721 + 752 diff --git a/Strings/ZFLangFile.h b/Strings/ZFLangFile.h index 360645a..25e7175 100644 --- a/Strings/ZFLangFile.h +++ b/Strings/ZFLangFile.h @@ -19,7 +19,7 @@ typedef enum { @property (nonatomic, strong) NSURL *url; @property (nonatomic, strong, readonly) NSString *fileName; @property (nonatomic, assign, readonly) ZFLangType type; -@property (nonatomic, strong, readonly) NSString *language; +@property (nonatomic, strong, readonly) NSString *idiom; @property (nonatomic, strong, readonly) NSArray *allKeys; @property (nonatomic, strong, readonly) NSMutableArray *translations; @property (nonatomic, assign, readonly) BOOL isDirty; diff --git a/Strings/ZFLangFile.m b/Strings/ZFLangFile.m index f15dc35..7f91c2d 100644 --- a/Strings/ZFLangFile.m +++ b/Strings/ZFLangFile.m @@ -36,7 +36,7 @@ - (id)initWithURL:(NSURL *)url { self.url = url; _fileName = [url lastPathComponent]; _type = (isIOS)? ZFLangTypeIOS : ZFLangTypeAndorid; - _language = lang; + _idiom = lang; _isDirty = NO; ZFStringsConverter *converter = [[ZFStringsConverter alloc] init]; @@ -65,7 +65,7 @@ - (id)initWithCouplingLanguage:(ZFLangFile *)langfile { self = [self init]; if (self) { _type = (langfile.type == ZFLangTypeIOS)? ZFLangTypeAndorid : ZFLangTypeIOS; - _language = langfile.language; + _idiom = langfile.idiom; _translations = [langfile.translations mutableCopy]; _isDirty = YES; } @@ -118,7 +118,7 @@ - (void)sortTranslations { } - (NSString *)description { - return [[super description] stringByAppendingFormat:@" %@ %d %@ %ld keys", self.fileName, self.type, self.language, (unsigned long)[self.allKeys count]]; + return [[super description] stringByAppendingFormat:@" %@ %d %@ %ld keys", self.fileName, self.type, self.idiom, (unsigned long)[self.allKeys count]]; } diff --git a/Strings/ZFTranslationFile.h b/Strings/ZFTranslationFile.h index 7a71b62..800e0aa 100644 --- a/Strings/ZFTranslationFile.h +++ b/Strings/ZFTranslationFile.h @@ -27,7 +27,7 @@ typedef enum { @property (nonatomic, strong) NSMutableArray *languages; @property (nonatomic, strong) NSArray *allKeys; -@property (nonatomic, strong) NSArray *allLanguageIdentifiers; +@property (nonatomic, strong) NSArray *allIdioms; @property (nonatomic, strong, readonly) NSURL *rootIOSURL; @property (nonatomic, strong, readonly) NSURL *rootAndroidURL; diff --git a/Strings/ZFTranslationFile.m b/Strings/ZFTranslationFile.m index d537fa4..48d51f3 100644 --- a/Strings/ZFTranslationFile.m +++ b/Strings/ZFTranslationFile.m @@ -129,7 +129,7 @@ - (BOOL)addFileAtURL:(NSURL *)url { [self checkUpNameForLang:lang]; self.allKeys = nil; - self.allLanguageIdentifiers = nil; + self.allIdioms = nil; return YES; } @@ -158,7 +158,7 @@ - (BOOL)mergeWithFile:(ZFTranslationFile *)file { if (lastLang) { self.allKeys = nil; - self.allLanguageIdentifiers = nil; + self.allIdioms = nil; } return (lastLang != nil); @@ -178,7 +178,7 @@ - (void)fillGaps { __block NSInteger iOSLangCount, androidLangCount = 0; [self.languages enumerateObjectsUsingBlock:^(ZFLangFile *lang, NSUInteger idx, BOOL *stop) { - if (![allIdentifiers containsObject:lang.language]) [allIdentifiers addObject:lang.language]; + if (![allIdentifiers containsObject:lang.idiom]) [allIdentifiers addObject:lang.idiom]; [lang.translations enumerateObjectsUsingBlock:^(ZFTranslationLine *line, NSUInteger idx, BOOL *stop) { if ([uniqueLines objectForKey:line.key]) return; [uniqueLines setObject:line forKey:line.key]; @@ -209,7 +209,7 @@ - (void)fillGaps { return [obj1 compare:obj2]; }]; - _allLanguageIdentifiers = [allIdentifiers sortedArrayUsingComparator:^NSComparisonResult(NSString *obj1, NSString *obj2) { + _allIdioms = [allIdentifiers sortedArrayUsingComparator:^NSComparisonResult(NSString *obj1, NSString *obj2) { if ([obj1 isEqualToString:FAV_LANG]) return NSOrderedAscending; else if ([obj2 isEqualToString:FAV_LANG]) return NSOrderedDescending; else return [obj1 compare:obj2]; @@ -221,9 +221,9 @@ - (NSArray *)allKeys { return _allKeys; } -- (NSArray *)allLanguageIdentifiers { - if (!_allLanguageIdentifiers) [self fillGaps]; - return _allLanguageIdentifiers; +- (NSArray *)allIdioms { + if (!_allIdioms) [self fillGaps]; + return _allIdioms; } @@ -243,12 +243,12 @@ - (void)convertURLForLanguage:(ZFLangFile *)langFile fromLangFile:(ZFLangFile *) if (langFile.url) return; if (referenceLangFile.type == ZFLangTypeIOS) { - NSString *dir = [NSString stringWithFormat:ZF_LANG_DIR_ANDROID_, referenceLangFile.language]; + NSString *dir = [NSString stringWithFormat:ZF_LANG_DIR_ANDROID_, referenceLangFile.idiom]; NSString *name = [referenceLangFile.fileName stringByAppendingPathExtension:ZF_LANG_EXTENSION_ANDROID_]; langFile.url = [[self.rootAndroidURL URLByAppendingPathComponent:dir] URLByAppendingPathComponent:name]; } else { - NSString *dir = [NSString stringWithFormat:ZF_LANG_DIR_IOS_, referenceLangFile.language]; + NSString *dir = [NSString stringWithFormat:ZF_LANG_DIR_IOS_, referenceLangFile.idiom]; NSString *name = [referenceLangFile.fileName stringByAppendingPathExtension:ZF_LANG_EXTENSION_IOS_]; langFile.url = [[self.rootIOSURL URLByAppendingPathComponent:dir] URLByAppendingPathComponent:name]; } @@ -312,10 +312,10 @@ - (BOOL)writeAllTranslationsError:(NSError **)error { NSMutableDictionary *couplingLanguages = [NSMutableDictionary dictionary]; [self.languages enumerateObjectsUsingBlock:^(ZFLangFile *obj, NSUInteger idx, BOOL *stop) { - NSMutableDictionary *files = [couplingLanguages objectForKey:obj.language]; + NSMutableDictionary *files = [couplingLanguages objectForKey:obj.idiom]; if (!files) files = [NSMutableDictionary dictionary]; [files setObject:obj forKey:[NSNumber numberWithInt:obj.type]]; - [couplingLanguages setObject:files forKey:obj.language]; + [couplingLanguages setObject:files forKey:obj.idiom]; }]; __block BOOL succeded = YES; @@ -367,7 +367,7 @@ - (BOOL)writeAllTranslationsError:(NSError **)error { */ - (NSArray *)translationsByType:(ZFLangType)type andLanguageIdentifier:(NSString *)identifier { - NSPredicate *predicate = [NSPredicate predicateWithFormat:@"type = %d && language = %@", type, identifier]; + NSPredicate *predicate = [NSPredicate predicateWithFormat:@"type = %d && idiom = %@", type, identifier]; return [self.languages filteredArrayUsingPredicate:predicate]; }