@ -34,19 +34,20 @@
# if HAS_FILAMENT_SENSOR
# if HAS_FILAMENT_SENSOR
# include "../../feature/runout.h"
# include "../../feature/runout.h"
# endif
# endif
//
//
// Change Filament > Change/Unload/Load Filament
// Change Filament > Change/Unload/Load Filament
//
//
static Advanced PauseMode _change_filament_temp_mode ; // = ADVANCED_ PAUSE_MODE_PAUSE_PRINT
static PauseMode _change_filament_temp_mode ; // = PAUSE_MODE_PAUSE_PRINT
static int8_t _change_filament_temp_extruder ; // =0
static int8_t _change_filament_temp_extruder ; // =0
inline PGM_P _change_filament_temp_command ( ) {
inline PGM_P _change_filament_temp_command ( ) {
switch ( _change_filament_temp_mode ) {
switch ( _change_filament_temp_mode ) {
case ADVANCED_ PAUSE_MODE_LOAD_FILAMENT:
case PAUSE_MODE_LOAD_FILAMENT:
return PSTR ( " M701 T%d " ) ;
return PSTR ( " M701 T%d " ) ;
case ADVANCED_ PAUSE_MODE_UNLOAD_FILAMENT:
case PAUSE_MODE_UNLOAD_FILAMENT:
return _change_filament_temp_extruder > = 0 ? PSTR ( " M702 T%d " ) : PSTR ( " M702 ;%d " ) ;
return _change_filament_temp_extruder > = 0 ? PSTR ( " M702 T%d " ) : PSTR ( " M702 ;%d " ) ;
case ADVANCED_ PAUSE_MODE_PAUSE_PRINT:
case PAUSE_MODE_PAUSE_PRINT:
default :
default :
return PSTR ( " M600 B0 T%d " ) ;
return PSTR ( " M600 B0 T%d " ) ;
}
}
@ -63,18 +64,18 @@ inline void _lcd_change_filament_temp_1_func() { _change_filament_temp(ui.pre
inline void _lcd_change_filament_temp_2_func ( ) { _change_filament_temp ( ui . preheat_hotend_temp [ 1 ] ) ; }
inline void _lcd_change_filament_temp_2_func ( ) { _change_filament_temp ( ui . preheat_hotend_temp [ 1 ] ) ; }
inline void _lcd_change_filament_temp_custom_cb ( ) { _change_filament_temp ( thermalManager . temp_hotend [ _change_filament_temp_extruder ] . target ) ; }
inline void _lcd_change_filament_temp_custom_cb ( ) { _change_filament_temp ( thermalManager . temp_hotend [ _change_filament_temp_extruder ] . target ) ; }
static PGM_P change_filament_header ( const Advanced PauseMode mode ) {
static PGM_P change_filament_header ( const PauseMode mode ) {
switch ( mode ) {
switch ( mode ) {
case ADVANCED_ PAUSE_MODE_LOAD_FILAMENT:
case PAUSE_MODE_LOAD_FILAMENT:
return PSTR ( MSG_FILAMENTLOAD ) ;
return PSTR ( MSG_FILAMENTLOAD ) ;
case ADVANCED_ PAUSE_MODE_UNLOAD_FILAMENT:
case PAUSE_MODE_UNLOAD_FILAMENT:
return PSTR ( MSG_FILAMENTUNLOAD ) ;
return PSTR ( MSG_FILAMENTUNLOAD ) ;
default : break ;
default : break ;
}
}
return PSTR ( MSG_FILAMENTCHANGE ) ;
return PSTR ( MSG_FILAMENTCHANGE ) ;
}
}
void _menu_temp_filament_op ( const Advanced PauseMode mode , const int8_t extruder ) {
void _menu_temp_filament_op ( const PauseMode mode , const int8_t extruder ) {
_change_filament_temp_mode = mode ;
_change_filament_temp_mode = mode ;
_change_filament_temp_extruder = extruder ;
_change_filament_temp_extruder = extruder ;
START_MENU ( ) ;
START_MENU ( ) ;
@ -105,28 +106,28 @@ void _menu_temp_filament_op(const AdvancedPauseMode mode, const int8_t extruder)
END_MENU ( ) ;
END_MENU ( ) ;
}
}
# if E_STEPPERS
# if E_STEPPERS
void menu_temp_e0_filament_change ( ) { _menu_temp_filament_op ( ADVANCED_ PAUSE_MODE_PAUSE_PRINT, 0 ) ; }
void menu_temp_e0_filament_change ( ) { _menu_temp_filament_op ( PAUSE_MODE_PAUSE_PRINT, 0 ) ; }
void menu_temp_e0_filament_load ( ) { _menu_temp_filament_op ( ADVANCED_ PAUSE_MODE_LOAD_FILAMENT, 0 ) ; }
void menu_temp_e0_filament_load ( ) { _menu_temp_filament_op ( PAUSE_MODE_LOAD_FILAMENT, 0 ) ; }
void menu_temp_e0_filament_unload ( ) { _menu_temp_filament_op ( ADVANCED_ PAUSE_MODE_UNLOAD_FILAMENT, 0 ) ; }
void menu_temp_e0_filament_unload ( ) { _menu_temp_filament_op ( PAUSE_MODE_UNLOAD_FILAMENT, 0 ) ; }
# if E_STEPPERS > 1
# if E_STEPPERS > 1
void menu_temp_e1_filament_change ( ) { _menu_temp_filament_op ( ADVANCED_ PAUSE_MODE_PAUSE_PRINT, 1 ) ; }
void menu_temp_e1_filament_change ( ) { _menu_temp_filament_op ( PAUSE_MODE_PAUSE_PRINT, 1 ) ; }
void menu_temp_e1_filament_load ( ) { _menu_temp_filament_op ( ADVANCED_ PAUSE_MODE_LOAD_FILAMENT, 1 ) ; }
void menu_temp_e1_filament_load ( ) { _menu_temp_filament_op ( PAUSE_MODE_LOAD_FILAMENT, 1 ) ; }
void menu_temp_e1_filament_unload ( ) { _menu_temp_filament_op ( ADVANCED_ PAUSE_MODE_UNLOAD_FILAMENT, 1 ) ; }
void menu_temp_e1_filament_unload ( ) { _menu_temp_filament_op ( PAUSE_MODE_UNLOAD_FILAMENT, 1 ) ; }
# if ENABLED(FILAMENT_UNLOAD_ALL_EXTRUDERS)
# if ENABLED(FILAMENT_UNLOAD_ALL_EXTRUDERS)
void menu_unload_filament_all_temp ( ) { _menu_temp_filament_op ( ADVANCED_ PAUSE_MODE_UNLOAD_FILAMENT, - 1 ) ; }
void menu_unload_filament_all_temp ( ) { _menu_temp_filament_op ( PAUSE_MODE_UNLOAD_FILAMENT, - 1 ) ; }
# endif
# endif
# if E_STEPPERS > 2
# if E_STEPPERS > 2
void menu_temp_e2_filament_change ( ) { _menu_temp_filament_op ( ADVANCED_ PAUSE_MODE_PAUSE_PRINT, 2 ) ; }
void menu_temp_e2_filament_change ( ) { _menu_temp_filament_op ( PAUSE_MODE_PAUSE_PRINT, 2 ) ; }
void menu_temp_e2_filament_load ( ) { _menu_temp_filament_op ( ADVANCED_ PAUSE_MODE_LOAD_FILAMENT, 2 ) ; }
void menu_temp_e2_filament_load ( ) { _menu_temp_filament_op ( PAUSE_MODE_LOAD_FILAMENT, 2 ) ; }
void menu_temp_e2_filament_unload ( ) { _menu_temp_filament_op ( ADVANCED_ PAUSE_MODE_UNLOAD_FILAMENT, 2 ) ; }
void menu_temp_e2_filament_unload ( ) { _menu_temp_filament_op ( PAUSE_MODE_UNLOAD_FILAMENT, 2 ) ; }
# if E_STEPPERS > 3
# if E_STEPPERS > 3
void menu_temp_e3_filament_change ( ) { _menu_temp_filament_op ( ADVANCED_ PAUSE_MODE_PAUSE_PRINT, 3 ) ; }
void menu_temp_e3_filament_change ( ) { _menu_temp_filament_op ( PAUSE_MODE_PAUSE_PRINT, 3 ) ; }
void menu_temp_e3_filament_load ( ) { _menu_temp_filament_op ( ADVANCED_ PAUSE_MODE_LOAD_FILAMENT, 3 ) ; }
void menu_temp_e3_filament_load ( ) { _menu_temp_filament_op ( PAUSE_MODE_LOAD_FILAMENT, 3 ) ; }
void menu_temp_e3_filament_unload ( ) { _menu_temp_filament_op ( ADVANCED_ PAUSE_MODE_UNLOAD_FILAMENT, 3 ) ; }
void menu_temp_e3_filament_unload ( ) { _menu_temp_filament_op ( PAUSE_MODE_UNLOAD_FILAMENT, 3 ) ; }
# if E_STEPPERS > 4
# if E_STEPPERS > 4
void menu_temp_e4_filament_change ( ) { _menu_temp_filament_op ( ADVANCED_ PAUSE_MODE_PAUSE_PRINT, 4 ) ; }
void menu_temp_e4_filament_change ( ) { _menu_temp_filament_op ( PAUSE_MODE_PAUSE_PRINT, 4 ) ; }
void menu_temp_e4_filament_load ( ) { _menu_temp_filament_op ( ADVANCED_ PAUSE_MODE_LOAD_FILAMENT, 4 ) ; }
void menu_temp_e4_filament_load ( ) { _menu_temp_filament_op ( PAUSE_MODE_LOAD_FILAMENT, 4 ) ; }
void menu_temp_e4_filament_unload ( ) { _menu_temp_filament_op ( ADVANCED_ PAUSE_MODE_UNLOAD_FILAMENT, 4 ) ; }
void menu_temp_e4_filament_unload ( ) { _menu_temp_filament_op ( PAUSE_MODE_UNLOAD_FILAMENT, 4 ) ; }
# endif // E_STEPPERS > 4
# endif // E_STEPPERS > 4
# endif // E_STEPPERS > 3
# endif // E_STEPPERS > 3
# endif // E_STEPPERS > 2
# endif // E_STEPPERS > 2
@ -310,14 +311,13 @@ void _menu_temp_filament_op(const AdvancedPauseMode mode, const int8_t extruder)
}
}
# endif
# endif
static AdvancedPauseMode advanced_pause_mode = ADVANCED_PAUSE_MODE_PAUSE_PRINT ;
static uint8_t hotend_status_extruder = 0 ;
static uint8_t hotend_status_extruder = 0 ;
static PGM_P advanced_ pause_header( ) {
static PGM_P pause_header( ) {
switch ( advanced_ pause_mode) {
switch ( pause_mode) {
case ADVANCED_ PAUSE_MODE_LOAD_FILAMENT:
case PAUSE_MODE_LOAD_FILAMENT:
return PSTR ( MSG_FILAMENT_CHANGE_HEADER_LOAD ) ;
return PSTR ( MSG_FILAMENT_CHANGE_HEADER_LOAD ) ;
case ADVANCED_ PAUSE_MODE_UNLOAD_FILAMENT:
case PAUSE_MODE_UNLOAD_FILAMENT:
return PSTR ( MSG_FILAMENT_CHANGE_HEADER_UNLOAD ) ;
return PSTR ( MSG_FILAMENT_CHANGE_HEADER_UNLOAD ) ;
default : break ;
default : break ;
}
}
@ -340,26 +340,26 @@ static PGM_P advanced_pause_header() {
+ + _thisItemNr ; \
+ + _thisItemNr ; \
} while ( 0 )
} while ( 0 )
void lcd_ advanced_ pause_resume_print( ) {
void lcd_ pause_resume_print( ) {
advanced_ pause_menu_response = ADVANCED_ PAUSE_RESPONSE_RESUME_PRINT;
pause_menu_response = PAUSE_RESPONSE_RESUME_PRINT;
}
}
void lcd_ advanced_ pause_extrude_more( ) {
void lcd_ pause_extrude_more( ) {
advanced_ pause_menu_response = ADVANCED_ PAUSE_RESPONSE_EXTRUDE_MORE;
pause_menu_response = PAUSE_RESPONSE_EXTRUDE_MORE;
}
}
void menu_ advanced_ pause_option( ) {
void menu_ pause_option( ) {
START_MENU ( ) ;
START_MENU ( ) ;
# if LCD_HEIGHT > 2
# if LCD_HEIGHT > 2
STATIC_ITEM ( MSG_FILAMENT_CHANGE_OPTION_HEADER , true , false ) ;
STATIC_ITEM ( MSG_FILAMENT_CHANGE_OPTION_HEADER , true , false ) ;
# endif
# endif
MENU_ITEM ( function , MSG_FILAMENT_CHANGE_OPTION_PURGE , lcd_ advanced_ pause_extrude_more) ;
MENU_ITEM ( function , MSG_FILAMENT_CHANGE_OPTION_PURGE , lcd_ pause_extrude_more) ;
# if HAS_FILAMENT_SENSOR
# if HAS_FILAMENT_SENSOR
if ( runout . filament_ran_out )
if ( runout . filament_ran_out )
MENU_ITEM_EDIT_CALLBACK ( bool , MSG_RUNOUT_SENSOR , & runout . enabled , runout . reset ) ;
MENU_ITEM_EDIT_CALLBACK ( bool , MSG_RUNOUT_SENSOR , & runout . enabled , runout . reset ) ;
else
else
# endif
# endif
MENU_ITEM ( function , MSG_FILAMENT_CHANGE_OPTION_RESUME , lcd_ advanced_ pause_resume_print) ;
MENU_ITEM ( function , MSG_FILAMENT_CHANGE_OPTION_RESUME , lcd_ pause_resume_print) ;
END_MENU ( ) ;
END_MENU ( ) ;
}
}
@ -367,9 +367,9 @@ void menu_advanced_pause_option() {
// ADVANCED_PAUSE_FEATURE message screens
// ADVANCED_PAUSE_FEATURE message screens
//
//
void _lcd_ advanced_ pause_message( PGM_P const msg1 , PGM_P const msg2 = NULL , PGM_P const msg3 = NULL ) {
void _lcd_ pause_message( PGM_P const msg1 , PGM_P const msg2 = NULL , PGM_P const msg3 = NULL ) {
START_SCREEN ( ) ;
START_SCREEN ( ) ;
STATIC_ITEM_P ( advanced_ pause_header( ) , true , true ) ;
STATIC_ITEM_P ( pause_header( ) , true , true ) ;
STATIC_ITEM_P ( msg1 ) ;
STATIC_ITEM_P ( msg1 ) ;
if ( msg2 ) STATIC_ITEM_P ( msg2 ) ;
if ( msg2 ) STATIC_ITEM_P ( msg2 ) ;
if ( msg3 ) STATIC_ITEM_P ( msg3 ) ;
if ( msg3 ) STATIC_ITEM_P ( msg3 ) ;
@ -378,8 +378,19 @@ void _lcd_advanced_pause_message(PGM_P const msg1, PGM_P const msg2=NULL, PGM_P
END_SCREEN ( ) ;
END_SCREEN ( ) ;
}
}
void lcd_advanced_pause_init_message ( ) {
void lcd_pause_pausing_message ( ) {
_lcd_advanced_pause_message ( PSTR ( MSG_FILAMENT_CHANGE_INIT_1 )
_lcd_pause_message ( PSTR ( MSG_PAUSE_PRINT_INIT_1 )
# ifdef MSG_PAUSE_PRINT_INIT_2
, PSTR ( MSG_PAUSE_PRINT_INIT_2 )
# ifdef MSG_PAUSE_PRINT_INIT_3
, PSTR ( MSG_PAUSE_PRINT_INIT_3 )
# endif
# endif
) ;
}
void lcd_pause_changing_message ( ) {
_lcd_pause_message ( PSTR ( MSG_FILAMENT_CHANGE_INIT_1 )
# ifdef MSG_FILAMENT_CHANGE_INIT_2
# ifdef MSG_FILAMENT_CHANGE_INIT_2
, PSTR ( MSG_FILAMENT_CHANGE_INIT_2 )
, PSTR ( MSG_FILAMENT_CHANGE_INIT_2 )
# ifdef MSG_FILAMENT_CHANGE_INIT_3
# ifdef MSG_FILAMENT_CHANGE_INIT_3
@ -389,8 +400,8 @@ void lcd_advanced_pause_init_message() {
) ;
) ;
}
}
void lcd_ advanced_ pause_unload_message( ) {
void lcd_ pause_unload_message( ) {
_lcd_ advanced_ pause_message( PSTR ( MSG_FILAMENT_CHANGE_UNLOAD_1 )
_lcd_ pause_message( PSTR ( MSG_FILAMENT_CHANGE_UNLOAD_1 )
# ifdef MSG_FILAMENT_CHANGE_UNLOAD_2
# ifdef MSG_FILAMENT_CHANGE_UNLOAD_2
, PSTR ( MSG_FILAMENT_CHANGE_UNLOAD_2 )
, PSTR ( MSG_FILAMENT_CHANGE_UNLOAD_2 )
# ifdef MSG_FILAMENT_CHANGE_UNLOAD_3
# ifdef MSG_FILAMENT_CHANGE_UNLOAD_3
@ -400,8 +411,8 @@ void lcd_advanced_pause_unload_message() {
) ;
) ;
}
}
void lcd_ advanced_ pause_heating_message( ) {
void lcd_ pause_heating_message( ) {
_lcd_ advanced_ pause_message( PSTR ( MSG_FILAMENT_CHANGE_HEATING_1 )
_lcd_ pause_message( PSTR ( MSG_FILAMENT_CHANGE_HEATING_1 )
# ifdef MSG_FILAMENT_CHANGE_HEATING_2
# ifdef MSG_FILAMENT_CHANGE_HEATING_2
, PSTR ( MSG_FILAMENT_CHANGE_HEATING_2 )
, PSTR ( MSG_FILAMENT_CHANGE_HEATING_2 )
# ifdef MSG_FILAMENT_CHANGE_HEATING_3
# ifdef MSG_FILAMENT_CHANGE_HEATING_3
@ -411,8 +422,8 @@ void lcd_advanced_pause_heating_message() {
) ;
) ;
}
}
void lcd_ advanced_ pause_heat_message( ) {
void lcd_ pause_heat_message( ) {
_lcd_ advanced_ pause_message( PSTR ( MSG_FILAMENT_CHANGE_HEAT_1 )
_lcd_ pause_message( PSTR ( MSG_FILAMENT_CHANGE_HEAT_1 )
# ifdef MSG_FILAMENT_CHANGE_HEAT_2
# ifdef MSG_FILAMENT_CHANGE_HEAT_2
, PSTR ( MSG_FILAMENT_CHANGE_HEAT_2 )
, PSTR ( MSG_FILAMENT_CHANGE_HEAT_2 )
# ifdef MSG_FILAMENT_CHANGE_HEAT_3
# ifdef MSG_FILAMENT_CHANGE_HEAT_3
@ -422,8 +433,8 @@ void lcd_advanced_pause_heat_message() {
) ;
) ;
}
}
void lcd_ advanced_ pause_insert_message( ) {
void lcd_ pause_insert_message( ) {
_lcd_ advanced_ pause_message( PSTR ( MSG_FILAMENT_CHANGE_INSERT_1 )
_lcd_ pause_message( PSTR ( MSG_FILAMENT_CHANGE_INSERT_1 )
# ifdef MSG_FILAMENT_CHANGE_INSERT_2
# ifdef MSG_FILAMENT_CHANGE_INSERT_2
, PSTR ( MSG_FILAMENT_CHANGE_INSERT_2 )
, PSTR ( MSG_FILAMENT_CHANGE_INSERT_2 )
# ifdef MSG_FILAMENT_CHANGE_INSERT_3
# ifdef MSG_FILAMENT_CHANGE_INSERT_3
@ -433,8 +444,8 @@ void lcd_advanced_pause_insert_message() {
) ;
) ;
}
}
void lcd_ advanced_ pause_load_message( ) {
void lcd_ pause_load_message( ) {
_lcd_ advanced_ pause_message( PSTR ( MSG_FILAMENT_CHANGE_LOAD_1 )
_lcd_ pause_message( PSTR ( MSG_FILAMENT_CHANGE_LOAD_1 )
# ifdef MSG_FILAMENT_CHANGE_LOAD_2
# ifdef MSG_FILAMENT_CHANGE_LOAD_2
, PSTR ( MSG_FILAMENT_CHANGE_LOAD_2 )
, PSTR ( MSG_FILAMENT_CHANGE_LOAD_2 )
# ifdef MSG_FILAMENT_CHANGE_LOAD_3
# ifdef MSG_FILAMENT_CHANGE_LOAD_3
@ -444,8 +455,8 @@ void lcd_advanced_pause_load_message() {
) ;
) ;
}
}
void lcd_ advanced_ pause_waiting_message( ) {
void lcd_ pause_waiting_message( ) {
_lcd_ advanced_ pause_message( PSTR ( MSG_ADVANCED_PAUSE_WAITING_1 )
_lcd_ pause_message( PSTR ( MSG_ADVANCED_PAUSE_WAITING_1 )
# ifdef MSG_ADVANCED_PAUSE_WAITING_2
# ifdef MSG_ADVANCED_PAUSE_WAITING_2
, PSTR ( MSG_ADVANCED_PAUSE_WAITING_2 )
, PSTR ( MSG_ADVANCED_PAUSE_WAITING_2 )
# ifdef MSG_ADVANCED_PAUSE_WAITING_3
# ifdef MSG_ADVANCED_PAUSE_WAITING_3
@ -455,8 +466,8 @@ void lcd_advanced_pause_waiting_message() {
) ;
) ;
}
}
void lcd_ advanced_ pause_resume_message( ) {
void lcd_ pause_resume_message( ) {
_lcd_ advanced_ pause_message( PSTR ( MSG_FILAMENT_CHANGE_RESUME_1 )
_lcd_ pause_message( PSTR ( MSG_FILAMENT_CHANGE_RESUME_1 )
# ifdef MSG_FILAMENT_CHANGE_RESUME_2
# ifdef MSG_FILAMENT_CHANGE_RESUME_2
, PSTR ( MSG_FILAMENT_CHANGE_RESUME_2 )
, PSTR ( MSG_FILAMENT_CHANGE_RESUME_2 )
# ifdef MSG_FILAMENT_CHANGE_RESUME_3
# ifdef MSG_FILAMENT_CHANGE_RESUME_3
@ -466,8 +477,8 @@ void lcd_advanced_pause_resume_message() {
) ;
) ;
}
}
void lcd_ advanced_ pause_purge_message( ) {
void lcd_ pause_purge_message( ) {
_lcd_ advanced_ pause_message(
_lcd_ pause_message(
# if ENABLED(ADVANCED_PAUSE_CONTINUOUS_PURGE)
# if ENABLED(ADVANCED_PAUSE_CONTINUOUS_PURGE)
PSTR ( MSG_FILAMENT_CHANGE_CONT_PURGE_1 )
PSTR ( MSG_FILAMENT_CHANGE_CONT_PURGE_1 )
# ifdef MSG_FILAMENT_CHANGE_CONT_PURGE_2
# ifdef MSG_FILAMENT_CHANGE_CONT_PURGE_2
@ -488,31 +499,32 @@ void lcd_advanced_pause_purge_message() {
) ;
) ;
}
}
FORCE_INLINE screenFunc_t ap_message_screen ( const Advanced PauseMessage message ) {
FORCE_INLINE screenFunc_t ap_message_screen ( const PauseMessage message ) {
switch ( message ) {
switch ( message ) {
case ADVANCED_PAUSE_MESSAGE_INIT : return lcd_advanced_pause_init_message ;
case PAUSE_MESSAGE_PAUSING : return lcd_pause_pausing_message ;
case ADVANCED_PAUSE_MESSAGE_UNLOAD : return lcd_advanced_pause_unload_message ;
case PAUSE_MESSAGE_CHANGING : return lcd_pause_changing_message ;
case ADVANCED_PAUSE_MESSAGE_WAITING : return lcd_advanced_pause_waiting_message ;
case PAUSE_MESSAGE_UNLOAD : return lcd_pause_unload_message ;
case ADVANCED_PAUSE_MESSAGE_INSERT : return lcd_advanced_pause_insert_message ;
case PAUSE_MESSAGE_WAITING : return lcd_pause_waiting_message ;
case ADVANCED_PAUSE_MESSAGE_LOAD : return lcd_advanced_pause_load_message ;
case PAUSE_MESSAGE_INSERT : return lcd_pause_insert_message ;
case ADVANCED_PAUSE_MESSAGE_PURGE : return lcd_advanced_pause_purge_message ;
case PAUSE_MESSAGE_LOAD : return lcd_pause_load_message ;
case ADVANCED_PAUSE_MESSAGE_RESUME : return lcd_advanced_pause_resume_message ;
case PAUSE_MESSAGE_PURGE : return lcd_pause_purge_message ;
case ADVANCED_PAUSE_MESSAGE_HEAT : return lcd_advanced_pause_heat_message ;
case PAUSE_MESSAGE_RESUME : return lcd_pause_resume_message ;
case ADVANCED_PAUSE_MESSAGE_HEATING : return lcd_advanced_pause_heating_message ;
case PAUSE_MESSAGE_HEAT : return lcd_pause_heat_message ;
case ADVANCED_PAUSE_MESSAGE_OPTION : advanced_pause_menu_response = ADVANCED_PAUSE_RESPONSE_WAIT_FOR ;
case PAUSE_MESSAGE_HEATING : return lcd_pause_heating_message ;
return menu_advanced_pause_option ;
case PAUSE_MESSAGE_OPTION : pause_menu_response = PAUSE_RESPONSE_WAIT_FOR ;
case ADVANCED_PAUSE_MESSAGE_STATUS :
return menu_pause_option ;
case PAUSE_MESSAGE_STATUS :
default : break ;
default : break ;
}
}
return NULL ;
return NULL ;
}
}
void lcd_ advanced_ pause_show_message(
void lcd_ pause_show_message(
const Advanced PauseMessage message ,
const PauseMessage message ,
const Advanced PauseMode mode /*= ADVANCED_ PAUSE_MODE_SAME*/,
const PauseMode mode /*= PAUSE_MODE_SAME*/,
const uint8_t extruder /*=active_extruder*/
const uint8_t extruder /*=active_extruder*/
) {
) {
if ( mode ! = ADVANCED_ PAUSE_MODE_SAME) advanced_ pause_mode = mode ;
if ( mode ! = PAUSE_MODE_SAME) pause_mode = mode ;
hotend_status_extruder = extruder ;
hotend_status_extruder = extruder ;
const screenFunc_t next_screen = ap_message_screen ( message ) ;
const screenFunc_t next_screen = ap_message_screen ( message ) ;
if ( next_screen ) {
if ( next_screen ) {