From 822c3da3ba8677e257aaba55f1d638f4c6e1a90d Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Sun, 26 Dec 2021 01:26:26 +0100 Subject: [PATCH 1/7] tackling #1140 https://github.com/Ralim/IronOS/issues/1140 --- source/Core/Src/gui.cpp | 71 +++++++++++++++++++++-------------------- 1 file changed, 36 insertions(+), 35 deletions(-) diff --git a/source/Core/Src/gui.cpp b/source/Core/Src/gui.cpp index 73ba8ed2..a6903674 100644 --- a/source/Core/Src/gui.cpp +++ b/source/Core/Src/gui.cpp @@ -18,6 +18,7 @@ void gui_Menu(const menuitem *menu); #ifdef POW_DC static void settings_displayInputVRange(void); +static bool settings_showInputVOptions(void); static void settings_displayInputMinVRange(void); #endif #ifdef POW_QC @@ -26,6 +27,7 @@ static void settings_displayQCInputV(void); #if POW_PD static void settings_displayPDNegTimeout(void); #endif +static bool settings_showSleepOptions(void); #ifndef NO_SLEEP_MODE static bool settings_setSleepTemp(void); static void settings_displaySleepTemp(void); @@ -59,6 +61,7 @@ static void settings_displayReverseButtonTempChangeEnabled(void); static void settings_displayTempChangeShortStep(void); static void settings_displayTempChangeLongStep(void); static void settings_displayPowerPulse(void); +static bool settings_displayAnimationOptions(void); static void settings_displayAnimationSpeed(void); static void settings_displayAnimationLoop(void); static void settings_displayPowerPulseWait(void); @@ -153,8 +156,8 @@ const menuitem powerMenu[] = { * Power Source */ #ifdef POW_DC - {SETTINGS_DESC(SettingsItemIndex::DCInCutoff), nullptr, settings_displayInputVRange, nullptr, SettingsOptions::MinDCVoltageCells}, /*Voltage input*/ - {SETTINGS_DESC(SettingsItemIndex::MinVolCell), nullptr, settings_displayInputMinVRange, nullptr, SettingsOptions::MinVoltageCells}, /*Minimum voltage input*/ + {SETTINGS_DESC(SettingsItemIndex::DCInCutoff), nullptr, settings_displayInputVRange, nullptr, SettingsOptions::MinDCVoltageCells}, /*Voltage input*/ + {SETTINGS_DESC(SettingsItemIndex::MinVolCell), nullptr, settings_displayInputMinVRange, settings_showInputVOptions, SettingsOptions::MinVoltageCells}, /*Minimum voltage input*/ #endif #ifdef POW_QC {SETTINGS_DESC(SettingsItemIndex::QCMaxVoltage), nullptr, settings_displayQCInputV, nullptr, SettingsOptions::QCIdealVoltage}, /*Voltage input*/ @@ -199,28 +202,28 @@ const menuitem UIMenu[] = { {SETTINGS_DESC(SettingsItemIndex::CooldownBlink), nullptr, settings_displayCoolingBlinkEnabled, nullptr, SettingsOptions::CoolingTempBlink}, /*Cooling blink warning*/ {SETTINGS_DESC(SettingsItemIndex::ScrollingSpeed), nullptr, settings_displayScrollSpeed, nullptr, SettingsOptions::DescriptionScrollSpeed}, /*Scroll Speed for descriptions*/ {SETTINGS_DESC(SettingsItemIndex::ReverseButtonTempChange), nullptr, settings_displayReverseButtonTempChangeEnabled, nullptr, - SettingsOptions::ReverseButtonTempChangeEnabled}, /* Reverse Temp change buttons + - */ - {SETTINGS_DESC(SettingsItemIndex::AnimSpeed), nullptr, settings_displayAnimationSpeed, nullptr, SettingsOptions::AnimationSpeed}, /*Animation Speed adjustment */ - {SETTINGS_DESC(SettingsItemIndex::AnimLoop), nullptr, settings_displayAnimationLoop, nullptr, SettingsOptions::AnimationLoop}, /*Animation Loop switch */ - {SETTINGS_DESC(SettingsItemIndex::Brightness), nullptr, settings_displayBrightnessLevel, nullptr, SettingsOptions::OLEDBrightness}, /*Brightness Level*/ - {SETTINGS_DESC(SettingsItemIndex::ColourInversion), nullptr, settings_displayInvertColor, nullptr, SettingsOptions::OLEDInversion}, /*Invert screen colour*/ - {SETTINGS_DESC(SettingsItemIndex::AdvancedIdle), nullptr, settings_displayAdvancedIDLEScreens, nullptr, SettingsOptions::DetailedIDLE}, /* Advanced idle screen*/ - {SETTINGS_DESC(SettingsItemIndex::AdvancedSoldering), nullptr, settings_displayAdvancedSolderingScreens, nullptr, SettingsOptions::DetailedSoldering}, /* Advanced soldering screen*/ - {0, nullptr, nullptr, nullptr, SettingsOptions::SettingsOptionsLength} // end of menu marker. DO NOT REMOVE + SettingsOptions::ReverseButtonTempChangeEnabled}, /* Reverse Temp change buttons + - */ + {SETTINGS_DESC(SettingsItemIndex::AnimSpeed), nullptr, settings_displayAnimationSpeed, nullptr, SettingsOptions::AnimationSpeed}, /*Animation Speed adjustment */ + {SETTINGS_DESC(SettingsItemIndex::AnimLoop), nullptr, settings_displayAnimationLoop, settings_displayAnimationOptions, SettingsOptions::AnimationLoop}, /*Animation Loop switch */ + {SETTINGS_DESC(SettingsItemIndex::Brightness), nullptr, settings_displayBrightnessLevel, nullptr, SettingsOptions::OLEDBrightness}, /*Brightness Level*/ + {SETTINGS_DESC(SettingsItemIndex::ColourInversion), nullptr, settings_displayInvertColor, nullptr, SettingsOptions::OLEDInversion}, /*Invert screen colour*/ + {SETTINGS_DESC(SettingsItemIndex::AdvancedIdle), nullptr, settings_displayAdvancedIDLEScreens, nullptr, SettingsOptions::DetailedIDLE}, /* Advanced idle screen*/ + {SETTINGS_DESC(SettingsItemIndex::AdvancedSoldering), nullptr, settings_displayAdvancedSolderingScreens, nullptr, SettingsOptions::DetailedSoldering}, /* Advanced soldering screen*/ + {0, nullptr, nullptr, nullptr, SettingsOptions::SettingsOptionsLength} // end of menu marker. DO NOT REMOVE }; const menuitem PowerSavingMenu[] = { -/* - * Sleep Temp - * Sleep Time - * Shutdown Time - * Motion Sensitivity - */ -#ifndef NO_SLEEP_MODE - {SETTINGS_DESC(SettingsItemIndex::SleepTemperature), settings_setSleepTemp, settings_displaySleepTemp, nullptr, SettingsOptions::SettingsOptionsLength}, /*Sleep Temp*/ - {SETTINGS_DESC(SettingsItemIndex::SleepTimeout), nullptr, settings_displaySleepTime, nullptr, SettingsOptions::SleepTime}, /*Sleep Time*/ -#endif - {SETTINGS_DESC(SettingsItemIndex::ShutdownTimeout), nullptr, settings_displayShutdownTime, nullptr, SettingsOptions::ShutdownTime}, /*Shutdown Time*/ + /* + * Motion Sensitivity + * Sleep Temp + * Sleep Time + * Shutdown Time + */ {SETTINGS_DESC(SettingsItemIndex::MotionSensitivity), nullptr, settings_displaySensitivity, nullptr, SettingsOptions::Sensitivity}, /* Motion Sensitivity*/ +#ifndef NO_SLEEP_MODE + {SETTINGS_DESC(SettingsItemIndex::SleepTemperature), settings_setSleepTemp, settings_displaySleepTemp, settings_showSleepOptions, SettingsOptions::SettingsOptionsLength}, /*Sleep Temp*/ + {SETTINGS_DESC(SettingsItemIndex::SleepTimeout), nullptr, settings_displaySleepTime, settings_showSleepOptions, SettingsOptions::SleepTime}, /*Sleep Time*/ +#endif + {SETTINGS_DESC(SettingsItemIndex::ShutdownTimeout), nullptr, settings_displayShutdownTime, settings_showSleepOptions, SettingsOptions::ShutdownTime}, /*Shutdown Time*/ #ifdef HALL_SENSOR {SETTINGS_DESC(SettingsItemIndex::HallEffSensitivity), nullptr, settings_displayHallEffect, nullptr, SettingsOptions::HallEffectSensitivity}, /* HallEffect Sensitivity*/ #endif @@ -309,16 +312,12 @@ static void settings_displayInputVRange(void) { } } +static bool settings_showInputVOptions(void) { return getSettingValue(SettingsOptions::MinDCVoltageCells) > 0; } static void settings_displayInputMinVRange(void) { - if (getSettingValue(SettingsOptions::MinDCVoltageCells)) { - printShortDescription(SettingsItemIndex::MinVolCell, 4); - OLED::printNumber(getSettingValue(SettingsOptions::MinVoltageCells) / 10, 2, FontStyle::LARGE); - OLED::print(SymbolDot, FontStyle::LARGE); - OLED::printNumber(getSettingValue(SettingsOptions::MinVoltageCells) % 10, 1, FontStyle::LARGE); - } else { - printShortDescription(SettingsItemIndex::MinVolCell, 5); - OLED::print(translatedString(Tr->SettingNAChar), FontStyle::LARGE); - } + printShortDescription(SettingsItemIndex::MinVolCell, 4); + OLED::printNumber(getSettingValue(SettingsOptions::MinVoltageCells) / 10, 2, FontStyle::LARGE); + OLED::print(SymbolDot, FontStyle::LARGE); + OLED::printNumber(getSettingValue(SettingsOptions::MinVoltageCells) % 10, 1, FontStyle::LARGE); } #endif #ifdef POW_QC @@ -368,6 +367,12 @@ static bool settings_setSleepTemp(void) { } } +static void settings_displaySensitivity(void) { + printShortDescription(SettingsItemIndex::MotionSensitivity, 7); + OLED::printNumber(getSettingValue(SettingsOptions::Sensitivity), 1, FontStyle::LARGE, false); +} + +static bool settings_showSleepOptions(void) { return getSettingValue(SettingsOptions::Sensitivity) > 0; } static void settings_displaySleepTemp(void) { printShortDescription(SettingsItemIndex::SleepTemperature, 5); OLED::printNumber(getSettingValue(SettingsOptions::SleepTemp), 3, FontStyle::LARGE); @@ -435,11 +440,6 @@ static void settings_displayTempF(void) { OLED::print((getSettingValue(SettingsOptions::TemperatureInF)) ? SymbolDegF : SymbolDegC, FontStyle::LARGE); } -static void settings_displaySensitivity(void) { - printShortDescription(SettingsItemIndex::MotionSensitivity, 7); - OLED::printNumber(getSettingValue(SettingsOptions::Sensitivity), 1, FontStyle::LARGE, false); -} - static void settings_displayAdvancedSolderingScreens(void) { printShortDescription(SettingsItemIndex::AdvancedSoldering, 7); OLED::drawCheckbox(getSettingValue(SettingsOptions::DetailedSoldering)); @@ -705,6 +705,7 @@ static void settings_displayPowerPulse(void) { } } +static bool settings_displayAnimationOptions(void) { return getSettingValue(SettingsOptions::AnimationSpeed) > 0; } static void settings_displayAnimationLoop(void) { printShortDescription(SettingsItemIndex::AnimLoop, 7); OLED::drawCheckbox(getSettingValue(SettingsOptions::AnimationLoop)); From c3406112cdb2ac11f9cab99db040774f4c884b86 Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Sun, 26 Dec 2021 14:59:10 +0100 Subject: [PATCH 2/7] Update gui.cpp --- source/Core/Src/gui.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/Core/Src/gui.cpp b/source/Core/Src/gui.cpp index a6903674..08ad9e58 100644 --- a/source/Core/Src/gui.cpp +++ b/source/Core/Src/gui.cpp @@ -27,8 +27,8 @@ static void settings_displayQCInputV(void); #if POW_PD static void settings_displayPDNegTimeout(void); #endif -static bool settings_showSleepOptions(void); #ifndef NO_SLEEP_MODE +static bool settings_showSleepOptions(void); static bool settings_setSleepTemp(void); static void settings_displaySleepTemp(void); static void settings_displaySleepTime(void); From 30b632fc1984d68954fade9f18059a1ca6f6457e Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Sun, 26 Dec 2021 15:38:05 +0100 Subject: [PATCH 3/7] fix --- source/Core/Src/gui.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/source/Core/Src/gui.cpp b/source/Core/Src/gui.cpp index 08ad9e58..5a2196e7 100644 --- a/source/Core/Src/gui.cpp +++ b/source/Core/Src/gui.cpp @@ -28,13 +28,13 @@ static void settings_displayQCInputV(void); static void settings_displayPDNegTimeout(void); #endif #ifndef NO_SLEEP_MODE +static void settings_displaySensitivity(void); static bool settings_showSleepOptions(void); static bool settings_setSleepTemp(void); static void settings_displaySleepTemp(void); static void settings_displaySleepTime(void); #endif static void settings_displayShutdownTime(void); -static void settings_displaySensitivity(void); static bool settings_setTempF(void); static void settings_displayTempF(void); static void settings_displayAdvancedSolderingScreens(void); @@ -222,8 +222,8 @@ const menuitem PowerSavingMenu[] = { #ifndef NO_SLEEP_MODE {SETTINGS_DESC(SettingsItemIndex::SleepTemperature), settings_setSleepTemp, settings_displaySleepTemp, settings_showSleepOptions, SettingsOptions::SettingsOptionsLength}, /*Sleep Temp*/ {SETTINGS_DESC(SettingsItemIndex::SleepTimeout), nullptr, settings_displaySleepTime, settings_showSleepOptions, SettingsOptions::SleepTime}, /*Sleep Time*/ -#endif {SETTINGS_DESC(SettingsItemIndex::ShutdownTimeout), nullptr, settings_displayShutdownTime, settings_showSleepOptions, SettingsOptions::ShutdownTime}, /*Shutdown Time*/ +#endif #ifdef HALL_SENSOR {SETTINGS_DESC(SettingsItemIndex::HallEffSensitivity), nullptr, settings_displayHallEffect, nullptr, SettingsOptions::HallEffectSensitivity}, /* HallEffect Sensitivity*/ #endif From c2d9631efde3ed3c049195b552c9f762bf846119 Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Sun, 26 Dec 2021 15:42:33 +0100 Subject: [PATCH 4/7] Update gui.cpp --- source/Core/Src/gui.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/Core/Src/gui.cpp b/source/Core/Src/gui.cpp index 5a2196e7..a2e59c24 100644 --- a/source/Core/Src/gui.cpp +++ b/source/Core/Src/gui.cpp @@ -222,7 +222,7 @@ const menuitem PowerSavingMenu[] = { #ifndef NO_SLEEP_MODE {SETTINGS_DESC(SettingsItemIndex::SleepTemperature), settings_setSleepTemp, settings_displaySleepTemp, settings_showSleepOptions, SettingsOptions::SettingsOptionsLength}, /*Sleep Temp*/ {SETTINGS_DESC(SettingsItemIndex::SleepTimeout), nullptr, settings_displaySleepTime, settings_showSleepOptions, SettingsOptions::SleepTime}, /*Sleep Time*/ - {SETTINGS_DESC(SettingsItemIndex::ShutdownTimeout), nullptr, settings_displayShutdownTime, settings_showSleepOptions, SettingsOptions::ShutdownTime}, /*Shutdown Time*/ + {SETTINGS_DESC(SettingsItemIndex::ShutdownTimeout), nullptr, settings_displayShutdownTime, settings_showSleepOptions, SettingsOptions::ShutdownTime}, /*Shutdown Time*/ #endif #ifdef HALL_SENSOR {SETTINGS_DESC(SettingsItemIndex::HallEffSensitivity), nullptr, settings_displayHallEffect, nullptr, SettingsOptions::HallEffectSensitivity}, /* HallEffect Sensitivity*/ From 52a13dae270a5e9f519bf62a11a43eb068dcc82d Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Sun, 26 Dec 2021 15:49:32 +0100 Subject: [PATCH 5/7] fix_II --- source/Core/Src/gui.cpp | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/source/Core/Src/gui.cpp b/source/Core/Src/gui.cpp index a2e59c24..dce8eb98 100644 --- a/source/Core/Src/gui.cpp +++ b/source/Core/Src/gui.cpp @@ -218,8 +218,8 @@ const menuitem PowerSavingMenu[] = { * Sleep Time * Shutdown Time */ - {SETTINGS_DESC(SettingsItemIndex::MotionSensitivity), nullptr, settings_displaySensitivity, nullptr, SettingsOptions::Sensitivity}, /* Motion Sensitivity*/ #ifndef NO_SLEEP_MODE + {SETTINGS_DESC(SettingsItemIndex::MotionSensitivity), nullptr, settings_displaySensitivity, nullptr, SettingsOptions::Sensitivity}, /* Motion Sensitivity*/ {SETTINGS_DESC(SettingsItemIndex::SleepTemperature), settings_setSleepTemp, settings_displaySleepTemp, settings_showSleepOptions, SettingsOptions::SettingsOptionsLength}, /*Sleep Temp*/ {SETTINGS_DESC(SettingsItemIndex::SleepTimeout), nullptr, settings_displaySleepTime, settings_showSleepOptions, SettingsOptions::SleepTime}, /*Sleep Time*/ {SETTINGS_DESC(SettingsItemIndex::ShutdownTimeout), nullptr, settings_displayShutdownTime, settings_showSleepOptions, SettingsOptions::ShutdownTime}, /*Shutdown Time*/ @@ -349,6 +349,17 @@ static void settings_displayPDNegTimeout(void) { #endif #ifndef NO_SLEEP_MODE + +static void settings_displayShutdownTime(void) { + printShortDescription(SettingsItemIndex::ShutdownTimeout, 5); + if (getSettingValue(SettingsOptions::ShutdownTime) == 0) { + OLED::print(translatedString(Tr->OffString), FontStyle::LARGE); + } else { + OLED::printNumber(getSettingValue(SettingsOptions::ShutdownTime), 2, FontStyle::LARGE); + OLED::print(SymbolMinutes, FontStyle::LARGE); + } +} + static bool settings_setSleepTemp(void) { // If in C, 10 deg, if in F 20 deg uint16_t temp = getSettingValue(SettingsOptions::SleepTemp); @@ -392,15 +403,6 @@ static void settings_displaySleepTime(void) { } #endif -static void settings_displayShutdownTime(void) { - printShortDescription(SettingsItemIndex::ShutdownTimeout, 5); - if (getSettingValue(SettingsOptions::ShutdownTime) == 0) { - OLED::print(translatedString(Tr->OffString), FontStyle::LARGE); - } else { - OLED::printNumber(getSettingValue(SettingsOptions::ShutdownTime), 2, FontStyle::LARGE); - OLED::print(SymbolMinutes, FontStyle::LARGE); - } -} static bool settings_setTempF(void) { bool res = nextSettingValue(SettingsOptions::TemperatureInF); uint16_t BoostTemp = getSettingValue(SettingsOptions::BoostTemp); From 8f32267340bd159d0122c0d7549dfc47fc2df0d1 Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Sun, 26 Dec 2021 15:52:20 +0100 Subject: [PATCH 6/7] fix_IIa --- source/Core/Src/gui.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/source/Core/Src/gui.cpp b/source/Core/Src/gui.cpp index dce8eb98..15233450 100644 --- a/source/Core/Src/gui.cpp +++ b/source/Core/Src/gui.cpp @@ -212,12 +212,12 @@ const menuitem UIMenu[] = { {0, nullptr, nullptr, nullptr, SettingsOptions::SettingsOptionsLength} // end of menu marker. DO NOT REMOVE }; const menuitem PowerSavingMenu[] = { - /* - * Motion Sensitivity - * Sleep Temp - * Sleep Time - * Shutdown Time - */ +/* + * Motion Sensitivity + * Sleep Temp + * Sleep Time + * Shutdown Time + */ #ifndef NO_SLEEP_MODE {SETTINGS_DESC(SettingsItemIndex::MotionSensitivity), nullptr, settings_displaySensitivity, nullptr, SettingsOptions::Sensitivity}, /* Motion Sensitivity*/ {SETTINGS_DESC(SettingsItemIndex::SleepTemperature), settings_setSleepTemp, settings_displaySleepTemp, settings_showSleepOptions, SettingsOptions::SettingsOptionsLength}, /*Sleep Temp*/ From f34fb531198bd081e3fd10c016c69c92ccd95b9f Mon Sep 17 00:00:00 2001 From: discip <53649486+discip@users.noreply.github.com> Date: Sun, 26 Dec 2021 15:55:11 +0100 Subject: [PATCH 7/7] Update gui.cpp --- source/Core/Src/gui.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/source/Core/Src/gui.cpp b/source/Core/Src/gui.cpp index 15233450..ee905c5f 100644 --- a/source/Core/Src/gui.cpp +++ b/source/Core/Src/gui.cpp @@ -33,8 +33,8 @@ static bool settings_showSleepOptions(void); static bool settings_setSleepTemp(void); static void settings_displaySleepTemp(void); static void settings_displaySleepTime(void); -#endif static void settings_displayShutdownTime(void); +#endif static bool settings_setTempF(void); static void settings_displayTempF(void); static void settings_displayAdvancedSolderingScreens(void);