From 0e5f2822382276bd3b04377ef8427e3d7e756e06 Mon Sep 17 00:00:00 2001 From: HellAholic Date: Sat, 15 Mar 2025 22:07:57 +0100 Subject: [PATCH] Replace for loop with map() and remove redundant else - map().join is a better fit that replaces the for loop and a if/else since there is no complex logic involved. - there is a return inside the if statement for requires.length ===0, so no need for else statement as the code execution stops with return --- .../qml/Preferences/SettingVisibilityItem.qml | 43 ++++++++----------- 1 file changed, 18 insertions(+), 25 deletions(-) diff --git a/resources/qml/Preferences/SettingVisibilityItem.qml b/resources/qml/Preferences/SettingVisibilityItem.qml index 52b06b3dee..a7f4a47e23 100644 --- a/resources/qml/Preferences/SettingVisibilityItem.qml +++ b/resources/qml/Preferences/SettingVisibilityItem.qml @@ -46,33 +46,26 @@ Item text: { - if(provider.properties.enabled == "True") - { - return "" - } - var key = definition ? definition.key : "" - var requires = settingDefinitionsModel.getRequires(key, "enabled") - if (requires.length == 0) - { - return catalog.i18nc("@item:tooltip", "This setting has been hidden by the active machine and will not be visible."); - } - else - { - var requires_text = "" - for (var i in requires) - { - if (requires_text == "") - { - requires_text = requires[i].label - } - else - { - requires_text += ", " + requires[i].label - } - } + if (provider.properties.enabled === "True") return ""; - return catalog.i18ncp("@item:tooltip %1 is list of setting names", "This setting has been hidden by the value of %1. Change the value of that setting to make this setting visible.", "This setting has been hidden by the values of %1. Change the values of those settings to make this setting visible.", requires.length) .arg(requires_text); + var key = definition ? definition.key : ""; + var requires = settingDefinitionsModel.getRequires(key, "enabled"); + + if (requires.length === 0) { + return catalog.i18nc( + "@item:tooltip", + "This setting has been hidden by the active machine and will not be visible." + ); } + + var requiresText = requires.map(r => r.label).join(", "); + + return catalog.i18ncp( + "@item:tooltip %1 is list of setting names", + "This setting has been hidden by the value of %1. Change the value of that setting to make this setting visible.", + "This setting has been hidden by the values of %1. Change the values of those settings to make this setting visible.", + requires.length + ).arg(requiresText); } UM.ColorImage