diff --git a/Consts.h b/Consts.h index 8c84cb0..aeac31a 100755 --- a/Consts.h +++ b/Consts.h @@ -277,7 +277,7 @@ enum Signer{None, Apple, AppStore, DevID, AdHoc}; #define VT_HTTP_RESPONSE @"http_response" //output file -#define OUTPUT_FILE @"kkResults.json" +#define OUTPUT_FILE @"WhoIsThere.json" //support us button tag #define BUTTON_SUPPORT_US 100 diff --git a/KnockKnock-Info.plist b/KnockKnock-Info.plist index 306c0f5..03121e1 100755 --- a/KnockKnock-Info.plist +++ b/KnockKnock-Info.plist @@ -25,7 +25,7 @@ LSMinimumSystemVersion ${MACOSX_DEPLOYMENT_TARGET} NSHumanReadableCopyright - Copyright © 2024 Objective-See, LLC. All rights reserved. + Copyright © 2025 Objective-See, LLC. All rights reserved. NSMainNibFile MainMenu NSPrincipalClass diff --git a/KnockKnock.xcodeproj/project.pbxproj b/KnockKnock.xcodeproj/project.pbxproj index e60c653..34425d8 100755 --- a/KnockKnock.xcodeproj/project.pbxproj +++ b/KnockKnock.xcodeproj/project.pbxproj @@ -32,6 +32,7 @@ CD36CDB8237785180089FC34 /* quicklookIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = CD36CDB7237785180089FC34 /* quicklookIcon.png */; }; CD3B99B925EC94D60020AF50 /* SystemExtensions.m in Sources */ = {isa = PBXBuildFile; fileRef = CD3B99B725EC94D60020AF50 /* SystemExtensions.m */; }; CD3B99D325EDE9F90020AF50 /* systemExtensionIcon.png in Resources */ = {isa = PBXBuildFile; fileRef = CD3B99D225EDE9F90020AF50 /* systemExtensionIcon.png */; }; + CD49EEA72D2A1301007439CD /* UnknownItems.xib in Resources */ = {isa = PBXBuildFile; fileRef = CD49EEA62D2A1301007439CD /* UnknownItems.xib */; }; CD585494219FE61D00A438B0 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = CD585493219FE61D00A438B0 /* Assets.xcassets */; }; CD5854D321A5FADD00A438B0 /* patrons.txt in Resources */ = {isa = PBXBuildFile; fileRef = CD5854D221A5FADD00A438B0 /* patrons.txt */; }; CD5854D821A60B2100A438B0 /* PlistWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = CD5854D721A60B2000A438B0 /* PlistWindowController.m */; }; @@ -53,7 +54,6 @@ CD6FD7C62C7AB299001C59F2 /* VTInfoWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = CD6FD7C52C7AB299001C59F2 /* VTInfoWindow.xib */; }; CD6FD7CA2C7AB29F001C59F2 /* ExtensionInfoWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = CD6FD7C92C7AB29F001C59F2 /* ExtensionInfoWindow.xib */; }; CD6FD7CE2C7AB2A3001C59F2 /* FileInfoWindow.xib in Resources */ = {isa = PBXBuildFile; fileRef = CD6FD7CD2C7AB2A3001C59F2 /* FileInfoWindow.xib */; }; - CD792FB92D252FE600167649 /* UnknownItems.xib in Resources */ = {isa = PBXBuildFile; fileRef = CD792FB72D252FE600167649 /* UnknownItems.xib */; }; CD792FBC2D2530A800167649 /* UnknownItemsWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = CD792FBB2D2530A800167649 /* UnknownItemsWindowController.m */; }; CD7B9F4D1ACB959200DF3C71 /* logoAppleOver.png in Resources */ = {isa = PBXBuildFile; fileRef = CD7B9F4C1ACB959200DF3C71 /* logoAppleOver.png */; }; CD7B9F531ACBAE2900DF3C71 /* SpotlightImporters.m in Sources */ = {isa = PBXBuildFile; fileRef = CD7B9F521ACBAE2900DF3C71 /* SpotlightImporters.m */; }; @@ -193,6 +193,8 @@ CD3B99B725EC94D60020AF50 /* SystemExtensions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = SystemExtensions.m; path = Plugins/SystemExtensions.m; sourceTree = ""; }; CD3B99B825EC94D60020AF50 /* SystemExtensions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = SystemExtensions.h; path = Plugins/SystemExtensions.h; sourceTree = ""; }; CD3B99D225EDE9F90020AF50 /* systemExtensionIcon.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = systemExtensionIcon.png; path = images/systemExtensionIcon.png; sourceTree = SOURCE_ROOT; }; + CD49EEA52D2A1301007439CD /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/UnknownItems.xib; sourceTree = ""; }; + CD49EEA82D2A1301007439CD /* mul */ = {isa = PBXFileReference; lastKnownFileType = text.json.xcstrings; name = mul; path = mul.lproj/UnknownItems.xcstrings; sourceTree = ""; }; CD585493219FE61D00A438B0 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = SOURCE_ROOT; }; CD5854D221A5FADD00A438B0 /* patrons.txt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = patrons.txt; sourceTree = SOURCE_ROOT; }; CD5854D621A60B2000A438B0 /* PlistWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PlistWindowController.h; sourceTree = SOURCE_ROOT; }; @@ -228,7 +230,6 @@ CD6FD7CB2C7AB29F001C59F2 /* mul */ = {isa = PBXFileReference; lastKnownFileType = text.json.xcstrings; name = mul; path = mul.lproj/ExtensionInfoWindow.xcstrings; sourceTree = ""; }; CD6FD7CC2C7AB2A3001C59F2 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/FileInfoWindow.xib; sourceTree = ""; }; CD6FD7CF2C7AB2A3001C59F2 /* mul */ = {isa = PBXFileReference; lastKnownFileType = text.json.xcstrings; name = mul; path = mul.lproj/FileInfoWindow.xcstrings; sourceTree = ""; }; - CD792FB82D252FE600167649 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/UnknownItems.xib; sourceTree = ""; }; CD792FBA2D2530A800167649 /* UnknownItemsWindowController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = UnknownItemsWindowController.h; sourceTree = ""; }; CD792FBB2D2530A800167649 /* UnknownItemsWindowController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = UnknownItemsWindowController.m; sourceTree = ""; }; CD7B9F4C1ACB959200DF3C71 /* logoAppleOver.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; name = logoAppleOver.png; path = images/logoAppleOver.png; sourceTree = SOURCE_ROOT; }; @@ -628,7 +629,7 @@ CDA81E621AA020E8009790E2 /* UI */ = { isa = PBXGroup; children = ( - CD792FB72D252FE600167649 /* UnknownItems.xib */, + CD49EEA62D2A1301007439CD /* UnknownItems.xib */, CD6FD7BD2C7AB291001C59F2 /* AboutWindow.xib */, CD19A7EC2CA4236B00F17FF3 /* DiffWindow.xib */, CD6FD7C92C7AB29F001C59F2 /* ExtensionInfoWindow.xib */, @@ -779,7 +780,7 @@ CD7B9F4D1ACB959200DF3C71 /* logoAppleOver.png in Resources */, CDA81DCB1A9960A3009790E2 /* virusTotal.png in Resources */, CDA81DF41A99B8C2009790E2 /* whitelistedExtensions.json in Resources */, - CD792FB92D252FE600167649 /* UnknownItems.xib in Resources */, + CD49EEA72D2A1301007439CD /* UnknownItems.xib in Resources */, CD585494219FE61D00A438B0 /* Assets.xcassets in Resources */, CDA81DD41A9970A0009790E2 /* unsigned.png in Resources */, CD2B61442067656200BF72E9 /* eventRulesIcon.png in Resources */, @@ -895,6 +896,16 @@ path = UI; sourceTree = ""; }; + CD49EEA62D2A1301007439CD /* UnknownItems.xib */ = { + isa = PBXVariantGroup; + children = ( + CD49EEA52D2A1301007439CD /* Base */, + CD49EEA82D2A1301007439CD /* mul */, + ); + name = UnknownItems.xib; + path = UI; + sourceTree = ""; + }; CD6FD7AB2C7AAD87001C59F2 /* MainMenu.xib */ = { isa = PBXVariantGroup; children = ( @@ -984,15 +995,6 @@ path = UI; sourceTree = ""; }; - CD792FB72D252FE600167649 /* UnknownItems.xib */ = { - isa = PBXVariantGroup; - children = ( - CD792FB82D252FE600167649 /* Base */, - ); - name = UnknownItems.xib; - path = UI; - sourceTree = ""; - }; CD8641252CA05D6B00803551 /* KnockKnock-InfoPlist.strings */ = { isa = PBXVariantGroup; children = ( @@ -1105,20 +1107,22 @@ CODE_SIGN_IDENTITY = "Developer ID Application"; CODE_SIGN_STYLE = Manual; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 3.0.1; + CURRENT_PROJECT_VERSION = 3.1.0; DEVELOPMENT_TEAM = VBG97UB4TA; ENABLE_HARDENED_RUNTIME = YES; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "KnockKnock-Prefix.pch"; HEADER_SEARCH_PATHS = "$(PROJECT_DIR)/Libraries/**"; INFOPLIST_FILE = "KnockKnock-Info.plist"; + INFOPLIST_KEY_CFBundleDisplayName = KnockKnock; + INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.utilities"; LD_RUNPATH_SEARCH_PATHS = "@executable_path/../Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Libraries/BTM", ); MACOSX_DEPLOYMENT_TARGET = 10.15; - MARKETING_VERSION = 3.0.1; + MARKETING_VERSION = 3.1.0; ONLY_ACTIVE_ARCH = NO; PRODUCT_BUNDLE_IDENTIFIER = "com.objective-see.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = KnockKnock; @@ -1135,20 +1139,22 @@ CODE_SIGN_IDENTITY = "Developer ID Application"; CODE_SIGN_STYLE = Manual; COMBINE_HIDPI_IMAGES = YES; - CURRENT_PROJECT_VERSION = 3.0.1; + CURRENT_PROJECT_VERSION = 3.1.0; DEVELOPMENT_TEAM = VBG97UB4TA; ENABLE_HARDENED_RUNTIME = YES; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "KnockKnock-Prefix.pch"; HEADER_SEARCH_PATHS = "$(PROJECT_DIR)/Libraries/**"; INFOPLIST_FILE = "KnockKnock-Info.plist"; + INFOPLIST_KEY_CFBundleDisplayName = KnockKnock; + INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.utilities"; LD_RUNPATH_SEARCH_PATHS = "@executable_path/../Frameworks"; LIBRARY_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Libraries/BTM", ); MACOSX_DEPLOYMENT_TARGET = 10.15; - MARKETING_VERSION = 3.0.1; + MARKETING_VERSION = 3.1.0; ONLY_ACTIVE_ARCH = NO; PRODUCT_BUNDLE_IDENTIFIER = "com.objective-see.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = KnockKnock; diff --git a/Localizable.xcstrings b/Localizable.xcstrings index abed842..7009357 100644 --- a/Localizable.xcstrings +++ b/Localizable.xcstrings @@ -546,26 +546,13 @@ } } }, - "Submissions complete, though errors were encountered.\r\n(HTTP response(s): %@)." : { - "comment" : "Submissions complete, though errors were encountered.\r\n(HTTP response(s): %@).", - "extractionState" : "stale", + "Submissions complete!" : { + "comment" : "Submissions complete!", "localizations" : { "es" : { "stringUnit" : { "state" : "translated", - "value" : "Envíos completados, aunque se encontraron errores.\r\n(respuesta(s) HTTP: %@)." - } - } - } - }, - "Submissions complete. (In subsequent scans item's VT detection ratios will now be displayed)." : { - "comment" : "Submissions complete. (In subsequent scans item's VT detection ratios will now be displayed).", - "extractionState" : "stale", - "localizations" : { - "es" : { - "stringUnit" : { - "state" : "translated", - "value" : "Envíos completados. (A partir de ahora, en los análisis posteriores, se mostrarán los índices de detección de VT del ítem)." + "value" : "Envíos completados" } } } @@ -603,18 +590,6 @@ } } }, - "Submitting %lu item(s) to VirusTotal..." : { - "comment" : "Submitting %lu item(s) to VirusTotal...", - "extractionState" : "stale", - "localizations" : { - "es" : { - "stringUnit" : { - "state" : "translated", - "value" : "Enviando %lu ítem(s) a VirusTotal..." - } - } - } - }, "This allows the app to perform a comprehensive scan.\n\nIn System Preferences:\r ▪ Click the 🔒 to authenticate\r ▪ Click the ➕ to add KnockKnock.app\n" : { "comment" : "This allows the app to perform a comprehensive scan.\n\nIn System Preferences:\r ▪ Click the 🔒 to authenticate\r ▪ Click the ➕ to add KnockKnock.app\n", "localizations" : { @@ -670,9 +645,8 @@ } } }, - "VirusTotal Results: Disabled" : { - "comment" : "VirusTotal Results: Disabled", - "extractionState" : "stale", + "VirusTotal Results: N/A (Disabled)" : { + "comment" : "VirusTotal Results: N/A (Disabled)", "localizations" : { "es" : { "stringUnit" : { @@ -682,9 +656,6 @@ } } }, - "VirusTotal Results: N/A (Disabled)" : { - "comment" : "VirusTotal Results: N/A (Disabled)" - }, "VirusTotal:\r\n %lu flagged item(s)\r\n %lu unknown item(s)" : { "comment" : "VirusTotal:\r\n %lu flagged item(s)\r\n %lu unknown item(s)", "localizations" : { diff --git a/UI/Base.lproj/AboutWindow.xib b/UI/Base.lproj/AboutWindow.xib index 043af8e..a685b1d 100644 --- a/UI/Base.lproj/AboutWindow.xib +++ b/UI/Base.lproj/AboutWindow.xib @@ -1,8 +1,8 @@ - + - + diff --git a/UI/Base.lproj/ResultsWindow.xib b/UI/Base.lproj/ResultsWindow.xib index d41a249..b72fca8 100644 --- a/UI/Base.lproj/ResultsWindow.xib +++ b/UI/Base.lproj/ResultsWindow.xib @@ -1,8 +1,8 @@ - + - + diff --git a/UI/Base.lproj/UnknownItems.xib b/UI/Base.lproj/UnknownItems.xib index 2fbcb6d..1e80c43 100644 --- a/UI/Base.lproj/UnknownItems.xib +++ b/UI/Base.lproj/UnknownItems.xib @@ -1,14 +1,15 @@ - + - + + @@ -176,6 +177,14 @@ + + + + + + + + @@ -183,9 +192,12 @@ + + + diff --git a/UI/Base.lproj/UpdateWindow.xib b/UI/Base.lproj/UpdateWindow.xib index 24c011b..302cfe7 100644 --- a/UI/Base.lproj/UpdateWindow.xib +++ b/UI/Base.lproj/UpdateWindow.xib @@ -1,8 +1,8 @@ - + - + diff --git a/UI/en.lproj/UnknownItems.strings b/UI/en.lproj/UnknownItems.strings new file mode 100644 index 0000000..42aa7f4 --- /dev/null +++ b/UI/en.lproj/UnknownItems.strings @@ -0,0 +1,33 @@ + +/* Class = "NSTextFieldCell"; title = "Text Cell"; ObjectID = "1tA-WZ-bke"; */ +"1tA-WZ-bke.title" = "Text Cell"; + +/* Class = "NSTableColumn"; headerCell.title = "Submit?"; ObjectID = "4Yf-Xs-7Mi"; */ +"4Yf-Xs-7Mi.headerCell.title" = "Submit?"; + +/* Class = "NSTextFieldCell"; title = "Table View Cell"; ObjectID = "4Zg-Mt-eqA"; */ +"4Zg-Mt-eqA.title" = "Table View Cell"; + +/* Class = "NSButtonCell"; title = "View"; ObjectID = "G1q-Ag-u0M"; */ +"G1q-Ag-u0M.title" = "View"; + +/* Class = "NSButtonCell"; title = "Submit"; ObjectID = "ORZ-Dh-wck"; */ +"ORZ-Dh-wck.title" = "Submit"; + +/* Class = "NSTextFieldCell"; title = "Text Cell"; ObjectID = "QE4-vB-ePI"; */ +"QE4-vB-ePI.title" = "Text Cell"; + +/* Class = "NSTableColumn"; headerCell.title = "Unknown Item"; ObjectID = "QnT-0o-QAw"; */ +"QnT-0o-QAw.headerCell.title" = "Unknown Item"; + +/* Class = "NSTextFieldCell"; title = "Results"; ObjectID = "X4L-QK-gGw"; */ +"X4L-QK-gGw.title" = "Results"; + +/* Class = "NSTableColumn"; headerCell.title = "Result"; ObjectID = "XoS-Yw-8k6"; */ +"XoS-Yw-8k6.headerCell.title" = "Result"; + +/* Class = "NSTextFieldCell"; title = "Text Cell"; ObjectID = "lTj-A6-MWz"; */ +"lTj-A6-MWz.title" = "Text Cell"; + +/* Class = "NSWindow"; title = "Unknown Items"; ObjectID = "pvW-8N-g8T"; */ +"pvW-8N-g8T.title" = "Unknown Items"; diff --git a/UI/es.lproj/UnknownItems.strings b/UI/es.lproj/UnknownItems.strings new file mode 100644 index 0000000..42aa7f4 --- /dev/null +++ b/UI/es.lproj/UnknownItems.strings @@ -0,0 +1,33 @@ + +/* Class = "NSTextFieldCell"; title = "Text Cell"; ObjectID = "1tA-WZ-bke"; */ +"1tA-WZ-bke.title" = "Text Cell"; + +/* Class = "NSTableColumn"; headerCell.title = "Submit?"; ObjectID = "4Yf-Xs-7Mi"; */ +"4Yf-Xs-7Mi.headerCell.title" = "Submit?"; + +/* Class = "NSTextFieldCell"; title = "Table View Cell"; ObjectID = "4Zg-Mt-eqA"; */ +"4Zg-Mt-eqA.title" = "Table View Cell"; + +/* Class = "NSButtonCell"; title = "View"; ObjectID = "G1q-Ag-u0M"; */ +"G1q-Ag-u0M.title" = "View"; + +/* Class = "NSButtonCell"; title = "Submit"; ObjectID = "ORZ-Dh-wck"; */ +"ORZ-Dh-wck.title" = "Submit"; + +/* Class = "NSTextFieldCell"; title = "Text Cell"; ObjectID = "QE4-vB-ePI"; */ +"QE4-vB-ePI.title" = "Text Cell"; + +/* Class = "NSTableColumn"; headerCell.title = "Unknown Item"; ObjectID = "QnT-0o-QAw"; */ +"QnT-0o-QAw.headerCell.title" = "Unknown Item"; + +/* Class = "NSTextFieldCell"; title = "Results"; ObjectID = "X4L-QK-gGw"; */ +"X4L-QK-gGw.title" = "Results"; + +/* Class = "NSTableColumn"; headerCell.title = "Result"; ObjectID = "XoS-Yw-8k6"; */ +"XoS-Yw-8k6.headerCell.title" = "Result"; + +/* Class = "NSTextFieldCell"; title = "Text Cell"; ObjectID = "lTj-A6-MWz"; */ +"lTj-A6-MWz.title" = "Text Cell"; + +/* Class = "NSWindow"; title = "Unknown Items"; ObjectID = "pvW-8N-g8T"; */ +"pvW-8N-g8T.title" = "Unknown Items"; diff --git a/UI/mul.lproj/ResultsWindow.xcstrings b/UI/mul.lproj/ResultsWindow.xcstrings index fbf7eea..dd784fa 100644 --- a/UI/mul.lproj/ResultsWindow.xcstrings +++ b/UI/mul.lproj/ResultsWindow.xcstrings @@ -11,28 +11,10 @@ "value" : "View/Submit Items" } }, - "es" : { - "stringUnit" : { - "state" : "needs_review", - "value" : "Enviar ítems" - } - } - } - }, - "bBK-v0-ypq.title" : { - "comment" : "Class = \"NSTextFieldCell\"; title = \"Submission Results...\"; ObjectID = \"bBK-v0-ypq\";", - "extractionState" : "stale", - "localizations" : { - "en" : { - "stringUnit" : { - "state" : "new", - "value" : "Submission Results..." - } - }, "es" : { "stringUnit" : { "state" : "translated", - "value" : "Enviar Resultados..." + "value" : "Ver/Enviar ítems" } } } @@ -55,38 +37,38 @@ } } }, - "ivf-fv-SFp.title" : { - "comment" : "Class = \"NSTextFieldCell\"; title = \"VirusTotal:\"; ObjectID = \"ivf-fv-SFp\";", + "F0z-JX-Cv5.title" : { + "comment" : "Class = \"NSWindow\"; title = \"KnockKnock\"; ObjectID = \"F0z-JX-Cv5\";", "extractionState" : "extracted_with_value", "localizations" : { "en" : { "stringUnit" : { "state" : "new", - "value" : "VirusTotal:" + "value" : "KnockKnock" } }, "es" : { "stringUnit" : { "state" : "translated", - "value" : "VirusTotal:" + "value" : "KnockKnock" } } } }, - "J9x-sM-h9S.title" : { - "comment" : "Class = \"NSButtonCell\"; title = \"Close\"; ObjectID = \"J9x-sM-h9S\";", - "extractionState" : "stale", + "ivf-fv-SFp.title" : { + "comment" : "Class = \"NSTextFieldCell\"; title = \"VirusTotal:\"; ObjectID = \"ivf-fv-SFp\";", + "extractionState" : "extracted_with_value", "localizations" : { "en" : { "stringUnit" : { "state" : "new", - "value" : "Close" + "value" : "VirusTotal:" } }, "es" : { "stringUnit" : { "state" : "translated", - "value" : "Cerrar" + "value" : "VirusTotal:" } } } diff --git a/UI/mul.lproj/UnknownItems.xcstrings b/UI/mul.lproj/UnknownItems.xcstrings new file mode 100644 index 0000000..001d512 --- /dev/null +++ b/UI/mul.lproj/UnknownItems.xcstrings @@ -0,0 +1,132 @@ +{ + "sourceLanguage" : "en", + "strings" : { + "4Yf-Xs-7Mi.headerCell.title" : { + "comment" : "Class = \"NSTableColumn\"; headerCell.title = \"Submit?\"; ObjectID = \"4Yf-Xs-7Mi\";", + "extractionState" : "extracted_with_value", + "localizations" : { + "en" : { + "stringUnit" : { + "state" : "new", + "value" : "Submit?" + } + }, + "es" : { + "stringUnit" : { + "state" : "translated", + "value" : "¿Enviar?" + } + } + } + }, + "G1q-Ag-u0M.title" : { + "comment" : "Class = \"NSButtonCell\"; title = \"View\"; ObjectID = \"G1q-Ag-u0M\";", + "extractionState" : "extracted_with_value", + "localizations" : { + "en" : { + "stringUnit" : { + "state" : "new", + "value" : "View" + } + }, + "es" : { + "stringUnit" : { + "state" : "translated", + "value" : "Ver" + } + } + } + }, + "ORZ-Dh-wck.title" : { + "comment" : "Class = \"NSButtonCell\"; title = \"Submit\"; ObjectID = \"ORZ-Dh-wck\";", + "extractionState" : "extracted_with_value", + "localizations" : { + "en" : { + "stringUnit" : { + "state" : "new", + "value" : "Submit" + } + }, + "es" : { + "stringUnit" : { + "state" : "translated", + "value" : "Enviar" + } + } + } + }, + "pvW-8N-g8T.title" : { + "comment" : "Class = \"NSWindow\"; title = \"Unknown Items\"; ObjectID = \"pvW-8N-g8T\";", + "extractionState" : "extracted_with_value", + "localizations" : { + "en" : { + "stringUnit" : { + "state" : "new", + "value" : "Unknown Items" + } + }, + "es" : { + "stringUnit" : { + "state" : "translated", + "value" : "Ítems desconocidos" + } + } + } + }, + "QnT-0o-QAw.headerCell.title" : { + "comment" : "Class = \"NSTableColumn\"; headerCell.title = \"Unknown Item\"; ObjectID = \"QnT-0o-QAw\";", + "extractionState" : "extracted_with_value", + "localizations" : { + "en" : { + "stringUnit" : { + "state" : "new", + "value" : "Unknown Item" + } + }, + "es" : { + "stringUnit" : { + "state" : "translated", + "value" : "Ítem desconocido" + } + } + } + }, + "X4L-QK-gGw.title" : { + "comment" : "Class = \"NSTextFieldCell\"; title = \"Results\"; ObjectID = \"X4L-QK-gGw\";", + "extractionState" : "extracted_with_value", + "localizations" : { + "en" : { + "stringUnit" : { + "state" : "new", + "value" : "Results" + } + }, + "es" : { + "stringUnit" : { + "state" : "translated", + "value" : "Resultados" + } + } + } + }, + "XoS-Yw-8k6.headerCell.title" : { + "comment" : "Class = \"NSTableColumn\"; headerCell.title = \"Result\"; ObjectID = \"XoS-Yw-8k6\";", + "extractionState" : "extracted_with_value", + "localizations" : { + "en" : { + "stringUnit" : { + "state" : "new", + "value" : "Result" + } + }, + "es" : { + "stringUnit" : { + "state" : "translated", + "value" : "Resultado" + } + } + } + } + }, + "version" : "1.0" +} \ No newline at end of file diff --git a/UnknownItemsWindowController.h b/UnknownItemsWindowController.h index 2b2a526..8667cc3 100644 --- a/UnknownItemsWindowController.h +++ b/UnknownItemsWindowController.h @@ -29,6 +29,9 @@ //activity indicator @property (weak) IBOutlet NSProgressIndicator *activityIndicator; +//status label +@property (weak) IBOutlet NSTextField *statusLabel; + /* METHODS */ //checkbox button handler diff --git a/UnknownItemsWindowController.m b/UnknownItemsWindowController.m index b174e9b..80c3337 100644 --- a/UnknownItemsWindowController.m +++ b/UnknownItemsWindowController.m @@ -289,7 +289,8 @@ -(IBAction)submit:(id)sender continue; } - //self.submissionStatus.stringValue = [NSString stringWithFormat:NSLocalizedString(@"Submitting '%@'", @"Submitting '%@'"), ((File*)item).name]; + //set status + self.statusLabel.stringValue = [NSString stringWithFormat:NSLocalizedString(@"Submitting '%@'", @"Submitting '%@'"), ((File*)item).name]; //inc submittedItems++; @@ -323,6 +324,9 @@ -(IBAction)submit:(id)sender //stop spinner [self.activityIndicator stopAnimation:nil]; + + //set status + self.statusLabel.stringValue = NSLocalizedString(@"Submissions complete!", @"Submissions complete!"); } }); });