🧑💻 EXTRUDER_LOOP macro
This commit is contained in:
committed by
Scott Lahteine
parent
b094a3fc0d
commit
4a8b99d505
@ -109,8 +109,8 @@ void menu_backlash();
|
||||
#if EXTRUDERS == 1
|
||||
EDIT_ITEM(float42_52, MSG_ADVANCE_K, &planner.extruder_advance_K[0], 0, 10);
|
||||
#elif HAS_MULTI_EXTRUDER
|
||||
LOOP_L_N(n, EXTRUDERS)
|
||||
EDIT_ITEM_N(float42_52, n, MSG_ADVANCE_K_E, &planner.extruder_advance_K[n], 0, 10);
|
||||
EXTRUDER_LOOP()
|
||||
EDIT_ITEM_N(float42_52, e, MSG_ADVANCE_K_E, &planner.extruder_advance_K[e], 0, 10);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@ -120,16 +120,16 @@ void menu_backlash();
|
||||
#if ENABLED(VOLUMETRIC_EXTRUDER_LIMIT)
|
||||
EDIT_ITEM_FAST(float42_52, MSG_VOLUMETRIC_LIMIT, &planner.volumetric_extruder_limit[active_extruder], 0.0f, 20.0f, planner.calculate_volumetric_extruder_limits);
|
||||
#if HAS_MULTI_EXTRUDER
|
||||
LOOP_L_N(n, EXTRUDERS)
|
||||
EDIT_ITEM_FAST_N(float42_52, n, MSG_VOLUMETRIC_LIMIT_E, &planner.volumetric_extruder_limit[n], 0.0f, 20.00f, planner.calculate_volumetric_extruder_limits);
|
||||
EXTRUDER_LOOP()
|
||||
EDIT_ITEM_FAST_N(float42_52, e, MSG_VOLUMETRIC_LIMIT_E, &planner.volumetric_extruder_limit[e], 0.0f, 20.00f, planner.calculate_volumetric_extruder_limits);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
if (parser.volumetric_enabled) {
|
||||
EDIT_ITEM_FAST(float43, MSG_FILAMENT_DIAM, &planner.filament_size[active_extruder], 1.5f, 3.25f, planner.calculate_volumetric_multipliers);
|
||||
#if HAS_MULTI_EXTRUDER
|
||||
LOOP_L_N(n, EXTRUDERS)
|
||||
EDIT_ITEM_FAST_N(float43, n, MSG_FILAMENT_DIAM_E, &planner.filament_size[n], 1.5f, 3.25f, planner.calculate_volumetric_multipliers);
|
||||
EXTRUDER_LOOP()
|
||||
EDIT_ITEM_FAST_N(float43, e, MSG_FILAMENT_DIAM_E, &planner.filament_size[e], 1.5f, 3.25f, planner.calculate_volumetric_multipliers);
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
@ -139,14 +139,14 @@ void menu_backlash();
|
||||
|
||||
EDIT_ITEM_FAST(float4, MSG_FILAMENT_UNLOAD, &fc_settings[active_extruder].unload_length, 0, extrude_maxlength);
|
||||
#if HAS_MULTI_EXTRUDER
|
||||
LOOP_L_N(n, EXTRUDERS)
|
||||
EDIT_ITEM_FAST_N(float4, n, MSG_FILAMENTUNLOAD_E, &fc_settings[n].unload_length, 0, extrude_maxlength);
|
||||
EXTRUDER_LOOP()
|
||||
EDIT_ITEM_FAST_N(float4, e, MSG_FILAMENTUNLOAD_E, &fc_settings[e].unload_length, 0, extrude_maxlength);
|
||||
#endif
|
||||
|
||||
EDIT_ITEM_FAST(float4, MSG_FILAMENT_LOAD, &fc_settings[active_extruder].load_length, 0, extrude_maxlength);
|
||||
#if HAS_MULTI_EXTRUDER
|
||||
LOOP_L_N(n, EXTRUDERS)
|
||||
EDIT_ITEM_FAST_N(float4, n, MSG_FILAMENTLOAD_E, &fc_settings[n].load_length, 0, extrude_maxlength);
|
||||
EXTRUDER_LOOP()
|
||||
EDIT_ITEM_FAST_N(float4, e, MSG_FILAMENTLOAD_E, &fc_settings[e].load_length, 0, extrude_maxlength);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
@ -145,9 +145,9 @@ void menu_advanced_settings();
|
||||
EDIT_ITEM(uint8, MSG_TOOL_MIGRATION_END, &migration.last, 0, EXTRUDERS - 1);
|
||||
|
||||
// Migrate to a chosen extruder
|
||||
LOOP_L_N(s, EXTRUDERS) {
|
||||
if (s != active_extruder) {
|
||||
ACTION_ITEM_N_P(s, msg_migrate, []{
|
||||
EXTRUDER_LOOP() {
|
||||
if (e != active_extruder) {
|
||||
ACTION_ITEM_N_P(e, msg_migrate, []{
|
||||
char cmd[12];
|
||||
sprintf_P(cmd, PSTR("M217 T%i"), int(MenuItemBase::itemIndex));
|
||||
queue.inject(cmd);
|
||||
|
@ -48,7 +48,7 @@ void _mmu2_load_filament(uint8_t index) {
|
||||
ui.reset_status();
|
||||
}
|
||||
void action_mmu2_load_all() {
|
||||
LOOP_L_N(i, EXTRUDERS) _mmu2_load_filament(i);
|
||||
EXTRUDER_LOOP() _mmu2_load_filament(e);
|
||||
ui.return_to_status();
|
||||
}
|
||||
|
||||
@ -56,14 +56,14 @@ void menu_mmu2_load_filament() {
|
||||
START_MENU();
|
||||
BACK_ITEM(MSG_MMU2_MENU);
|
||||
ACTION_ITEM(MSG_MMU2_ALL, action_mmu2_load_all);
|
||||
LOOP_L_N(i, EXTRUDERS) ACTION_ITEM_N(i, MSG_MMU2_FILAMENT_N, []{ _mmu2_load_filament(MenuItemBase::itemIndex); });
|
||||
EXTRUDER_LOOP() ACTION_ITEM_N(e, MSG_MMU2_FILAMENT_N, []{ _mmu2_load_filament(MenuItemBase::itemIndex); });
|
||||
END_MENU();
|
||||
}
|
||||
|
||||
void menu_mmu2_load_to_nozzle() {
|
||||
START_MENU();
|
||||
BACK_ITEM(MSG_MMU2_MENU);
|
||||
LOOP_L_N(i, EXTRUDERS) ACTION_ITEM_N(i, MSG_MMU2_FILAMENT_N, []{ action_mmu2_load_filament_to_nozzle(MenuItemBase::itemIndex); });
|
||||
EXTRUDER_LOOP() ACTION_ITEM_N(e, MSG_MMU2_FILAMENT_N, []{ action_mmu2_load_filament_to_nozzle(MenuItemBase::itemIndex); });
|
||||
END_MENU();
|
||||
}
|
||||
|
||||
@ -89,7 +89,7 @@ void action_mmu2_unload_filament() {
|
||||
void menu_mmu2_eject_filament() {
|
||||
START_MENU();
|
||||
BACK_ITEM(MSG_MMU2_MENU);
|
||||
LOOP_L_N(i, EXTRUDERS) ACTION_ITEM_N(i, MSG_MMU2_FILAMENT_N, []{ _mmu2_eject_filament(MenuItemBase::itemIndex); });
|
||||
EXTRUDER_LOOP() ACTION_ITEM_N(e, MSG_MMU2_FILAMENT_N, []{ _mmu2_eject_filament(MenuItemBase::itemIndex); });
|
||||
END_MENU();
|
||||
}
|
||||
|
||||
@ -130,7 +130,7 @@ void menu_mmu2_choose_filament() {
|
||||
#if LCD_HEIGHT > 2
|
||||
STATIC_ITEM(MSG_MMU2_CHOOSE_FILAMENT_HEADER, SS_DEFAULT|SS_INVERT);
|
||||
#endif
|
||||
LOOP_L_N(i, EXTRUDERS) ACTION_ITEM_N(i, MSG_MMU2_FILAMENT_N, []{ action_mmu2_chosen(MenuItemBase::itemIndex); });
|
||||
EXTRUDER_LOOP() ACTION_ITEM_N(e, MSG_MMU2_FILAMENT_N, []{ action_mmu2_chosen(MenuItemBase::itemIndex); });
|
||||
END_MENU();
|
||||
}
|
||||
|
||||
|
@ -199,8 +199,8 @@ void menu_tune() {
|
||||
EDIT_ITEM(int3, MSG_FLOW, &planner.flow_percentage[active_extruder], 10, 999, []{ planner.refresh_e_factor(active_extruder); });
|
||||
// Flow En:
|
||||
#if HAS_MULTI_EXTRUDER
|
||||
LOOP_L_N(n, EXTRUDERS)
|
||||
EDIT_ITEM_N(int3, n, MSG_FLOW_N, &planner.flow_percentage[n], 10, 999, []{ planner.refresh_e_factor(MenuItemBase::itemIndex); });
|
||||
EXTRUDER_LOOP()
|
||||
EDIT_ITEM_N(int3, e, MSG_FLOW_N, &planner.flow_percentage[e], 10, 999, []{ planner.refresh_e_factor(MenuItemBase::itemIndex); });
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@ -211,8 +211,8 @@ void menu_tune() {
|
||||
#if EXTRUDERS == 1
|
||||
EDIT_ITEM(float42_52, MSG_ADVANCE_K, &planner.extruder_advance_K[0], 0, 10);
|
||||
#elif HAS_MULTI_EXTRUDER
|
||||
LOOP_L_N(n, EXTRUDERS)
|
||||
EDIT_ITEM_N(float42_52, n, MSG_ADVANCE_K_E, &planner.extruder_advance_K[n], 0, 10);
|
||||
EXTRUDER_LOOP()
|
||||
EDIT_ITEM_N(float42_52, e, MSG_ADVANCE_K_E, &planner.extruder_advance_K[e], 0, 10);
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
Reference in New Issue
Block a user