diff --git a/Firmware/Marlin_main.cpp b/Firmware/Marlin_main.cpp index 9d641c674..33074b714 100644 --- a/Firmware/Marlin_main.cpp +++ b/Firmware/Marlin_main.cpp @@ -6816,7 +6816,7 @@ if((eSoundMode==e_SOUND_MODE_LOUD)||(eSoundMode==e_SOUND_MODE_ONCE)) } else { if (*(strchr_pointer + index) == '?') { - tmp_extruder = choose_extruder_menu(); + tmp_extruder = choose_menu_P(_T(MSG_CHOOSE_EXTRUDER), _T(MSG_EXTRUDER)); } else { tmp_extruder = code_value(); diff --git a/Firmware/ultralcd.cpp b/Firmware/ultralcd.cpp index 60dfbca31..3f05a628d 100644 --- a/Firmware/ultralcd.cpp +++ b/Firmware/ultralcd.cpp @@ -4969,7 +4969,7 @@ static char snmm_stop_print_menu() { //menu for choosing which filaments will be } -char choose_extruder_menu() +char choose_menu_P(const char *header, const char *item) { int items_no = mmu_enabled?5:4; int first = 0; @@ -4979,17 +4979,17 @@ char choose_extruder_menu() enc_dif = lcd_encoder_diff; lcd_clear(); - lcd_puts_P(_T(MSG_CHOOSE_EXTRUDER)); + lcd_puts_P(header); lcd_set_cursor(0, 1); lcd_print(">"); for (int i = 0; i < 3; i++) { - lcd_puts_at_P(1, i + 1, _T(MSG_EXTRUDER)); + lcd_puts_at_P(1, i + 1, item); } KEEPALIVE_STATE(PAUSED_FOR_USER); while (1) { for (int i = 0; i < 3; i++) { - lcd_set_cursor(2 + strlen_P(_T(MSG_EXTRUDER)), i+1); + lcd_set_cursor(2 + strlen_P(item), i+1); lcd_print(first + i + 1); } @@ -5012,9 +5012,9 @@ char choose_extruder_menu() if (first < items_no - 3) { first++; lcd_clear(); - lcd_puts_P(_T(MSG_CHOOSE_EXTRUDER)); + lcd_puts_P(header); for (int i = 0; i < 3; i++) { - lcd_puts_at_P(1, i + 1, _T(MSG_EXTRUDER)); + lcd_puts_at_P(1, i + 1, item); } } } @@ -5024,9 +5024,9 @@ char choose_extruder_menu() if (first > 0) { first--; lcd_clear(); - lcd_puts_P(_T(MSG_CHOOSE_EXTRUDER)); + lcd_puts_P(header); for (int i = 0; i < 3; i++) { - lcd_puts_at_P(1, i + 1, _T(MSG_EXTRUDER)); + lcd_puts_at_P(1, i + 1, item); } } } diff --git a/Firmware/ultralcd.h b/Firmware/ultralcd.h index 113f6f701..20c1707ab 100644 --- a/Firmware/ultralcd.h +++ b/Firmware/ultralcd.h @@ -152,7 +152,7 @@ bool lcd_wait_for_pinda(float temp); void bowden_menu(); char reset_menu(); -char choose_extruder_menu(); +char choose_menu_P(const char *header, const char *item); void lcd_pinda_calibration_menu(); void lcd_calibrate_pinda();