From dc2d596f40f9fc1b1ee57ddeb15f4655c0f70ac2 Mon Sep 17 00:00:00 2001 From: Yuri D'Elia Date: Tue, 28 Jun 2022 19:33:32 +0200 Subject: [PATCH] Do not allow lcd_updatestatus to be called directly Enfoce the usage of lcd_setalertstatuspgm and lcd_setstatus so what we consistently have alert severities properly set. --- Firmware/temperature.cpp | 4 ++-- Firmware/ultralcd.cpp | 5 +++-- Firmware/ultralcd.h | 9 +++------ 3 files changed, 8 insertions(+), 10 deletions(-) diff --git a/Firmware/temperature.cpp b/Firmware/temperature.cpp index 97ed1be48..5d04e3db7 100755 --- a/Firmware/temperature.cpp +++ b/Firmware/temperature.cpp @@ -1626,12 +1626,12 @@ public: last_alert_sent_to_lcd = LCDALERT_MINTEMPFIXED; break; case States::ShowPleaseRestart: // displaying "Please restart" - lcd_updatestatuspgm(m1); + lcd_setalertstatuspgm(m1); substep(States::ShowMintemp); last_alert_sent_to_lcd = LCDALERT_PLEASERESTART; break; case States::ShowMintemp: // displaying "MINTEMP fixed" - lcd_updatestatuspgm(m2); + lcd_setalertstatuspgm(m2); substep(States::ShowPleaseRestart); last_alert_sent_to_lcd = LCDALERT_MINTEMPFIXED; break; diff --git a/Firmware/ultralcd.cpp b/Firmware/ultralcd.cpp index a7fe85fa9..b952d8e72 100755 --- a/Firmware/ultralcd.cpp +++ b/Firmware/ultralcd.cpp @@ -7956,7 +7956,7 @@ void lcd_setstatus(const char* message) lcd_updatestatus(message); } -void lcd_updatestatuspgm(const char *message){ +static void lcd_updatestatuspgm(const char *message){ strncpy_P(lcd_status_message, message, LCD_WIDTH); lcd_status_message[LCD_WIDTH] = 0; lcd_finishstatus(); @@ -7971,7 +7971,8 @@ void lcd_setstatuspgm(const char* message) lcd_updatestatuspgm(message); } -void lcd_updatestatus(const char *message){ +static void lcd_updatestatus(const char *message) +{ strncpy(lcd_status_message, message, LCD_WIDTH); lcd_status_message[LCD_WIDTH] = 0; lcd_finishstatus(); diff --git a/Firmware/ultralcd.h b/Firmware/ultralcd.h index b7f63ac97..713225d51 100755 --- a/Firmware/ultralcd.h +++ b/Firmware/ultralcd.h @@ -25,13 +25,10 @@ void lcd_setstatuspgm(const char* message); void lcd_setalertstatus(const char* message, uint8_t severity = LCD_STATUS_ALERT); void lcd_setalertstatuspgm(const char* message, uint8_t severity = LCD_STATUS_ALERT); -//! only update the alert message on the main status screen -//! has no sideeffects, may be called multiple times -void lcd_updatestatus(const char *message); -void lcd_updatestatuspgm(const char *message); - -void lcd_reset_alert_level(); +//! Get/reset the current alert level uint8_t get_message_level(); +void lcd_reset_alert_level(); + void lcd_adjust_z(); void lcd_pick_babystep(); void lcd_alright();