From 818bc908a0de0441669c166c1bf7a1aa3a6b1738 Mon Sep 17 00:00:00 2001 From: Virgil Dupras Date: Fri, 16 Sep 2011 18:01:56 -0400 Subject: [PATCH] [#138] Updated localizations so they include new strings from the pri-dialog. --- cocoa/base/Consts.h | 3 +- cocoa/base/de.lproj/Localizable.strings | 23 ---------- cocoa/base/de.lproj/MainMenu.strings | 3 ++ cocoa/base/de.lproj/PrioritizeDialog.strings | 12 ++++++ cocoa/base/de.lproj/columns.strings | 23 ++++++++++ cocoa/base/de.lproj/core.strings | 10 ++++- cocoa/base/en.lproj/Localizable.strings | 23 ---------- cocoa/base/en.lproj/MainMenu.strings | 3 ++ cocoa/base/en.lproj/PrioritizeDialog.strings | 12 ++++++ cocoa/base/en.lproj/columns.strings | 23 ++++++++++ cocoa/base/en.lproj/core.strings | 10 ++++- cocoa/base/fr.lproj/Localizable.strings | 23 ---------- cocoa/base/fr.lproj/MainMenu.strings | 3 ++ cocoa/base/fr.lproj/PrioritizeDialog.strings | 12 ++++++ cocoa/base/fr.lproj/columns.strings | 23 ++++++++++ cocoa/base/fr.lproj/core.strings | 10 ++++- cocoa/base/zh_CN.lproj/Localizable.strings | 23 ---------- cocoa/base/zh_CN.lproj/MainMenu.strings | 3 ++ .../base/zh_CN.lproj/PrioritizeDialog.strings | 12 ++++++ cocoa/base/zh_CN.lproj/columns.strings | 23 ++++++++++ cocoa/base/zh_CN.lproj/core.strings | 10 ++++- cocoa/me/ResultWindow.m | 34 +++++++-------- cocoa/me/dupeguru.xcodeproj/project.pbxproj | 36 ++++++++++++++++ cocoa/pe/ResultWindow.m | 14 +++---- cocoa/pe/dupeguru.xcodeproj/project.pbxproj | 36 ++++++++++++++++ cocoa/se/ResultWindow.m | 14 +++---- cocoa/se/dupeguru.xcodeproj/project.pbxproj | 24 +++++++++++ core/data.py | 6 +-- core/prioritize.py | 12 +++--- core_me/prioritize.py | 8 ++-- core_pe/prioritize.py | 4 +- core_se/data.py | 4 ++ qt/base/prioritize_dialog.py | 6 +-- qt/base/result_window.py | 2 +- qt/lang/de.ts | 42 +++++++++++++++++++ qt/lang/fr.ts | 42 +++++++++++++++++++ qt/lang/zh.ts | 42 +++++++++++++++++++ 37 files changed, 467 insertions(+), 146 deletions(-) create mode 100644 cocoa/base/de.lproj/PrioritizeDialog.strings create mode 100644 cocoa/base/de.lproj/columns.strings create mode 100644 cocoa/base/en.lproj/PrioritizeDialog.strings create mode 100644 cocoa/base/en.lproj/columns.strings create mode 100644 cocoa/base/fr.lproj/PrioritizeDialog.strings create mode 100644 cocoa/base/fr.lproj/columns.strings create mode 100644 cocoa/base/zh_CN.lproj/PrioritizeDialog.strings create mode 100644 cocoa/base/zh_CN.lproj/columns.strings diff --git a/cocoa/base/Consts.h b/cocoa/base/Consts.h index 27349cea..8c3e5301 100644 --- a/cocoa/base/Consts.h +++ b/cocoa/base/Consts.h @@ -20,4 +20,5 @@ http://www.hardcoded.net/licenses/bsd_license #define DGPrioritizeIndexPasteboardType @"DGPrioritizeIndexPasteboardType" -#define TR(s) NSLocalizedString(s, @"") \ No newline at end of file +#define TR(s) NSLocalizedString(s, @"") +#define TRCOL(s) NSLocalizedStringFromTable(s, @"columns", @"") \ No newline at end of file diff --git a/cocoa/base/de.lproj/Localizable.strings b/cocoa/base/de.lproj/Localizable.strings index 0cc5df78..10239e13 100644 --- a/cocoa/base/de.lproj/Localizable.strings +++ b/cocoa/base/de.lproj/Localizable.strings @@ -8,29 +8,6 @@ "Add iPhoto Library" = "Add iPhoto Library"; "Clear Picture Cache" = "Bildzwischenspeicher leeren"; -/* Columns */ -"Folder" = "Ordner"; -"Size (KB)" = "Größe (KB)"; -"Size (MB)" = "Größe (MB)"; -"Kind" = "Typ"; -"Modification" = "Modifikation"; -"Match %" = "Übereinstimmung %"; -"Words Used" = "Wörter genutzt"; -"Dupe Count" = "Anzahl Duplikate"; - -"Time" = "Zeit"; -"Bitrate" = "Bitrate"; -"Sample Rate" = "Abtastrate"; -"Title" = "Titel"; -"Artist" = "Künstler"; -"Album" = "Album"; -"Genre" = "Genre"; -"Year" = "Jahr"; -"Track Number" = "Stück Nummer"; -"Comment" = "Kommentar"; - -"Dimensions" = "Dimensionen"; - /* Messages */ "SelectResultToLoadMsg" = "Wählen Sie eine Ergebnisliste zum Laden aus."; "SelectCopyDestinationMsg" = "Select a directory to copy marked files to"; diff --git a/cocoa/base/de.lproj/MainMenu.strings b/cocoa/base/de.lproj/MainMenu.strings index cc8d59c3..eb9a3011 100644 --- a/cocoa/base/de.lproj/MainMenu.strings +++ b/cocoa/base/de.lproj/MainMenu.strings @@ -172,3 +172,6 @@ /* Class = "NSMenuItem"; title = "Results Window"; ObjectID = "1272"; */ "1272.title" = "Ergebnisfenster"; + +/* Class = "NSMenuItem"; title = "Re-Prioritize Results"; ObjectID = "1276"; */ +"1276.title" = "Re-Prioritize Results"; diff --git a/cocoa/base/de.lproj/PrioritizeDialog.strings b/cocoa/base/de.lproj/PrioritizeDialog.strings new file mode 100644 index 00000000..82e26868 --- /dev/null +++ b/cocoa/base/de.lproj/PrioritizeDialog.strings @@ -0,0 +1,12 @@ + +/* Class = "NSWindow"; title = "Re-Prioritize duplicates"; ObjectID = "1"; */ +"1.title" = "Re-Prioritize duplicates"; + +/* Class = "NSButtonCell"; title = "Ok"; ObjectID = "37"; */ +"37.title" = "Ok"; + +/* Class = "NSButtonCell"; title = "Cancel"; ObjectID = "39"; */ +"39.title" = "Cancel"; + +/* Class = "NSTextFieldCell"; title = "Add criteria to the right box and click OK to send the dupes that correspond the best to these criteria to their respective group's reference position. Read the help file for more information."; ObjectID = "41"; */ +"41.title" = "Add criteria to the right box and click OK to send the dupes that correspond the best to these criteria to their respective group's reference position. Read the help file for more information."; diff --git a/cocoa/base/de.lproj/columns.strings b/cocoa/base/de.lproj/columns.strings new file mode 100644 index 00000000..6104c870 --- /dev/null +++ b/cocoa/base/de.lproj/columns.strings @@ -0,0 +1,23 @@ +"Filename" = "Filename"; +"Folder" = "Ordner"; +"Size" = "Größe"; +"Size (KB)" = "Größe (KB)"; +"Size (MB)" = "Größe (MB)"; +"Kind" = "Typ"; +"Modification" = "Modifikation"; +"Match %" = "Übereinstimmung %"; +"Words Used" = "Wörter genutzt"; +"Dupe Count" = "Anzahl Duplikate"; + +"Time" = "Zeit"; +"Bitrate" = "Bitrate"; +"Sample Rate" = "Abtastrate"; +"Title" = "Titel"; +"Artist" = "Künstler"; +"Album" = "Album"; +"Genre" = "Genre"; +"Year" = "Jahr"; +"Track Number" = "Stück Nummer"; +"Comment" = "Kommentar"; + +"Dimensions" = "Dimensionen"; \ No newline at end of file diff --git a/cocoa/base/de.lproj/core.strings b/cocoa/base/de.lproj/core.strings index 79c3a40b..3aac6b9c 100644 --- a/cocoa/base/de.lproj/core.strings +++ b/cocoa/base/de.lproj/core.strings @@ -28,4 +28,12 @@ "Scanning the iTunes Library" = "Scanne die iTunes Bibiliothek"; "Probing iPhoto. Don't touch it during the operation!" = "Untersuche iPhoto. Während der Operation nicht anfassen!"; -"Sending dupes to the Trash" = "Verschiebe Duplikate in den Mülleimer"; \ No newline at end of file +"Sending dupes to the Trash" = "Verschiebe Duplikate in den Mülleimer"; + +/* Prioritization */ +"Ends with number" = "Ends with number"; +"Doesn't end with number" = "Doesn't end with number"; +"Highest" = "Highest"; +"Lowest" = "Lowest"; +"Newest" = "Newest"; +"Oldest" = "Oldest"; \ No newline at end of file diff --git a/cocoa/base/en.lproj/Localizable.strings b/cocoa/base/en.lproj/Localizable.strings index a6e16ee4..03f6b9ac 100644 --- a/cocoa/base/en.lproj/Localizable.strings +++ b/cocoa/base/en.lproj/Localizable.strings @@ -8,29 +8,6 @@ "Add iPhoto Library" = "Add iPhoto Library"; "Clear Picture Cache" = "Clear Picture Cache"; -/* Columns */ -"Folder" = "Folder"; -"Size (KB)" = "Size (KB)"; -"Size (MB)" = "Size (MB)"; -"Kind" = "Kind"; -"Modification" = "Modification"; -"Match %" = "Match %"; -"Words Used" = "Words Used"; -"Dupe Count" = "Dupe Count"; - -"Time" = "Time"; -"Bitrate" = "Bitrate"; -"Sample Rate" = "Sample Rate"; -"Title" = "Title"; -"Artist" = "Artist"; -"Album" = "Album"; -"Genre" = "Genre"; -"Year" = "Year"; -"Track Number" = "Track Number"; -"Comment" = "Comment"; - -"Dimensions" = "Dimensions"; - /* Messages */ "SelectResultToLoadMsg" = "Select a results file to load"; "SelectCopyDestinationMsg" = "Select a directory to copy marked files to"; diff --git a/cocoa/base/en.lproj/MainMenu.strings b/cocoa/base/en.lproj/MainMenu.strings index d41fd06e..48327230 100644 --- a/cocoa/base/en.lproj/MainMenu.strings +++ b/cocoa/base/en.lproj/MainMenu.strings @@ -172,3 +172,6 @@ /* Class = "NSMenuItem"; title = "Results Window"; ObjectID = "1272"; */ "1272.title" = "Results Window"; + +/* Class = "NSMenuItem"; title = "Re-Prioritize Results"; ObjectID = "1276"; */ +"1276.title" = "Re-Prioritize Results"; diff --git a/cocoa/base/en.lproj/PrioritizeDialog.strings b/cocoa/base/en.lproj/PrioritizeDialog.strings new file mode 100644 index 00000000..82e26868 --- /dev/null +++ b/cocoa/base/en.lproj/PrioritizeDialog.strings @@ -0,0 +1,12 @@ + +/* Class = "NSWindow"; title = "Re-Prioritize duplicates"; ObjectID = "1"; */ +"1.title" = "Re-Prioritize duplicates"; + +/* Class = "NSButtonCell"; title = "Ok"; ObjectID = "37"; */ +"37.title" = "Ok"; + +/* Class = "NSButtonCell"; title = "Cancel"; ObjectID = "39"; */ +"39.title" = "Cancel"; + +/* Class = "NSTextFieldCell"; title = "Add criteria to the right box and click OK to send the dupes that correspond the best to these criteria to their respective group's reference position. Read the help file for more information."; ObjectID = "41"; */ +"41.title" = "Add criteria to the right box and click OK to send the dupes that correspond the best to these criteria to their respective group's reference position. Read the help file for more information."; diff --git a/cocoa/base/en.lproj/columns.strings b/cocoa/base/en.lproj/columns.strings new file mode 100644 index 00000000..c4607049 --- /dev/null +++ b/cocoa/base/en.lproj/columns.strings @@ -0,0 +1,23 @@ +"Filename" = "Filename"; +"Folder" = "Folder"; +"Size" = "Size"; +"Size (KB)" = "Size (KB)"; +"Size (MB)" = "Size (MB)"; +"Kind" = "Kind"; +"Modification" = "Modification"; +"Match %" = "Match %"; +"Words Used" = "Words Used"; +"Dupe Count" = "Dupe Count"; + +"Time" = "Time"; +"Bitrate" = "Bitrate"; +"Sample Rate" = "Sample Rate"; +"Title" = "Title"; +"Artist" = "Artist"; +"Album" = "Album"; +"Genre" = "Genre"; +"Year" = "Year"; +"Track Number" = "Track Number"; +"Comment" = "Comment"; + +"Dimensions" = "Dimensions"; \ No newline at end of file diff --git a/cocoa/base/en.lproj/core.strings b/cocoa/base/en.lproj/core.strings index c2fd6199..13e9d291 100644 --- a/cocoa/base/en.lproj/core.strings +++ b/cocoa/base/en.lproj/core.strings @@ -28,4 +28,12 @@ "Scanning the iTunes Library" = "Scanning the iTunes Library"; "Probing iPhoto. Don't touch it during the operation!" = "Probing iPhoto. Don't touch it during the operation!"; -"Sending dupes to the Trash" = "Sending dupes to the Trash"; \ No newline at end of file +"Sending dupes to the Trash" = "Sending dupes to the Trash"; + +/* Prioritization */ +"Ends with number" = "Ends with number"; +"Doesn't end with number" = "Doesn't end with number"; +"Highest" = "Highest"; +"Lowest" = "Lowest"; +"Newest" = "Newest"; +"Oldest" = "Oldest"; diff --git a/cocoa/base/fr.lproj/Localizable.strings b/cocoa/base/fr.lproj/Localizable.strings index 898bc9f9..688f5f43 100644 --- a/cocoa/base/fr.lproj/Localizable.strings +++ b/cocoa/base/fr.lproj/Localizable.strings @@ -8,29 +8,6 @@ "Add iPhoto Library" = "Ajouter librairie iPhoto"; "Clear Picture Cache" = "Vider la cache d'images"; -/* Columns */ -"Folder" = "Dossier"; -"Size (KB)" = "Taille (KB)"; -"Size (MB)" = "Taille (MB)"; -"Kind" = "Type"; -"Modification" = "Modification"; -"Match %" = "Match %"; -"Words Used" = "Mots"; -"Dupe Count" = "# Doublons"; - -"Time" = "Temps"; -"Bitrate" = "Bitrate"; -"Sample Rate" = "Sample Rate"; -"Title" = "Titre"; -"Artist" = "Artiste"; -"Album" = "Album"; -"Genre" = "Genre"; -"Year" = "Année"; -"Track Number" = "Track"; -"Comment" = "Commentaire"; - -"Dimensions" = "Dimensions"; - /* Messages */ "SelectResultToLoadMsg" = "Sélectionnez un fichier résultats à charger"; "SelectCopyDestinationMsg" = "Sélectionnez un dossier vers lequel copier les fichiers"; diff --git a/cocoa/base/fr.lproj/MainMenu.strings b/cocoa/base/fr.lproj/MainMenu.strings index bc4d2347..d6ada852 100644 --- a/cocoa/base/fr.lproj/MainMenu.strings +++ b/cocoa/base/fr.lproj/MainMenu.strings @@ -172,3 +172,6 @@ /* Class = "NSMenuItem"; title = "Results Window"; ObjectID = "1272"; */ "1272.title" = "Fenêtre de résultats"; + +/* Class = "NSMenuItem"; title = "Re-Prioritize Results"; ObjectID = "1276"; */ +"1276.title" = "Re-prioriser les résultats"; diff --git a/cocoa/base/fr.lproj/PrioritizeDialog.strings b/cocoa/base/fr.lproj/PrioritizeDialog.strings new file mode 100644 index 00000000..c14f6a2f --- /dev/null +++ b/cocoa/base/fr.lproj/PrioritizeDialog.strings @@ -0,0 +1,12 @@ + +/* Class = "NSWindow"; title = "Re-Prioritize duplicates"; ObjectID = "1"; */ +"1.title" = "Re-prioriser les doublons"; + +/* Class = "NSButtonCell"; title = "Ok"; ObjectID = "37"; */ +"37.title" = "Ok"; + +/* Class = "NSButtonCell"; title = "Cancel"; ObjectID = "39"; */ +"39.title" = "Annuler"; + +/* Class = "NSTextFieldCell"; title = "Add criteria to the right box and click OK to send the dupes that correspond the best to these criteria to their respective group's reference position. Read the help file for more information."; ObjectID = "41"; */ +"41.title" = "Ajoutez des critères dans la liste de droite pour envoyer les doublons qui correspondent le plus à ces critère à la position de référence. Une lecture préalable du fichier d'aide est conseillée."; diff --git a/cocoa/base/fr.lproj/columns.strings b/cocoa/base/fr.lproj/columns.strings new file mode 100644 index 00000000..25b40c09 --- /dev/null +++ b/cocoa/base/fr.lproj/columns.strings @@ -0,0 +1,23 @@ +"Filename" = "Nom de fichier"; +"Folder" = "Dossier"; +"Size" = "Taille"; +"Size (KB)" = "Taille (KB)"; +"Size (MB)" = "Taille (MB)"; +"Kind" = "Type"; +"Modification" = "Modification"; +"Match %" = "Match %"; +"Words Used" = "Mots"; +"Dupe Count" = "# Doublons"; + +"Time" = "Temps"; +"Bitrate" = "Bitrate"; +"Sample Rate" = "Sample Rate"; +"Title" = "Titre"; +"Artist" = "Artiste"; +"Album" = "Album"; +"Genre" = "Genre"; +"Year" = "Année"; +"Track Number" = "Track"; +"Comment" = "Commentaire"; + +"Dimensions" = "Dimensions"; \ No newline at end of file diff --git a/cocoa/base/fr.lproj/core.strings b/cocoa/base/fr.lproj/core.strings index 9c9067e0..4d099c1a 100644 --- a/cocoa/base/fr.lproj/core.strings +++ b/cocoa/base/fr.lproj/core.strings @@ -28,4 +28,12 @@ "Scanning the iTunes Library" = "Scan de la librairie iTunes en cours"; "Probing iPhoto. Don't touch it during the operation!" = "Communication avec iPhoto en cours. N'y touchez pas!"; -"Sending dupes to the Trash" = "Envoi de doublons à la corbeille en cours"; \ No newline at end of file +"Sending dupes to the Trash" = "Envoi de doublons à la corbeille en cours"; + +/* Prioritization */ +"Ends with number" = "Chiffres à la fin"; +"Doesn't end with number" = "Pas de chiffres à la finr"; +"Highest" = "Plus grand"; +"Lowest" = "Moins grand"; +"Newest" = "Plus récent"; +"Oldest" = "Moins récent"; diff --git a/cocoa/base/zh_CN.lproj/Localizable.strings b/cocoa/base/zh_CN.lproj/Localizable.strings index 7409a7db..4fcabd95 100644 --- a/cocoa/base/zh_CN.lproj/Localizable.strings +++ b/cocoa/base/zh_CN.lproj/Localizable.strings @@ -8,29 +8,6 @@ "Add iPhoto Library" = "Add iPhoto Library"; "Clear Picture Cache" = "清空图片缓存"; -/* Columns */ -"Folder" = "文件夹"; -"Size (KB)" = "大小 (KB)"; -"Size (MB)" = "大小 (MB)"; -"Kind" = "类型"; -"Modification" = "编辑日期"; -"Match %" = "匹配度 %"; -"Words Used" = "使用过的词语"; -"Dupe Count" = "重复文件数"; - -"Time" = "时间"; -"Bitrate" = "比特"; -"Sample Rate" = "采样率"; -"Title" = "歌曲名"; -"Artist" = "演唱者"; -"Album" = "专辑"; -"Genre" = "音乐类型"; -"Year" = "年"; -"Track Number" = "音轨号"; -"Comment" = "注释"; - -"Dimensions" = "规格"; - /* Messages */ "SelectResultToLoadMsg" = "选择一个结果文件并载入"; "SelectCopyDestinationMsg" = "Select a directory to copy marked files to"; diff --git a/cocoa/base/zh_CN.lproj/MainMenu.strings b/cocoa/base/zh_CN.lproj/MainMenu.strings index ef3645c1..409a8f14 100644 --- a/cocoa/base/zh_CN.lproj/MainMenu.strings +++ b/cocoa/base/zh_CN.lproj/MainMenu.strings @@ -172,3 +172,6 @@ /* Class = "NSMenuItem"; title = "Results Window"; ObjectID = "1272"; */ "1272.title" = "结果窗口"; + +/* Class = "NSMenuItem"; title = "Re-Prioritize Results"; ObjectID = "1276"; */ +"1276.title" = "Re-Prioritize Results"; diff --git a/cocoa/base/zh_CN.lproj/PrioritizeDialog.strings b/cocoa/base/zh_CN.lproj/PrioritizeDialog.strings new file mode 100644 index 00000000..82e26868 --- /dev/null +++ b/cocoa/base/zh_CN.lproj/PrioritizeDialog.strings @@ -0,0 +1,12 @@ + +/* Class = "NSWindow"; title = "Re-Prioritize duplicates"; ObjectID = "1"; */ +"1.title" = "Re-Prioritize duplicates"; + +/* Class = "NSButtonCell"; title = "Ok"; ObjectID = "37"; */ +"37.title" = "Ok"; + +/* Class = "NSButtonCell"; title = "Cancel"; ObjectID = "39"; */ +"39.title" = "Cancel"; + +/* Class = "NSTextFieldCell"; title = "Add criteria to the right box and click OK to send the dupes that correspond the best to these criteria to their respective group's reference position. Read the help file for more information."; ObjectID = "41"; */ +"41.title" = "Add criteria to the right box and click OK to send the dupes that correspond the best to these criteria to their respective group's reference position. Read the help file for more information."; diff --git a/cocoa/base/zh_CN.lproj/columns.strings b/cocoa/base/zh_CN.lproj/columns.strings new file mode 100644 index 00000000..8cdf91aa --- /dev/null +++ b/cocoa/base/zh_CN.lproj/columns.strings @@ -0,0 +1,23 @@ +"Filename" = "Filename"; +"Folder" = "文件夹"; +"Size" = "大小"; +"Size (KB)" = "大小 (KB)"; +"Size (MB)" = "大小 (MB)"; +"Kind" = "类型"; +"Modification" = "编辑日期"; +"Match %" = "匹配度 %"; +"Words Used" = "使用过的词语"; +"Dupe Count" = "重复文件数"; + +"Time" = "时间"; +"Bitrate" = "比特"; +"Sample Rate" = "采样率"; +"Title" = "歌曲名"; +"Artist" = "演唱者"; +"Album" = "专辑"; +"Genre" = "音乐类型"; +"Year" = "年"; +"Track Number" = "音轨号"; +"Comment" = "注释"; + +"Dimensions" = "规格"; \ No newline at end of file diff --git a/cocoa/base/zh_CN.lproj/core.strings b/cocoa/base/zh_CN.lproj/core.strings index 0f448866..69b86d21 100644 --- a/cocoa/base/zh_CN.lproj/core.strings +++ b/cocoa/base/zh_CN.lproj/core.strings @@ -28,4 +28,12 @@ "Scanning the iTunes Library" = "正在扫描iTunes库"; "Probing iPhoto. Don't touch it during the operation!" = "正在对iPhoto进行搜索.请在此过程中不要触碰任何按键!"; -"Sending dupes to the Trash" = "将重复文件移到垃圾桶"; \ No newline at end of file +"Sending dupes to the Trash" = "将重复文件移到垃圾桶"; + +/* Prioritization */ +"Ends with number" = "Ends with number"; +"Doesn't end with number" = "Doesn't end with number"; +"Highest" = "Highest"; +"Lowest" = "Lowest"; +"Newest" = "Newest"; +"Oldest" = "Oldest"; \ No newline at end of file diff --git a/cocoa/me/ResultWindow.m b/cocoa/me/ResultWindow.m index 7adc044f..94a2af37 100644 --- a/cocoa/me/ResultWindow.m +++ b/cocoa/me/ResultWindow.m @@ -37,29 +37,29 @@ http://www.hardcoded.net/licenses/bsd_license NSTableColumn *refCol = [matches tableColumnWithIdentifier:@"0"]; _resultColumns = [[NSMutableArray alloc] init]; [_resultColumns addObject:[matches tableColumnWithIdentifier:@"0"]]; // File Name - [_resultColumns addObject:[self getColumnForIdentifier:1 title:TR(@"Folder") width:120 refCol:refCol]]; - NSTableColumn *sizeCol = [self getColumnForIdentifier:2 title:TR(@"Size (MB)") width:63 refCol:refCol]; + [_resultColumns addObject:[self getColumnForIdentifier:1 title:TRCOL(@"Folder") width:120 refCol:refCol]]; + NSTableColumn *sizeCol = [self getColumnForIdentifier:2 title:TRCOL(@"Size (MB)") width:63 refCol:refCol]; [[sizeCol dataCell] setAlignment:NSRightTextAlignment]; [_resultColumns addObject:sizeCol]; - NSTableColumn *timeCol = [self getColumnForIdentifier:3 title:TR(@"Time") width:50 refCol:refCol]; + NSTableColumn *timeCol = [self getColumnForIdentifier:3 title:TRCOL(@"Time") width:50 refCol:refCol]; [[timeCol dataCell] setAlignment:NSRightTextAlignment]; [_resultColumns addObject:timeCol]; - NSTableColumn *brCol = [self getColumnForIdentifier:4 title:TR(@"Bitrate") width:50 refCol:refCol]; + NSTableColumn *brCol = [self getColumnForIdentifier:4 title:TRCOL(@"Bitrate") width:50 refCol:refCol]; [[brCol dataCell] setAlignment:NSRightTextAlignment]; [_resultColumns addObject:brCol]; - [_resultColumns addObject:[self getColumnForIdentifier:5 title:TR(@"Sample Rate") width:60 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:6 title:TR(@"Kind") width:40 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:7 title:TR(@"Modification") width:120 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:8 title:TR(@"Title") width:120 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:9 title:TR(@"Artist") width:120 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:10 title:TR(@"Album") width:120 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:11 title:TR(@"Genre") width:80 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:12 title:TR(@"Year") width:40 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:13 title:TR(@"Track Number") width:40 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:14 title:TR(@"Comment") width:120 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:15 title:TR(@"Match %") width:57 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:16 title:TR(@"Words Used") width:120 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:17 title:TR(@"Dupe Count") width:80 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:5 title:TRCOL(@"Sample Rate") width:60 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:6 title:TRCOL(@"Kind") width:40 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:7 title:TRCOL(@"Modification") width:120 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:8 title:TRCOL(@"Title") width:120 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:9 title:TRCOL(@"Artist") width:120 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:10 title:TRCOL(@"Album") width:120 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:11 title:TRCOL(@"Genre") width:80 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:12 title:TRCOL(@"Year") width:40 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:13 title:TRCOL(@"Track Number") width:40 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:14 title:TRCOL(@"Comment") width:120 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:15 title:TRCOL(@"Match %") width:57 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:16 title:TRCOL(@"Words Used") width:120 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:17 title:TRCOL(@"Dupe Count") width:80 refCol:refCol]]; } /* Actions */ diff --git a/cocoa/me/dupeguru.xcodeproj/project.pbxproj b/cocoa/me/dupeguru.xcodeproj/project.pbxproj index 8fd0bc2a..416752d0 100644 --- a/cocoa/me/dupeguru.xcodeproj/project.pbxproj +++ b/cocoa/me/dupeguru.xcodeproj/project.pbxproj @@ -71,6 +71,13 @@ CEB14D29124DFC2800FA7481 /* ResultTable.m in Sources */ = {isa = PBXBuildFile; fileRef = CEB14D28124DFC2800FA7481 /* ResultTable.m */; }; CEB5E07813225C89009F521D /* ExtraFairwareReminder.m in Sources */ = {isa = PBXBuildFile; fileRef = CEB5E07613225C89009F521D /* ExtraFairwareReminder.m */; }; CEB5E07D13225CA2009F521D /* ExtraFairwareReminder.xib in Resources */ = {isa = PBXBuildFile; fileRef = CEB5E07B13225CA2009F521D /* ExtraFairwareReminder.xib */; }; + CEC481F21423FBC600034F91 /* columns.strings in Resources */ = {isa = PBXBuildFile; fileRef = CEC481ED1423FBC600034F91 /* columns.strings */; }; + CEC481F31423FBC600034F91 /* help in Resources */ = {isa = PBXBuildFile; fileRef = CE073F5409CAE1A3005C1D2F /* help */; }; + CEC481F41423FBC600034F91 /* dg_cocoa.plugin in Resources */ = {isa = PBXBuildFile; fileRef = CE381CF509915304003581CE /* dg_cocoa.plugin */; }; + CEC481F51423FBC600034F91 /* folder32.png in Resources */ = {isa = PBXBuildFile; fileRef = CEFC294509C89E3D00D9F998 /* folder32.png */; }; + CECE37A61423EA980005187F /* DetailsPanel.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE05330D12E5D3ED0029EF25 /* DetailsPanel.xib */; }; + CECE37A71423EA980005187F /* DirectoryPanel.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE05330F12E5D3ED0029EF25 /* DirectoryPanel.xib */; }; + CECE37A81423EA980005187F /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE05331112E5D3ED0029EF25 /* MainMenu.xib */; }; CEDF07A3112493B200EE5BC0 /* StatsLabel.m in Sources */ = {isa = PBXBuildFile; fileRef = CEDF07A2112493B200EE5BC0 /* StatsLabel.m */; }; CEEB135209C837A2004D2330 /* dupeguru.icns in Resources */ = {isa = PBXBuildFile; fileRef = CEEB135109C837A2004D2330 /* dupeguru.icns */; }; CEF3185913D8660000B8CDCA /* about.xib in Resources */ = {isa = PBXBuildFile; fileRef = CEF3185513D8660000B8CDCA /* about.xib */; }; @@ -207,6 +214,10 @@ CEB5E07713225C89009F521D /* PyExtraFairwareReminder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyExtraFairwareReminder.h; path = ../base/PyExtraFairwareReminder.h; sourceTree = SOURCE_ROOT; }; CEB5E07C13225CA2009F521D /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../base/en.lproj/ExtraFairwareReminder.xib; sourceTree = SOURCE_ROOT; }; CEB5E07E13225CB8009F521D /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../base/fr.lproj/ExtraFairwareReminder.xib; sourceTree = SOURCE_ROOT; }; + CEC481EE1423FBC600034F91 /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = ../base/de.lproj/columns.strings; sourceTree = ""; }; + CEC481EF1423FBC600034F91 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = ../base/en.lproj/columns.strings; sourceTree = ""; }; + CEC481F01423FBC600034F91 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = ../base/fr.lproj/columns.strings; sourceTree = ""; }; + CEC481F11423FBC600034F91 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = zh_CN; path = ../base/zh_CN.lproj/columns.strings; sourceTree = ""; }; CEC8F3091416A0D2004D28F3 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../zh_CN.lproj/about.xib; sourceTree = ""; }; CEC8F30A1416A0D2004D28F3 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../zh_CN.lproj/ErrorReportWindow.xib; sourceTree = ""; }; CEC8F30B1416A0D2004D28F3 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../zh_CN.lproj/FairwareReminder.xib; sourceTree = ""; }; @@ -219,6 +230,9 @@ CEC8F3181416A0FC004D28F3 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../base/zh_CN.lproj/ProblemDialog.xib; sourceTree = ""; }; CEC8F3191416A0FC004D28F3 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../base/zh_CN.lproj/ResultWindow.xib; sourceTree = ""; }; CEC8F3201416A109004D28F3 /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = zh_CN.lproj/Preferences.xib; sourceTree = ""; }; + CECE37A31423EA980005187F /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/PrioritizeDialog.xib; sourceTree = ""; }; + CECE37A41423EA980005187F /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../base/fr.lproj/PrioritizeDialog.xib; sourceTree = ""; }; + CECE37A51423EA980005187F /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../base/zh_CN.lproj/PrioritizeDialog.xib; sourceTree = ""; }; CED0A591111C9FD10020AD7D /* PyDetailsPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyDetailsPanel.h; path = ../base/PyDetailsPanel.h; sourceTree = SOURCE_ROOT; }; CEDF07A0112493B200EE5BC0 /* PyStatsLabel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyStatsLabel.h; path = ../base/PyStatsLabel.h; sourceTree = SOURCE_ROOT; }; CEDF07A1112493B200EE5BC0 /* StatsLabel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = StatsLabel.h; path = ../base/StatsLabel.h; sourceTree = SOURCE_ROOT; }; @@ -320,6 +334,7 @@ CE05330C12E5D3D70029EF25 /* xib */, CEEB135109C837A2004D2330 /* dupeguru.icns */, CE05332D12E5D6100029EF25 /* Localizable.strings */, + CEC481ED1423FBC600034F91 /* columns.strings */, CE45274D12E5F62D00005A15 /* core.strings */, 8D1107310486CEB800E47090 /* Info.plist */, CE6E0E9E1054EB97008D9390 /* dsa_pub.pem */, @@ -567,6 +582,13 @@ CEF3185913D8660000B8CDCA /* about.xib in Resources */, CEF3185A13D8660000B8CDCA /* ErrorReportWindow.xib in Resources */, CE84C9BD1423AF200050A6AD /* PrioritizeDialog.xib in Resources */, + CECE37A61423EA980005187F /* DetailsPanel.xib in Resources */, + CECE37A71423EA980005187F /* DirectoryPanel.xib in Resources */, + CECE37A81423EA980005187F /* MainMenu.xib in Resources */, + CEC481F21423FBC600034F91 /* columns.strings in Resources */, + CEC481F31423FBC600034F91 /* help in Resources */, + CEC481F41423FBC600034F91 /* dg_cocoa.plugin in Resources */, + CEC481F51423FBC600034F91 /* folder32.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -721,6 +743,9 @@ isa = PBXVariantGroup; children = ( CE84C9BC1423AF200050A6AD /* en */, + CECE37A31423EA980005187F /* de */, + CECE37A41423EA980005187F /* fr */, + CECE37A51423EA980005187F /* zh_CN */, ); name = PrioritizeDialog.xib; sourceTree = ""; @@ -736,6 +761,17 @@ name = ExtraFairwareReminder.xib; sourceTree = SOURCE_ROOT; }; + CEC481ED1423FBC600034F91 /* columns.strings */ = { + isa = PBXVariantGroup; + children = ( + CEC481EE1423FBC600034F91 /* de */, + CEC481EF1423FBC600034F91 /* en */, + CEC481F01423FBC600034F91 /* fr */, + CEC481F11423FBC600034F91 /* zh_CN */, + ); + name = columns.strings; + sourceTree = ""; + }; CEF3185513D8660000B8CDCA /* about.xib */ = { isa = PBXVariantGroup; children = ( diff --git a/cocoa/pe/ResultWindow.m b/cocoa/pe/ResultWindow.m index 7ff41d86..83decdc6 100644 --- a/cocoa/pe/ResultWindow.m +++ b/cocoa/pe/ResultWindow.m @@ -19,15 +19,15 @@ http://www.hardcoded.net/licenses/bsd_license NSTableColumn *refCol = [matches tableColumnWithIdentifier:@"0"]; _resultColumns = [[NSMutableArray alloc] init]; [_resultColumns addObject:[matches tableColumnWithIdentifier:@"0"]]; // File Name - [_resultColumns addObject:[self getColumnForIdentifier:1 title:TR(@"Folder") width:120 refCol:refCol]]; - NSTableColumn *sizeCol = [self getColumnForIdentifier:2 title:TR(@"Size (KB)") width:63 refCol:refCol]; + [_resultColumns addObject:[self getColumnForIdentifier:1 title:TRCOL(@"Folder") width:120 refCol:refCol]]; + NSTableColumn *sizeCol = [self getColumnForIdentifier:2 title:TRCOL(@"Size (KB)") width:63 refCol:refCol]; [[sizeCol dataCell] setAlignment:NSRightTextAlignment]; [_resultColumns addObject:sizeCol]; - [_resultColumns addObject:[self getColumnForIdentifier:3 title:TR(@"Kind") width:40 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:4 title:TR(@"Dimensions") width:80 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:5 title:TR(@"Modification") width:120 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:6 title:TR(@"Match %") width:58 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:7 title:TR(@"Dupe Count") width:80 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:3 title:TRCOL(@"Kind") width:40 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:4 title:TRCOL(@"Dimensions") width:80 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:5 title:TRCOL(@"Modification") width:120 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:6 title:TRCOL(@"Match %") width:58 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:7 title:TRCOL(@"Dupe Count") width:80 refCol:refCol]]; } - (void)setScanOptions diff --git a/cocoa/pe/dupeguru.xcodeproj/project.pbxproj b/cocoa/pe/dupeguru.xcodeproj/project.pbxproj index b2f9975f..e3dd40ae 100644 --- a/cocoa/pe/dupeguru.xcodeproj/project.pbxproj +++ b/cocoa/pe/dupeguru.xcodeproj/project.pbxproj @@ -23,12 +23,19 @@ CE15C8C00ADEB8D40061D4A5 /* Sparkle.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = CE15C8A70ADEB8B50061D4A5 /* Sparkle.framework */; }; CE1EB5FE12537F9D0034AABB /* HSFairwareReminder.m in Sources */ = {isa = PBXBuildFile; fileRef = CE1EB5FC12537F9D0034AABB /* HSFairwareReminder.m */; }; CE1EB60112537FB90034AABB /* FairwareReminder.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE1EB5FF12537FB90034AABB /* FairwareReminder.xib */; }; + CE21AFB91423EA6E00DE35BF /* DirectoryPanel.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE05339312E5DA350029EF25 /* DirectoryPanel.xib */; }; + CE21AFBA1423EA6E00DE35BF /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE05339512E5DA350029EF25 /* MainMenu.xib */; }; + CE21AFBB1423EA6E00DE35BF /* ProblemDialog.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE05339712E5DA350029EF25 /* ProblemDialog.xib */; }; CE2A29F413213BE3005899AC /* ExtraFairwareReminder.m in Sources */ = {isa = PBXBuildFile; fileRef = CE2A29F313213BE3005899AC /* ExtraFairwareReminder.m */; }; CE2A29F713213BFB005899AC /* ExtraFairwareReminder.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE2A29F513213BFB005899AC /* ExtraFairwareReminder.xib */; }; CE381C9609914ACE003581CE /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = CE381C9409914ACE003581CE /* AppDelegate.m */; }; CE381C9C09914ADF003581CE /* ResultWindow.m in Sources */ = {isa = PBXBuildFile; fileRef = CE381C9A09914ADF003581CE /* ResultWindow.m */; }; CE381D0509915304003581CE /* dg_cocoa.plugin in Resources */ = {isa = PBXBuildFile; fileRef = CE381CF509915304003581CE /* dg_cocoa.plugin */; }; CE4527AC12E5F6E700005A15 /* core.strings in Resources */ = {isa = PBXBuildFile; fileRef = CE4527AA12E5F6E700005A15 /* core.strings */; }; + CE54EB8D1423FBA200E3383A /* columns.strings in Resources */ = {isa = PBXBuildFile; fileRef = CE54EB881423FBA200E3383A /* columns.strings */; }; + CE54EB8E1423FBA200E3383A /* help in Resources */ = {isa = PBXBuildFile; fileRef = CE073F5409CAE1A3005C1D2F /* help */; }; + CE54EB8F1423FBA200E3383A /* dg_cocoa.plugin in Resources */ = {isa = PBXBuildFile; fileRef = CE381CF509915304003581CE /* dg_cocoa.plugin */; }; + CE54EB901423FBA200E3383A /* folder32.png in Resources */ = {isa = PBXBuildFile; fileRef = CEFC294509C89E3D00D9F998 /* folder32.png */; }; CE60180812DF3EA900236FDC /* HSRecentFiles.m in Sources */ = {isa = PBXBuildFile; fileRef = CE60180712DF3EA900236FDC /* HSRecentFiles.m */; }; CE6044EC0FE6796200B71262 /* DetailsPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = CE6044EB0FE6796200B71262 /* DetailsPanel.m */; }; CE68EE6809ABC48000971085 /* DirectoryPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = CE68EE6609ABC48000971085 /* DirectoryPanel.m */; }; @@ -121,6 +128,9 @@ CE1EB5FC12537F9D0034AABB /* HSFairwareReminder.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = HSFairwareReminder.m; path = ../../cocoalib/HSFairwareReminder.m; sourceTree = SOURCE_ROOT; }; CE1EB5FD12537F9D0034AABB /* PyFairware.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = PyFairware.h; path = ../../cocoalib/PyFairware.h; sourceTree = SOURCE_ROOT; }; CE1EB60012537FB90034AABB /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../../cocoalib/en.lproj/FairwareReminder.xib; sourceTree = SOURCE_ROOT; }; + CE21AFB61423EA6E00DE35BF /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/PrioritizeDialog.xib; sourceTree = ""; }; + CE21AFB71423EA6E00DE35BF /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../base/fr.lproj/PrioritizeDialog.xib; sourceTree = ""; }; + CE21AFB81423EA6E00DE35BF /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../base/zh_CN.lproj/PrioritizeDialog.xib; sourceTree = ""; }; CE2A29F213213BE3005899AC /* ExtraFairwareReminder.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ExtraFairwareReminder.h; path = ../base/ExtraFairwareReminder.h; sourceTree = SOURCE_ROOT; }; CE2A29F313213BE3005899AC /* ExtraFairwareReminder.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ExtraFairwareReminder.m; path = ../base/ExtraFairwareReminder.m; sourceTree = SOURCE_ROOT; }; CE2A29F613213BFB005899AC /* en */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = en; path = ../base/en.lproj/ExtraFairwareReminder.xib; sourceTree = SOURCE_ROOT; }; @@ -132,6 +142,10 @@ CE381CF509915304003581CE /* dg_cocoa.plugin */ = {isa = PBXFileReference; lastKnownFileType = folder; path = dg_cocoa.plugin; sourceTree = SOURCE_ROOT; }; CE4527AB12E5F6E700005A15 /* en */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = en; path = ../base/en.lproj/core.strings; sourceTree = SOURCE_ROOT; }; CE4527B012E5F72600005A15 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = ../base/fr.lproj/core.strings; sourceTree = SOURCE_ROOT; }; + CE54EB891423FBA200E3383A /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = ../base/de.lproj/columns.strings; sourceTree = ""; }; + CE54EB8A1423FBA200E3383A /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = ../base/en.lproj/columns.strings; sourceTree = ""; }; + CE54EB8B1423FBA200E3383A /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = ../base/fr.lproj/columns.strings; sourceTree = ""; }; + CE54EB8C1423FBA200E3383A /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = zh_CN; path = ../base/zh_CN.lproj/columns.strings; sourceTree = ""; }; CE60180612DF3EA900236FDC /* HSRecentFiles.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HSRecentFiles.h; path = ../../cocoalib/HSRecentFiles.h; sourceTree = SOURCE_ROOT; }; CE60180712DF3EA900236FDC /* HSRecentFiles.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = HSRecentFiles.m; path = ../../cocoalib/HSRecentFiles.m; sourceTree = SOURCE_ROOT; }; CE6044EA0FE6796200B71262 /* DetailsPanel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = DetailsPanel.h; path = ../base/DetailsPanel.h; sourceTree = SOURCE_ROOT; }; @@ -322,6 +336,7 @@ CEEB135109C837A2004D2330 /* dupeguru.icns */, 8D1107310486CEB800E47090 /* Info.plist */, CE0533A912E5DA6A0029EF25 /* Localizable.strings */, + CE54EB881423FBA200E3383A /* columns.strings */, CE4527AA12E5F6E700005A15 /* core.strings */, CE6E0F3C1054EC62008D9390 /* dsa_pub.pem */, ); @@ -571,6 +586,13 @@ CECB2AC513D867AD0081E295 /* about.xib in Resources */, CECB2AC613D867AD0081E295 /* ErrorReportWindow.xib in Resources */, CE7D24A91423B123002E2297 /* PrioritizeDialog.xib in Resources */, + CE21AFB91423EA6E00DE35BF /* DirectoryPanel.xib in Resources */, + CE21AFBA1423EA6E00DE35BF /* MainMenu.xib in Resources */, + CE21AFBB1423EA6E00DE35BF /* ProblemDialog.xib in Resources */, + CE54EB8D1423FBA200E3383A /* columns.strings in Resources */, + CE54EB8E1423FBA200E3383A /* help in Resources */, + CE54EB8F1423FBA200E3383A /* dg_cocoa.plugin in Resources */, + CE54EB901423FBA200E3383A /* folder32.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -735,10 +757,24 @@ name = core.strings; sourceTree = SOURCE_ROOT; }; + CE54EB881423FBA200E3383A /* columns.strings */ = { + isa = PBXVariantGroup; + children = ( + CE54EB891423FBA200E3383A /* de */, + CE54EB8A1423FBA200E3383A /* en */, + CE54EB8B1423FBA200E3383A /* fr */, + CE54EB8C1423FBA200E3383A /* zh_CN */, + ); + name = columns.strings; + sourceTree = ""; + }; CE7D24A71423B123002E2297 /* PrioritizeDialog.xib */ = { isa = PBXVariantGroup; children = ( CE7D24A81423B123002E2297 /* en */, + CE21AFB61423EA6E00DE35BF /* de */, + CE21AFB71423EA6E00DE35BF /* fr */, + CE21AFB81423EA6E00DE35BF /* zh_CN */, ); name = PrioritizeDialog.xib; sourceTree = ""; diff --git a/cocoa/se/ResultWindow.m b/cocoa/se/ResultWindow.m index cefeffa0..838947c3 100644 --- a/cocoa/se/ResultWindow.m +++ b/cocoa/se/ResultWindow.m @@ -18,15 +18,15 @@ http://www.hardcoded.net/licenses/bsd_license NSTableColumn *refCol = [matches tableColumnWithIdentifier:@"0"]; _resultColumns = [[NSMutableArray alloc] init]; [_resultColumns addObject:[matches tableColumnWithIdentifier:@"0"]]; // File Name - [_resultColumns addObject:[self getColumnForIdentifier:1 title:TR(@"Folder") width:120 refCol:refCol]]; - NSTableColumn *sizeCol = [self getColumnForIdentifier:2 title:TR(@"Size (KB)") width:63 refCol:refCol]; + [_resultColumns addObject:[self getColumnForIdentifier:1 title:TRCOL(@"Folder") width:120 refCol:refCol]]; + NSTableColumn *sizeCol = [self getColumnForIdentifier:2 title:TRCOL(@"Size (KB)") width:63 refCol:refCol]; [[sizeCol dataCell] setAlignment:NSRightTextAlignment]; [_resultColumns addObject:sizeCol]; - [_resultColumns addObject:[self getColumnForIdentifier:3 title:TR(@"Kind") width:40 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:4 title:TR(@"Modification") width:120 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:5 title:TR(@"Match %") width:60 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:6 title:TR(@"Words Used") width:120 refCol:refCol]]; - [_resultColumns addObject:[self getColumnForIdentifier:7 title:TR(@"Dupe Count") width:80 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:3 title:TRCOL(@"Kind") width:40 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:4 title:TRCOL(@"Modification") width:120 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:5 title:TRCOL(@"Match %") width:60 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:6 title:TRCOL(@"Words Used") width:120 refCol:refCol]]; + [_resultColumns addObject:[self getColumnForIdentifier:7 title:TRCOL(@"Dupe Count") width:80 refCol:refCol]]; } - (void)setScanOptions diff --git a/cocoa/se/dupeguru.xcodeproj/project.pbxproj b/cocoa/se/dupeguru.xcodeproj/project.pbxproj index bb47b0cb..a13e145f 100644 --- a/cocoa/se/dupeguru.xcodeproj/project.pbxproj +++ b/cocoa/se/dupeguru.xcodeproj/project.pbxproj @@ -49,6 +49,7 @@ CE9777CD141F8C2500C13FB5 /* PrioritizeDialog.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9777CC141F8C2500C13FB5 /* PrioritizeDialog.m */; }; CE9777D1141F8CB400C13FB5 /* PrioritizeDialog.xib in Resources */ = {isa = PBXBuildFile; fileRef = CE9777CF141F8CB400C13FB5 /* PrioritizeDialog.xib */; }; CE9777D5141F9D7600C13FB5 /* HSPopUpList.m in Sources */ = {isa = PBXBuildFile; fileRef = CE9777D4141F9D7600C13FB5 /* HSPopUpList.m */; }; + CE9A2C011423F9FF003CA2EF /* columns.strings in Resources */ = {isa = PBXBuildFile; fileRef = CE9A2BFC1423F9FF003CA2EF /* columns.strings */; }; CEBE4D74111F0EE1009AAC6D /* HSWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = CEBE4D73111F0EE1009AAC6D /* HSWindowController.m */; }; CEE7EA130FE675C80004E467 /* DetailsPanel.m in Sources */ = {isa = PBXBuildFile; fileRef = CEE7EA120FE675C80004E467 /* DetailsPanel.m */; }; CEEB135209C837A2004D2330 /* dupeguru.icns in Resources */ = {isa = PBXBuildFile; fileRef = CEEB135109C837A2004D2330 /* dupeguru.icns */; }; @@ -185,6 +186,10 @@ CE9777D2141F9D6500C13FB5 /* PySelectableList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PySelectableList.h; sourceTree = ""; }; CE9777D3141F9D7600C13FB5 /* HSPopUpList.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HSPopUpList.h; sourceTree = ""; }; CE9777D4141F9D7600C13FB5 /* HSPopUpList.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HSPopUpList.m; sourceTree = ""; }; + CE9A2BFD1423F9FF003CA2EF /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = ../base/de.lproj/columns.strings; sourceTree = ""; }; + CE9A2BFE1423F9FF003CA2EF /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = ../base/en.lproj/columns.strings; sourceTree = ""; }; + CE9A2BFF1423F9FF003CA2EF /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = ../base/fr.lproj/columns.strings; sourceTree = ""; }; + CE9A2C001423F9FF003CA2EF /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = zh_CN; path = ../base/zh_CN.lproj/columns.strings; sourceTree = ""; }; CEBE4D72111F0EE1009AAC6D /* HSWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HSWindowController.h; sourceTree = ""; }; CEBE4D73111F0EE1009AAC6D /* HSWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HSWindowController.m; sourceTree = ""; }; CECFFF1C13CDF8D0003A4518 /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/DetailsPanel.xib; sourceTree = SOURCE_ROOT; }; @@ -201,6 +206,9 @@ CEEB135109C837A2004D2330 /* dupeguru.icns */ = {isa = PBXFileReference; lastKnownFileType = image.icns; path = dupeguru.icns; sourceTree = ""; }; CEF0ACCC12DF3C2000B32F7E /* HSRecentFiles.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = HSRecentFiles.h; path = ../../cocoalib/HSRecentFiles.h; sourceTree = SOURCE_ROOT; }; CEF0ACCD12DF3C2000B32F7E /* HSRecentFiles.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = HSRecentFiles.m; path = ../../cocoalib/HSRecentFiles.m; sourceTree = SOURCE_ROOT; }; + CEF27A9C1423EAD90048ADFA /* de */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = de; path = ../base/de.lproj/PrioritizeDialog.xib; sourceTree = ""; }; + CEF27A9D1423EAD90048ADFA /* fr */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = fr; path = ../base/fr.lproj/PrioritizeDialog.xib; sourceTree = ""; }; + CEF27A9E1423EAD90048ADFA /* zh_CN */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = zh_CN; path = ../base/zh_CN.lproj/PrioritizeDialog.xib; sourceTree = ""; }; CEFC294509C89E3D00D9F998 /* folder32.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = folder32.png; path = ../../images/folder32.png; sourceTree = SOURCE_ROOT; }; CEFC7F8A0FC9517500CD5728 /* Dialogs.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = Dialogs.h; path = ../../cocoalib/Dialogs.h; sourceTree = SOURCE_ROOT; }; CEFC7F8B0FC9517500CD5728 /* Dialogs.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = Dialogs.m; path = ../../cocoalib/Dialogs.m; sourceTree = SOURCE_ROOT; }; @@ -300,6 +308,7 @@ CEEB135109C837A2004D2330 /* dupeguru.icns */, 8D1107310486CEB800E47090 /* Info.plist */, CE8113E912E5CE9A00A36C80 /* Localizable.strings */, + CE9A2BFC1423F9FF003CA2EF /* columns.strings */, CE4526F012E5F55F00005A15 /* core.strings */, CE6E0DFD1054E9EF008D9390 /* dsa_pub.pem */, ); @@ -546,6 +555,7 @@ CE31819D13D85D9B00B6D649 /* about.xib in Resources */, CE31819E13D85D9B00B6D649 /* ErrorReportWindow.xib in Resources */, CE9777D1141F8CB400C13FB5 /* PrioritizeDialog.xib in Resources */, + CE9A2C011423F9FF003CA2EF /* columns.strings in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -732,10 +742,24 @@ isa = PBXVariantGroup; children = ( CE9777D0141F8CB400C13FB5 /* en */, + CEF27A9C1423EAD90048ADFA /* de */, + CEF27A9D1423EAD90048ADFA /* fr */, + CEF27A9E1423EAD90048ADFA /* zh_CN */, ); name = PrioritizeDialog.xib; sourceTree = ""; }; + CE9A2BFC1423F9FF003CA2EF /* columns.strings */ = { + isa = PBXVariantGroup; + children = ( + CE9A2BFD1423F9FF003CA2EF /* de */, + CE9A2BFE1423F9FF003CA2EF /* en */, + CE9A2BFF1423F9FF003CA2EF /* fr */, + CE9A2C001423F9FF003CA2EF /* zh_CN */, + ); + name = columns.strings; + sourceTree = ""; + }; /* End PBXVariantGroup section */ /* Begin XCBuildConfiguration section */ diff --git a/core/data.py b/core/data.py index f2f6f4b5..a497ebf6 100644 --- a/core/data.py +++ b/core/data.py @@ -10,7 +10,6 @@ from collections import namedtuple import time from hscommon.util import format_time_decimal, format_size -from . import prioritize Column = namedtuple('Column', 'attr display') @@ -39,7 +38,4 @@ def format_dupe_count(c): return str(c) if c else '---' def cmp_value(value): - return value.lower() if isinstance(value, str) else value - -def prioritization_categories(): - return prioritize.all_categories() \ No newline at end of file + return value.lower() if isinstance(value, str) else value \ No newline at end of file diff --git a/core/prioritize.py b/core/prioritize.py index 1e11bf82..b5be1a46 100644 --- a/core/prioritize.py +++ b/core/prioritize.py @@ -9,6 +9,8 @@ from hscommon.util import dedupe, flatten, rem_file_ext from hscommon.trans import tr +coltr = lambda s: tr(s, 'columns') + class CriterionCategory: NAME = "Undefined" @@ -51,13 +53,13 @@ class Criterion: class KindCategory(CriterionCategory): - NAME = tr("Kind") + NAME = coltr("Kind") def extract_value(self, dupe): return dupe.extension class FolderCategory(CriterionCategory): - NAME = tr("Folder") + NAME = coltr("Folder") def extract_value(self, dupe): return dupe.folder_path @@ -66,7 +68,7 @@ class FolderCategory(CriterionCategory): return str(value) class FilenameCategory(CriterionCategory): - NAME = tr("Filename") + NAME = coltr("Filename") ENDS_WITH_NUMBER = 0 DOESNT_END_WITH_NUMBER = 1 @@ -110,13 +112,13 @@ class NumericalCategory(CriterionCategory): return [Criterion(self, self.HIGHEST), Criterion(self, self.LOWEST)] class SizeCategory(NumericalCategory): - NAME = tr("Size") + NAME = coltr("Size") def extract_value(self, dupe): return dupe.size class MtimeCategory(NumericalCategory): - NAME = tr("Modification Date") + NAME = coltr("Modification") def extract_value(self, dupe): return dupe.mtime diff --git a/core_me/prioritize.py b/core_me/prioritize.py index a8146da8..6be2273c 100644 --- a/core_me/prioritize.py +++ b/core_me/prioritize.py @@ -10,20 +10,22 @@ from hscommon.trans import tr from core.prioritize import (KindCategory, FolderCategory, FilenameCategory, NumericalCategory, SizeCategory, MtimeCategory) +coltr = lambda s: tr(s, 'columns') + class DurationCategory(NumericalCategory): - NAME = tr("Duration") + NAME = coltr("Duration") def extract_value(self, dupe): return dupe.duration class BitrateCategory(NumericalCategory): - NAME = tr("Bitrate") + NAME = coltr("Bitrate") def extract_value(self, dupe): return dupe.bitrate class SamplerateCategory(NumericalCategory): - NAME = tr("Samplerate") + NAME = coltr("Samplerate") def extract_value(self, dupe): return dupe.samplerate diff --git a/core_pe/prioritize.py b/core_pe/prioritize.py index 7e28cc86..c4c01976 100644 --- a/core_pe/prioritize.py +++ b/core_pe/prioritize.py @@ -10,8 +10,10 @@ from hscommon.trans import tr from core.prioritize import (KindCategory, FolderCategory, FilenameCategory, NumericalCategory, SizeCategory, MtimeCategory) +coltr = lambda s: tr(s, 'columns') + class DimensionsCategory(NumericalCategory): - NAME = tr("Dimensions") + NAME = coltr("Dimensions") def extract_value(self, dupe): return dupe.dimensions diff --git a/core_se/data.py b/core_se/data.py index 57cccd45..499b1402 100644 --- a/core_se/data.py +++ b/core_se/data.py @@ -10,6 +10,7 @@ from hscommon.util import format_size from hscommon.trans import tr as trbase from core.data import (format_timestamp, format_words, format_perc, format_dupe_count, cmp_value, Column) +from core import prioritize tr = lambda s: trbase(s, 'columns') @@ -72,3 +73,6 @@ def GetGroupSortKey(group, key): if key == DUPECOUNT_COL: return len(group) return cmp_value(getattr(group.ref, COLUMNS[key].attr, '')) + +def prioritization_categories(): + return prioritize.all_categories() diff --git a/qt/base/prioritize_dialog.py b/qt/base/prioritize_dialog.py index 5118fbe1..e236161a 100644 --- a/qt/base/prioritize_dialog.py +++ b/qt/base/prioritize_dialog.py @@ -66,7 +66,7 @@ class PrioritizeDialog(QDialog): self.buttonBox.rejected.connect(self.reject) def _setupUi(self): - self.setWindowTitle(tr("Re-prioritize duplicates")) + self.setWindowTitle(tr("Re-Prioritize duplicates")) self.resize(700, 400) #widgets @@ -77,8 +77,8 @@ class PrioritizeDialog(QDialog): self.promptLabel.setWordWrap(True) self.categoryCombobox = QComboBox() self.criteriaListView = QListView() - self.removeCriteriaButton = QPushButton("<--") self.addCriteriaButton = QPushButton("-->") + self.removeCriteriaButton = QPushButton("<--") self.prioritizationListView = QListView() self.prioritizationListView.setAcceptDrops(True) self.prioritizationListView.setDragEnabled(True) @@ -97,8 +97,8 @@ class PrioritizeDialog(QDialog): self.widgetsLayout.addLayout(self.leftWidgetsLayout) self.addRemoveButtonsLayout = QVBoxLayout() self.addRemoveButtonsLayout.addItem(verticalSpacer()) - self.addRemoveButtonsLayout.addWidget(self.removeCriteriaButton) self.addRemoveButtonsLayout.addWidget(self.addCriteriaButton) + self.addRemoveButtonsLayout.addWidget(self.removeCriteriaButton) self.addRemoveButtonsLayout.addItem(verticalSpacer()) self.widgetsLayout.addLayout(self.addRemoveButtonsLayout) self.widgetsLayout.addWidget(self.prioritizationListView) diff --git a/qt/base/result_window.py b/qt/base/result_window.py index c65230f1..3b163e70 100644 --- a/qt/base/result_window.py +++ b/qt/base/result_window.py @@ -50,7 +50,7 @@ class ResultWindow(QMainWindow): ('actionMoveMarked', 'Ctrl+M', '', tr("Move Marked to..."), self.moveTriggered), ('actionCopyMarked', 'Ctrl+Shift+M', '', tr("Copy Marked to..."), self.copyTriggered), ('actionRemoveMarked', 'Ctrl+R', '', tr("Remove Marked from Results"), self.removeMarkedTriggered), - ('actionReprioritize', '', '', tr("Re-Prioritize..."), self.reprioritizeTriggered), + ('actionReprioritize', '', '', tr("Re-Prioritize Results..."), self.reprioritizeTriggered), ('actionRemoveSelected', 'Ctrl+Del', '', tr("Remove Selected from Results"), self.removeSelectedTriggered), ('actionIgnoreSelected', 'Ctrl+Shift+Del', '', tr("Add Selected to Ignore List"), self.addToIgnoreListTriggered), ('actionMakeSelectedReference', 'Ctrl+Space', '', tr("Make Selected Reference"), self.makeReferenceTriggered), diff --git a/qt/lang/de.ts b/qt/lang/de.ts index ea669db0..712bcbf8 100644 --- a/qt/lang/de.ts +++ b/qt/lang/de.ts @@ -315,6 +315,10 @@ Remove Marked from Results Entferne Markierte aus den Ergebnissen + + Re-Prioritize Results... + + Remove Selected from Results Entferne Ausgewählte aus den Ergebnissen @@ -565,6 +569,40 @@ Debug mode (restart required) Debug Modus (Neustart nötig) + + + + Ends with number + + + + Highest + + + + Lowest + + + + Newest + + + + Oldest + + + + Re-Prioritize duplicates + + + + Add criteria to the right box and click OK to send the dupes that correspond the best to these criteria to their respective group's reference position. Read the help file for more information. + + @@ -578,6 +616,10 @@ Folder Ordner + + Size + Größe + Size (KB) Größe (KB) diff --git a/qt/lang/fr.ts b/qt/lang/fr.ts index 79ae2f49..9af948c1 100644 --- a/qt/lang/fr.ts +++ b/qt/lang/fr.ts @@ -315,6 +315,10 @@ Remove Marked from Results Retirer marqués des résultats + + Re-Prioritize Results... + Re-prioriser les résultats + Remove Selected from Results Retirer sélectionnés des résultats @@ -565,6 +569,40 @@ Debug mode (restart required) Mode de déboguage (redémarrage requis) + + + + Ends with number + Chiffres à la fin + + + Doesn't end with number + Pas de chiffres à la fin + + + Highest + Plus grand + + + Lowest + Moins grand + + + Newest + Plus récent + + + Oldest + Moins récent + + + Re-Prioritize duplicates + Re-prioriser les doublons + + + Add criteria to the right box and click OK to send the dupes that correspond the best to these criteria to their respective group's reference position. Read the help file for more information. + Ajoutez des critères dans la liste de droite pour envoyer les doublons qui correspondent le plus à ces critère à la position de référence. Une lecture préalable du fichier d'aide est conseillée. + @@ -578,6 +616,10 @@ Folder Dossier + + Size + Taille + Size (KB) Taille (KB) diff --git a/qt/lang/zh.ts b/qt/lang/zh.ts index 519e0d50..3c5e6e97 100755 --- a/qt/lang/zh.ts +++ b/qt/lang/zh.ts @@ -315,6 +315,10 @@ Remove Marked from Results 从结果中移除所标记的文件 + + Re-Prioritize Results... + + Remove Selected from Results 从结果中移除所选的文件 @@ -569,6 +573,40 @@ Debug mode (restart required) 调试模式 (需要重新启动) + + + + Ends with number + + + + Doesn't end with number + + + + Highest + + + + Lowest + + + + Newest + + + + Oldest + + + + Re-Prioritize duplicates + + + + Add criteria to the right box and click OK to send the dupes that correspond the best to these criteria to their respective group's reference position. Read the help file for more information. + + @@ -582,6 +620,10 @@ Folder 文件夹 + + Size + 大小 + Size (KB) 大小 (KB)