1
0
mirror of https://github.com/MarlinFirmware/Marlin.git synced 2024-11-27 13:56:24 +00:00

Fix DUAL_X_CARRIAGE manual move

Addressing #7745
This commit is contained in:
Scott Lahteine 2017-10-02 23:10:10 -05:00
parent 4c34b3ad9c
commit bcb8722513

View File

@ -137,6 +137,7 @@ uint16_t max_display_update_time = 0;
// Function pointer to menu functions. // Function pointer to menu functions.
typedef void (*screenFunc_t)(); typedef void (*screenFunc_t)();
typedef void (*menuAction_t)();
#if HAS_POWER_SWITCH #if HAS_POWER_SWITCH
extern bool powersupply_on; extern bool powersupply_on;
@ -206,7 +207,7 @@ uint16_t max_display_update_time = 0;
void _menu_action_back(); void _menu_action_back();
void menu_action_submenu(screenFunc_t data); void menu_action_submenu(screenFunc_t data);
void menu_action_gcode(const char* pgcode); void menu_action_gcode(const char* pgcode);
void menu_action_function(screenFunc_t data); void menu_action_function(menuAction_t data);
#define DECLARE_MENU_EDIT_TYPE(_type, _name) \ #define DECLARE_MENU_EDIT_TYPE(_type, _name) \
bool _menu_edit_ ## _name(); \ bool _menu_edit_ ## _name(); \
@ -2751,8 +2752,11 @@ void kill_screen(const char* lcd_msg) {
, int8_t eindex=-1 , int8_t eindex=-1
#endif #endif
) { ) {
#if E_MANUAL > 1 #if ENABLED(DUAL_X_CARRIAGE) || E_MANUAL > 1
if (axis == E_AXIS) manual_move_e_index = eindex >= 0 ? eindex : active_extruder; #if E_MANUAL > 1
if (axis == E_AXIS)
#endif
manual_move_e_index = eindex >= 0 ? eindex : active_extruder;
#endif #endif
manual_move_start_time = millis() + (move_menu_scale < 0.99 ? 0UL : 250UL); // delay for bigger moves manual_move_start_time = millis() + (move_menu_scale < 0.99 ? 0UL : 250UL); // delay for bigger moves
manual_move_axis = (int8_t)axis; manual_move_axis = (int8_t)axis;
@ -2964,7 +2968,7 @@ void kill_screen(const char* lcd_msg) {
else else
MENU_ITEM(gcode, MSG_AUTO_HOME, PSTR("G28")); MENU_ITEM(gcode, MSG_AUTO_HOME, PSTR("G28"));
#if ENABLED(SWITCHING_EXTRUDER) #if ENABLED(SWITCHING_EXTRUDER) || ENABLED(DUAL_X_CARRIAGE)
if (active_extruder) if (active_extruder)
MENU_ITEM(gcode, MSG_SELECT " " MSG_E1, PSTR("T0")); MENU_ITEM(gcode, MSG_SELECT " " MSG_E1, PSTR("T0"));
else else