diff --git a/Marlin/ultralcd.cpp b/Marlin/ultralcd.cpp index aafbf572bb..1f58183e66 100644 --- a/Marlin/ultralcd.cpp +++ b/Marlin/ultralcd.cpp @@ -129,13 +129,13 @@ uint8_t lcdDrawUpdate = LCDVIEW_CLEAR_CALL_REDRAW; // Set when the LCD needs to #endif // Function pointer to menu functions. - typedef void (*menuFunc_t)(); + typedef void (*screenFunc_t)(); // Different types of actions that can be used in menu items. static void menu_action_back(); - static void menu_action_submenu(menuFunc_t data); + static void menu_action_submenu(screenFunc_t data); static void menu_action_gcode(const char* pgcode); - static void menu_action_function(menuFunc_t data); + static void menu_action_function(screenFunc_t data); static void menu_action_setting_edit_bool(const char* pstr, bool* ptr); static void menu_action_setting_edit_int3(const char* pstr, int* ptr, int minValue, int maxValue); static void menu_action_setting_edit_float3(const char* pstr, float* ptr, float minValue, float maxValue); @@ -145,15 +145,15 @@ uint8_t lcdDrawUpdate = LCDVIEW_CLEAR_CALL_REDRAW; // Set when the LCD needs to static void menu_action_setting_edit_float51(const char* pstr, float* ptr, float minValue, float maxValue); static void menu_action_setting_edit_float52(const char* pstr, float* ptr, float minValue, float maxValue); static void menu_action_setting_edit_long5(const char* pstr, unsigned long* ptr, unsigned long minValue, unsigned long maxValue); - static void menu_action_setting_edit_callback_bool(const char* pstr, bool* ptr, menuFunc_t callbackFunc); - static void menu_action_setting_edit_callback_int3(const char* pstr, int* ptr, int minValue, int maxValue, menuFunc_t callbackFunc); - static void menu_action_setting_edit_callback_float3(const char* pstr, float* ptr, float minValue, float maxValue, menuFunc_t callbackFunc); - static void menu_action_setting_edit_callback_float32(const char* pstr, float* ptr, float minValue, float maxValue, menuFunc_t callbackFunc); - static void menu_action_setting_edit_callback_float43(const char* pstr, float* ptr, float minValue, float maxValue, menuFunc_t callbackFunc); - static void menu_action_setting_edit_callback_float5(const char* pstr, float* ptr, float minValue, float maxValue, menuFunc_t callbackFunc); - static void menu_action_setting_edit_callback_float51(const char* pstr, float* ptr, float minValue, float maxValue, menuFunc_t callbackFunc); - static void menu_action_setting_edit_callback_float52(const char* pstr, float* ptr, float minValue, float maxValue, menuFunc_t callbackFunc); - static void menu_action_setting_edit_callback_long5(const char* pstr, unsigned long* ptr, unsigned long minValue, unsigned long maxValue, menuFunc_t callbackFunc); + static void menu_action_setting_edit_callback_bool(const char* pstr, bool* ptr, screenFunc_t callbackFunc); + static void menu_action_setting_edit_callback_int3(const char* pstr, int* ptr, int minValue, int maxValue, screenFunc_t callbackFunc); + static void menu_action_setting_edit_callback_float3(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc); + static void menu_action_setting_edit_callback_float32(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc); + static void menu_action_setting_edit_callback_float43(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc); + static void menu_action_setting_edit_callback_float5(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc); + static void menu_action_setting_edit_callback_float51(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc); + static void menu_action_setting_edit_callback_float52(const char* pstr, float* ptr, float minValue, float maxValue, screenFunc_t callbackFunc); + static void menu_action_setting_edit_callback_long5(const char* pstr, unsigned long* ptr, unsigned long minValue, unsigned long maxValue, screenFunc_t callbackFunc); #if ENABLED(SDSUPPORT) static void lcd_sdcard_menu(); @@ -286,14 +286,14 @@ uint8_t lcdDrawUpdate = LCDVIEW_CLEAR_CALL_REDRAW; // Set when the LCD needs to #endif typedef struct { - menuFunc_t menu_function; + screenFunc_t menu_function; uint32_t encoder_position; } menuPosition; - menuFunc_t currentMenu = lcd_status_screen; // pointer to the currently active menu handler + screenFunc_t currentScreen = lcd_status_screen; // pointer to the currently active menu handler - menuPosition menu_history[10]; - uint8_t menu_history_depth = 0; + menuPosition screen_history[10]; + uint8_t screen_history_depth = 0; bool ignore_click = false; bool wait_for_unclick; @@ -303,49 +303,49 @@ uint8_t lcdDrawUpdate = LCDVIEW_CLEAR_CALL_REDRAW; // Set when the LCD needs to const char* editLabel; void* editValue; int32_t minEditValue, maxEditValue; - menuFunc_t callbackFunc; // call this after editing + screenFunc_t callbackFunc; // call this after editing /** * General function to go directly to a menu * Remembers the previous position */ - static void lcd_goto_menu(menuFunc_t menu, const bool feedback = false, const uint32_t encoder = 0) { - if (currentMenu != menu) { - currentMenu = menu; + static void lcd_goto_screen(screenFunc_t screen, const bool feedback = false, const uint32_t encoder = 0) { + if (currentScreen != screen) { + currentScreen = screen; lcdDrawUpdate = LCDVIEW_CLEAR_CALL_REDRAW; #if ENABLED(NEWPANEL) encoderPosition = encoder; if (feedback) lcd_quick_feedback(); #endif - if (menu == lcd_status_screen) { + if (screen == lcd_status_screen) { defer_return_to_status = false; - menu_history_depth = 0; + screen_history_depth = 0; } #if ENABLED(LCD_PROGRESS_BAR) // For LCD_PROGRESS_BAR re-initialize custom characters - lcd_set_custom_characters(menu == lcd_status_screen); + lcd_set_custom_characters(screen == lcd_status_screen); #endif } } - static void lcd_return_to_status() { lcd_goto_menu(lcd_status_screen); } + static void lcd_return_to_status() { lcd_goto_screen(lcd_status_screen); } inline void lcd_save_previous_menu() { - if (menu_history_depth < COUNT(menu_history)) { - menu_history[menu_history_depth].menu_function = currentMenu; + if (screen_history_depth < COUNT(screen_history)) { + screen_history[screen_history_depth].menu_function = currentScreen; #if ENABLED(ULTIPANEL) - menu_history[menu_history_depth].encoder_position = encoderPosition; + screen_history[screen_history_depth].encoder_position = encoderPosition; #endif - ++menu_history_depth; + ++screen_history_depth; } } static void lcd_goto_previous_menu(bool feedback=false) { - if (menu_history_depth > 0) { - --menu_history_depth; - lcd_goto_menu(menu_history[menu_history_depth].menu_function, feedback + if (screen_history_depth > 0) { + --screen_history_depth; + lcd_goto_screen(screen_history[screen_history_depth].menu_function, feedback #if ENABLED(ULTIPANEL) - , menu_history[menu_history_depth].encoder_position + , screen_history[screen_history_depth].encoder_position #endif ); } @@ -428,10 +428,10 @@ static void lcd_status_screen() { } if (current_click) { - lcd_goto_menu(lcd_main_menu, true); + lcd_goto_screen(lcd_main_menu, true); lcd_implementation_init( // to maybe revive the LCD if static electricity killed it. #if ENABLED(LCD_PROGRESS_BAR) && ENABLED(ULTIPANEL) - currentMenu == lcd_status_screen + currentScreen == lcd_status_screen #endif ); #if ENABLED(FILAMENT_LCD_DISPLAY) @@ -588,11 +588,11 @@ static void lcd_status_screen() { #if ENABLED(BABYSTEP_XY) static void _lcd_babystep_x() { _lcd_babystep(X_AXIS, PSTR(MSG_BABYSTEPPING_X)); } static void _lcd_babystep_y() { _lcd_babystep(Y_AXIS, PSTR(MSG_BABYSTEPPING_Y)); } - static void lcd_babystep_x() { babysteps_done = 0; lcd_goto_menu(_lcd_babystep_x); } - static void lcd_babystep_y() { babysteps_done = 0; lcd_goto_menu(_lcd_babystep_y); } + static void lcd_babystep_x() { babysteps_done = 0; lcd_goto_screen(_lcd_babystep_x); } + static void lcd_babystep_y() { babysteps_done = 0; lcd_goto_screen(_lcd_babystep_y); } #endif static void _lcd_babystep_z() { _lcd_babystep(Z_AXIS, PSTR(MSG_BABYSTEPPING_Z)); } - static void lcd_babystep_z() { babysteps_done = 0; lcd_goto_menu(_lcd_babystep_z); } + static void lcd_babystep_z() { babysteps_done = 0; lcd_goto_screen(_lcd_babystep_z); } #endif //BABYSTEPPING @@ -970,7 +970,7 @@ static void lcd_status_screen() { debounce_click = true; // ignore multiple "clicks" in a row mbl.set_zigzag_z(_lcd_level_bed_position++, current_position[Z_AXIS]); if (_lcd_level_bed_position == (MESH_NUM_X_POINTS) * (MESH_NUM_Y_POINTS)) { - lcd_goto_menu(_lcd_level_bed_done, true); + lcd_goto_screen(_lcd_level_bed_done, true); current_position[Z_AXIS] = MESH_HOME_SEARCH_Z #if MIN_Z_HEIGHT_FOR_HOMING > 0 @@ -990,7 +990,7 @@ static void lcd_status_screen() { #endif } else { - lcd_goto_menu(_lcd_level_goto_next_point, true); + lcd_goto_screen(_lcd_level_goto_next_point, true); } } } @@ -1031,7 +1031,7 @@ static void lcd_status_screen() { */ static void _lcd_level_goto_next_point() { // Set the menu to display ahead of blocking call - lcd_goto_menu(_lcd_level_bed_moving); + lcd_goto_screen(_lcd_level_bed_moving); // _mbl_goto_xy runs the menu loop until the move is done int8_t px, py; @@ -1039,7 +1039,7 @@ static void lcd_status_screen() { _mbl_goto_xy(mbl.get_probe_x(px), mbl.get_probe_y(py)); // After the blocking function returns, change menus - lcd_goto_menu(_lcd_level_bed_get_z); + lcd_goto_screen(_lcd_level_bed_get_z); } /** @@ -1052,7 +1052,7 @@ static void lcd_status_screen() { _lcd_level_bed_position = 0; current_position[Z_AXIS] = MESH_HOME_SEARCH_Z; planner.set_position_mm(current_position[X_AXIS], current_position[Y_AXIS], current_position[Z_AXIS], current_position[E_AXIS]); - lcd_goto_menu(_lcd_level_goto_next_point, true); + lcd_goto_screen(_lcd_level_goto_next_point, true); } } @@ -1069,7 +1069,7 @@ static void lcd_status_screen() { #endif ; if (axis_homed[X_AXIS] && axis_homed[Y_AXIS] && axis_homed[Z_AXIS]) - lcd_goto_menu(_lcd_level_bed_homing_done); + lcd_goto_screen(_lcd_level_bed_homing_done); } /** @@ -1080,7 +1080,7 @@ static void lcd_status_screen() { axis_homed[X_AXIS] = axis_homed[Y_AXIS] = axis_homed[Z_AXIS] = false; mbl.reset(); enqueue_and_echo_commands_P(PSTR("G28")); - lcd_goto_menu(_lcd_level_bed_homing); + lcd_goto_screen(_lcd_level_bed_homing); } /** @@ -1868,7 +1868,7 @@ static void lcd_status_screen() { * void menu_edit_callback_int3(); // edit int (interactively) with callback on completion * static void _menu_action_setting_edit_int3(const char* pstr, int* ptr, int minValue, int maxValue); * static void menu_action_setting_edit_int3(const char* pstr, int* ptr, int minValue, int maxValue); - * static void menu_action_setting_edit_callback_int3(const char* pstr, int* ptr, int minValue, int maxValue, menuFunc_t callback); // edit int with callback + * static void menu_action_setting_edit_callback_int3(const char* pstr, int* ptr, int minValue, int maxValue, screenFunc_t callback); // edit int with callback * * You can then use one of the menu macros to present the edit interface: * MENU_ITEM_EDIT(int3, MSG_SPEED, &feedrate_multiplier, 10, 999) @@ -1910,11 +1910,11 @@ static void lcd_status_screen() { } \ static void menu_action_setting_edit_ ## _name (const char* pstr, _type* ptr, _type minValue, _type maxValue) { \ _menu_action_setting_edit_ ## _name(pstr, ptr, minValue, maxValue); \ - currentMenu = menu_edit_ ## _name; \ + currentScreen = menu_edit_ ## _name; \ }\ - static void menu_action_setting_edit_callback_ ## _name (const char* pstr, _type* ptr, _type minValue, _type maxValue, menuFunc_t callback) { \ + static void menu_action_setting_edit_callback_ ## _name (const char* pstr, _type* ptr, _type minValue, _type maxValue, screenFunc_t callback) { \ _menu_action_setting_edit_ ## _name(pstr, ptr, minValue, maxValue); \ - currentMenu = menu_edit_callback_ ## _name; \ + currentScreen = menu_edit_callback_ ## _name; \ callbackFunc = callback; \ } menu_edit_type(int, int3, itostr3, 1); @@ -1999,9 +1999,9 @@ static void lcd_status_screen() { * */ static void menu_action_back() { lcd_goto_previous_menu(); } - static void menu_action_submenu(menuFunc_t func) { lcd_save_previous_menu(); lcd_goto_menu(func); } + static void menu_action_submenu(screenFunc_t func) { lcd_save_previous_menu(); lcd_goto_screen(func); } static void menu_action_gcode(const char* pgcode) { enqueue_and_echo_commands_P(pgcode); } - static void menu_action_function(menuFunc_t func) { (*func)(); } + static void menu_action_function(screenFunc_t func) { (*func)(); } #if ENABLED(SDSUPPORT) @@ -2020,7 +2020,7 @@ static void lcd_status_screen() { #endif //SDSUPPORT static void menu_action_setting_edit_bool(const char* pstr, bool* ptr) {UNUSED(pstr); *ptr = !(*ptr); } - static void menu_action_setting_edit_callback_bool(const char* pstr, bool* ptr, menuFunc_t callback) { + static void menu_action_setting_edit_callback_bool(const char* pstr, bool* ptr, screenFunc_t callback) { menu_action_setting_edit_bool(pstr, ptr); (*callback)(); } @@ -2180,7 +2180,7 @@ void lcd_update() { lcdDrawUpdate = LCDVIEW_CLEAR_CALL_REDRAW; lcd_implementation_init( // to maybe revive the LCD if static electricity killed it. #if ENABLED(LCD_PROGRESS_BAR) && ENABLED(ULTIPANEL) - currentMenu == lcd_status_screen + currentScreen == lcd_status_screen #endif ); @@ -2280,7 +2280,7 @@ void lcd_update() { static int8_t lcd_status_update_delay = 1; // first update one loop delayed if ( #if ENABLED(ULTIPANEL) - currentMenu == lcd_status_screen && + currentScreen == lcd_status_screen && #endif !lcd_status_update_delay--) { lcd_status_update_delay = 9; @@ -2312,14 +2312,14 @@ void lcd_update() { u8g.drawPixel(127, 63); // draw alive dot u8g.setColorIndex(1); // black on white #if ENABLED(ULTIPANEL) - (*currentMenu)(); + (*currentScreen)(); #else lcd_status_screen(); #endif } while (u8g.nextPage()); #else #if ENABLED(ULTIPANEL) - (*currentMenu)(); + (*currentScreen)(); #else lcd_status_screen(); #endif @@ -2329,7 +2329,7 @@ void lcd_update() { #if ENABLED(ULTIPANEL) // Return to Status Screen after a timeout - if (currentMenu == lcd_status_screen || defer_return_to_status) + if (currentScreen == lcd_status_screen || defer_return_to_status) return_to_status_ms = ms + LCD_TIMEOUT_TO_STATUS; else if (ELAPSED(ms, return_to_status_ms)) lcd_return_to_status();