Power-off confirm / beep options (#22191)

This commit is contained in:
Cytown
2021-06-24 00:40:32 +08:00
committed by GitHub
parent 48161cf091
commit 0bd113b944
6 changed files with 28 additions and 2 deletions

View File

@@ -1494,6 +1494,13 @@ void MarlinUI::update() {
TERN_(HAS_LCD_MENU, return_to_status());
}
#if BOTH(PSU_CONTROL, PS_OFF_CONFIRM)
void MarlinUI::poweroff() {
queue.inject_P(PSTR("M81"));
goto_previous_screen();
}
#endif
void MarlinUI::flow_fault() {
LCD_ALERTMESSAGEPGM(MSG_FLOWMETER_FAULT);
TERN_(HAS_BUZZER, buzz(1000, 440));

View File

@@ -334,6 +334,10 @@ public:
static void resume_print();
static void flow_fault();
#if BOTH(PSU_CONTROL, PS_OFF_CONFIRM)
static void poweroff();
#endif
#if HAS_WIRED_LCD
static millis_t next_button_update_ms;

View File

@@ -387,7 +387,15 @@ void menu_main() {
//
#if ENABLED(PSU_CONTROL)
if (powersupply_on)
GCODES_ITEM(MSG_SWITCH_PS_OFF, PSTR("M81"));
#if ENABLED(PS_OFF_CONFIRM)
CONFIRM_ITEM(MSG_SWITCH_PS_OFF,
MSG_YES, MSG_NO,
ui.poweroff, ui.goto_previous_screen,
GET_TEXT(MSG_SWITCH_PS_OFF), (const char *)nullptr, PSTR("?")
);
#else
GCODES_ITEM(MSG_SWITCH_PS_OFF, PSTR("M81"));
#endif
else
GCODES_ITEM(MSG_SWITCH_PS_ON, PSTR("M80"));
#endif