diff --git a/Translations/translation_BE.json b/Translations/translation_BE.json index 42b16c02..e0552d7c 100644 --- a/Translations/translation_BE.json +++ b/Translations/translation_BE.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "Ч", "SettingStartSleepOffChar": "К", "SettingLockBoostChar": "Т", - "SettingLockFullChar": "П" + "SettingLockFullChar": "П", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_BG.json b/Translations/translation_BG.json index bfe61bc6..15239037 100644 --- a/Translations/translation_BG.json +++ b/Translations/translation_BG.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "С", "SettingStartSleepOffChar": "П", "SettingLockBoostChar": "Т", - "SettingLockFullChar": "П" + "SettingLockFullChar": "П", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_CS.json b/Translations/translation_CS.json index a6ea50e5..1fd90a92 100644 --- a/Translations/translation_CS.json +++ b/Translations/translation_CS.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "S", "SettingStartSleepOffChar": "M", "SettingLockBoostChar": "B", - "SettingLockFullChar": "U" + "SettingLockFullChar": "U", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_DA.json b/Translations/translation_DA.json index c80e7c6f..29231d71 100644 --- a/Translations/translation_DA.json +++ b/Translations/translation_DA.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "D", "SettingStartSleepOffChar": "R", "SettingLockBoostChar": "B", - "SettingLockFullChar": "F" + "SettingLockFullChar": "F", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_DE.json b/Translations/translation_DE.json index 0208a848..240ffb46 100644 --- a/Translations/translation_DE.json +++ b/Translations/translation_DE.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "R", "SettingStartSleepOffChar": "K", "SettingLockBoostChar": "B", - "SettingLockFullChar": "V" + "SettingLockFullChar": "V", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_EL.json b/Translations/translation_EL.json index 8a8a99ea..50b28789 100644 --- a/Translations/translation_EL.json +++ b/Translations/translation_EL.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "Ζ", "SettingStartSleepOffChar": "Υ", "SettingLockBoostChar": "B", - "SettingLockFullChar": "Π" + "SettingLockFullChar": "Π", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_EN.json b/Translations/translation_EN.json index 9ef29e1e..a9ecbde8 100644 --- a/Translations/translation_EN.json +++ b/Translations/translation_EN.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "Z", "SettingStartSleepOffChar": "R", "SettingLockBoostChar": "B", - "SettingLockFullChar": "F" + "SettingLockFullChar": "F", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_ES.json b/Translations/translation_ES.json index 76d8fd4d..b5df22ef 100644 --- a/Translations/translation_ES.json +++ b/Translations/translation_ES.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "R", "SettingStartSleepOffChar": "F", "SettingLockBoostChar": "B", - "SettingLockFullChar": "F" + "SettingLockFullChar": "F", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_ET.json b/Translations/translation_ET.json index 75dcccf3..2ccbc0e6 100644 --- a/Translations/translation_ET.json +++ b/Translations/translation_ET.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "Z", "SettingStartSleepOffChar": "P", "SettingLockBoostChar": "B", - "SettingLockFullChar": "T" + "SettingLockFullChar": "T", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_FI.json b/Translations/translation_FI.json index b9c04ead..e076fa47 100644 --- a/Translations/translation_FI.json +++ b/Translations/translation_FI.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "L", "SettingStartSleepOffChar": "H", "SettingLockBoostChar": "V", - "SettingLockFullChar": "K" + "SettingLockFullChar": "K", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_FR.json b/Translations/translation_FR.json index 07f404f8..ac26437c 100644 --- a/Translations/translation_FR.json +++ b/Translations/translation_FR.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "V", "SettingStartSleepOffChar": "O", "SettingLockBoostChar": "B", - "SettingLockFullChar": "V" + "SettingLockFullChar": "V", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_HR.json b/Translations/translation_HR.json index 53455e5f..9df38e3e 100644 --- a/Translations/translation_HR.json +++ b/Translations/translation_HR.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "T", "SettingStartSleepOffChar": "H", "SettingLockBoostChar": "B", - "SettingLockFullChar": "Z" + "SettingLockFullChar": "Z", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_HU.json b/Translations/translation_HU.json index db817202..0a8ce6d3 100644 --- a/Translations/translation_HU.json +++ b/Translations/translation_HU.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "A", "SettingStartSleepOffChar": "Sz", "SettingLockBoostChar": "B", - "SettingLockFullChar": "T" + "SettingLockFullChar": "T", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_IT.json b/Translations/translation_IT.json index 643a9f53..26f0d4c9 100644 --- a/Translations/translation_IT.json +++ b/Translations/translation_IT.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "R", "SettingStartSleepOffChar": "A", "SettingLockBoostChar": "T", - "SettingLockFullChar": "C" + "SettingLockFullChar": "C", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_JA_JP.json b/Translations/translation_JA_JP.json index 58fe176b..d6922bb8 100644 --- a/Translations/translation_JA_JP.json +++ b/Translations/translation_JA_JP.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "待", "SettingStartSleepOffChar": "室", "SettingLockBoostChar": "ブ", - "SettingLockFullChar": "全" + "SettingLockFullChar": "全", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_LT.json b/Translations/translation_LT.json index 2d77dec8..c5843e4b 100644 --- a/Translations/translation_LT.json +++ b/Translations/translation_LT.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "M", "SettingStartSleepOffChar": "K", "SettingLockBoostChar": "T", - "SettingLockFullChar": "V" + "SettingLockFullChar": "V", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_NB.json b/Translations/translation_NB.json index cac1f307..3aa27763 100644 --- a/Translations/translation_NB.json +++ b/Translations/translation_NB.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "D", "SettingStartSleepOffChar": "R", "SettingLockBoostChar": "B", - "SettingLockFullChar": "F" + "SettingLockFullChar": "F", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_NL.json b/Translations/translation_NL.json index 7b3a68d8..c495b5e2 100644 --- a/Translations/translation_NL.json +++ b/Translations/translation_NL.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "S", "SettingStartSleepOffChar": "Z", "SettingLockBoostChar": "B", - "SettingLockFullChar": "V" + "SettingLockFullChar": "V", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_NL_BE.json b/Translations/translation_NL_BE.json index 989359df..9ab4541f 100644 --- a/Translations/translation_NL_BE.json +++ b/Translations/translation_NL_BE.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "S", "SettingStartSleepOffChar": "K", "SettingLockBoostChar": "B", - "SettingLockFullChar": "F" + "SettingLockFullChar": "F", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_PL.json b/Translations/translation_PL.json index 8e516076..e87f3cc1 100644 --- a/Translations/translation_PL.json +++ b/Translations/translation_PL.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "Z", "SettingStartSleepOffChar": "O", "SettingLockBoostChar": "B", - "SettingLockFullChar": "P" + "SettingLockFullChar": "P", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_PT.json b/Translations/translation_PT.json index 5f4ab999..34130da3 100644 --- a/Translations/translation_PT.json +++ b/Translations/translation_PT.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "H", "SettingStartSleepOffChar": "A", "SettingLockBoostChar": "B", - "SettingLockFullChar": "F" + "SettingLockFullChar": "F", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_RO.json b/Translations/translation_RO.json index 2e5105fa..cbaf7448 100644 --- a/Translations/translation_RO.json +++ b/Translations/translation_RO.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "Z", "SettingStartSleepOffChar": "R", "SettingLockBoostChar": "B", - "SettingLockFullChar": "F" + "SettingLockFullChar": "F", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_RU.json b/Translations/translation_RU.json index 81dac2ef..c18e5f82 100644 --- a/Translations/translation_RU.json +++ b/Translations/translation_RU.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "С", "SettingStartSleepOffChar": "К", "SettingLockBoostChar": "Т", - "SettingLockFullChar": "П" + "SettingLockFullChar": "П", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_SK.json b/Translations/translation_SK.json index 476b8288..dd713b63 100644 --- a/Translations/translation_SK.json +++ b/Translations/translation_SK.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "S", "SettingStartSleepOffChar": "I", "SettingLockBoostChar": "B", - "SettingLockFullChar": "P" + "SettingLockFullChar": "P", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_SL.json b/Translations/translation_SL.json index 358f9117..e61f0ac8 100644 --- a/Translations/translation_SL.json +++ b/Translations/translation_SL.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "Z", "SettingStartSleepOffChar": "V", "SettingLockBoostChar": "L", - "SettingLockFullChar": "P" + "SettingLockFullChar": "P", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_SR_CYRL.json b/Translations/translation_SR_CYRL.json index 70ddae54..9faa3609 100644 --- a/Translations/translation_SR_CYRL.json +++ b/Translations/translation_SR_CYRL.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "С", "SettingStartSleepOffChar": "X", "SettingLockBoostChar": "B", - "SettingLockFullChar": "F" + "SettingLockFullChar": "F", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_SR_LATN.json b/Translations/translation_SR_LATN.json index eaa70d80..7068a44b 100644 --- a/Translations/translation_SR_LATN.json +++ b/Translations/translation_SR_LATN.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "S", "SettingStartSleepOffChar": "X", "SettingLockBoostChar": "B", - "SettingLockFullChar": "F" + "SettingLockFullChar": "F", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_SV.json b/Translations/translation_SV.json index 3cdaf691..8905f2bc 100644 --- a/Translations/translation_SV.json +++ b/Translations/translation_SV.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "V", "SettingStartSleepOffChar": "R", "SettingLockBoostChar": "T", - "SettingLockFullChar": "F" + "SettingLockFullChar": "F", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_TR.json b/Translations/translation_TR.json index 539ffa44..dbd7277f 100644 --- a/Translations/translation_TR.json +++ b/Translations/translation_TR.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "U", "SettingStartSleepOffChar": "S", "SettingLockBoostChar": "B", - "SettingLockFullChar": "F" + "SettingLockFullChar": "F", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_UK.json b/Translations/translation_UK.json index 82b6d4b8..6df0856d 100644 --- a/Translations/translation_UK.json +++ b/Translations/translation_UK.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "С", "SettingStartSleepOffChar": "К", "SettingLockBoostChar": "Т", - "SettingLockFullChar": "П" + "SettingLockFullChar": "П", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_UZ.json b/Translations/translation_UZ.json index 24406789..bd4f8531 100644 --- a/Translations/translation_UZ.json +++ b/Translations/translation_UZ.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "U", "SettingStartSleepOffChar": "X", "SettingLockBoostChar": "B", - "SettingLockFullChar": "T" + "SettingLockFullChar": "T", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_VI.json b/Translations/translation_VI.json index dae1a653..a74eb24b 100644 --- a/Translations/translation_VI.json +++ b/Translations/translation_VI.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "Z", "SettingStartSleepOffChar": "R", "SettingLockBoostChar": "B", - "SettingLockFullChar": "F" + "SettingLockFullChar": "F", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_YUE_HK.json b/Translations/translation_YUE_HK.json index e7737b2b..1ecde699 100644 --- a/Translations/translation_YUE_HK.json +++ b/Translations/translation_YUE_HK.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "待", "SettingStartSleepOffChar": "室", "SettingLockBoostChar": "增", - "SettingLockFullChar": "全" + "SettingLockFullChar": "全", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_ZH_CN.json b/Translations/translation_ZH_CN.json index 68561281..1961a6be 100644 --- a/Translations/translation_ZH_CN.json +++ b/Translations/translation_ZH_CN.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "待", "SettingStartSleepOffChar": "室", "SettingLockBoostChar": "增", - "SettingLockFullChar": "全" + "SettingLockFullChar": "全", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translation_ZH_TW.json b/Translations/translation_ZH_TW.json index 22218051..1f220c71 100644 --- a/Translations/translation_ZH_TW.json +++ b/Translations/translation_ZH_TW.json @@ -81,7 +81,8 @@ "SettingStartSleepChar": "待", "SettingStartSleepOffChar": "室", "SettingLockBoostChar": "增", - "SettingLockFullChar": "全" + "SettingLockFullChar": "全", + "SettingLockTempChar": "T" }, "menuGroups": { "PowerMenu": { diff --git a/Translations/translations_definitions.json b/Translations/translations_definitions.json index e473ca34..f6a35739 100644 --- a/Translations/translations_definitions.json +++ b/Translations/translations_definitions.json @@ -165,6 +165,12 @@ "len": 1, "default": "F", "description": "Shown when the locking mode is set to lock all buttons." + }, + { + "id": "SettingLockTempChar", + "len": 1, + "default": "T", + "description": "Shown when the locking mode is set to lock all buttons except for -/B to change the temperature." } ], "menuGroups": [ diff --git a/source/Core/Inc/Settings.h b/source/Core/Inc/Settings.h index fd41e271..63201675 100644 --- a/source/Core/Inc/Settings.h +++ b/source/Core/Inc/Settings.h @@ -114,9 +114,10 @@ typedef enum { } usbpdMode_t; typedef enum { - DISABLED = 0, // Locking buttons is disabled - BOOST = 1, // Locking buttons for Boost mode only - FULL = 2, // Locking buttons for Boost mode AND for Soldering mode + DISABLED = 0, // All buttons are unlocked + BOOST = 1, // All buttons are locked except boost + FULL = 2, // All buttons are locked + TEMP = 3, // All buttons are locked except -/B to change the temperature } lockingMode_t; /* Selection of the soldering tip diff --git a/source/Core/Inc/Translation.h b/source/Core/Inc/Translation.h index c8ad9019..bee25232 100644 --- a/source/Core/Inc/Translation.h +++ b/source/Core/Inc/Translation.h @@ -147,6 +147,7 @@ struct TranslationIndexTable { uint16_t SettingStartSleepOffChar; uint16_t SettingLockBoostChar; uint16_t SettingLockFullChar; + uint16_t SettingLockTempChar; uint16_t USBPDModeDefault; uint16_t USBPDModeNoDynamic; uint16_t USBPDModeSafe; diff --git a/source/Core/Src/Settings.cpp b/source/Core/Src/Settings.cpp index 49b86153..516a5503 100644 --- a/source/Core/Src/Settings.cpp +++ b/source/Core/Src/Settings.cpp @@ -54,7 +54,7 @@ typedef struct { } SettingConstants; static const SettingConstants settingsConstants[(int)SettingsOptions::SettingsOptionsLength] = { - //{ min, max, increment, default} + //{ min, max, increment, default} { MIN_TEMP_C, MAX_TEMP_F, 5, SOLDERING_TEMP}, // SolderingTemp { MIN_TEMP_C, MAX_TEMP_F, 5, 150}, // SleepTemp { 0, 15, 1, SLEEP_TIME}, // SleepTime @@ -72,7 +72,7 @@ static const SettingConstants settingsConstants[(int)SettingsOptions::SettingsOp { 0, 1, 1, DETAILED_SOLDERING}, // DetailedSoldering { 0, (uint16_t)(HasFahrenheit ? 1 : 0), 1, TEMPERATURE_INF}, // TemperatureInF { 0, 1, 1, DESCRIPTION_SCROLL_SPEED}, // DescriptionScrollSpeed - { 0, 2, 1, LOCKING_MODE}, // LockingMode + { 0, 3, 1, LOCKING_MODE}, // LockingMode { 0, 99, 1, POWER_PULSE_DEFAULT}, // KeepAwakePulse { 1, POWER_PULSE_WAIT_MAX, 1, POWER_PULSE_WAIT_DEFAULT}, // KeepAwakePulseWait { 1, POWER_PULSE_DURATION_MAX, 1, POWER_PULSE_DURATION_DEFAULT}, // KeepAwakePulseDuration diff --git a/source/Core/Src/settingsGUI.cpp b/source/Core/Src/settingsGUI.cpp index cba9853e..533f84f6 100644 --- a/source/Core/Src/settingsGUI.cpp +++ b/source/Core/Src/settingsGUI.cpp @@ -635,6 +635,9 @@ static void displayLockingMode(void) { case lockingMode_t::FULL: OLED::print(translatedString(Tr->SettingLockFullChar), FontStyle::LARGE); break; + case lockingMode_t::TEMP: + OLED::print(translatedString(Tr->SettingLockTempChar), FontStyle::LARGE); + break; default: OLED::drawUnavailableIcon(); break; diff --git a/source/Core/Threads/UI/logic/Soldering.cpp b/source/Core/Threads/UI/logic/Soldering.cpp index 45483d15..fa5ad404 100644 --- a/source/Core/Threads/UI/logic/Soldering.cpp +++ b/source/Core/Threads/UI/logic/Soldering.cpp @@ -35,7 +35,7 @@ OperatingMode handleSolderingButtons(const ButtonState buttons, guiContext *cxt) cxt->scratch_state.state1 = 3; break; case BUTTON_F_LONG: - if (getSettingValue(SettingsOptions::BoostTemp) && (getSettingValue(SettingsOptions::LockingMode) == lockingMode_t::BOOST)) { + if (getSettingValue(SettingsOptions::BoostTemp) && (getSettingValue(SettingsOptions::LockingMode) >= lockingMode_t::BOOST ||)) { cxt->scratch_state.state2 = 1; break; } @@ -65,6 +65,9 @@ OperatingMode handleSolderingButtons(const ButtonState buttons, guiContext *cxt) } break; case BUTTON_F_SHORT: + if (getSettingValue(SettingsOptions::LockingMode) == lockingMode_t::TEMP) { + break; + } case BUTTON_B_SHORT: cxt->transitionMode = TransitionAnimation::Left; return OperatingMode::TemperatureAdjust;