Skip to content

Commit bbf9a19

Browse files
committed
define above use
1 parent 122bb48 commit bbf9a19

1 file changed

Lines changed: 30 additions & 35 deletions

File tree

Marlin/src/lcd/menu/menu_advanced.cpp

Lines changed: 30 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -254,12 +254,37 @@ void menu_backlash();
254254
#if SHOW_MENU_ADVANCED_TEMPERATURE
255255

256256
#if ENABLED(MPC_EDIT_MENU)
257+
257258
#define MPC_EDIT_DEFS(N) \
258259
MPC_t &c = thermalManager.temp_hotend[N].constants; \
259260
TERN_(MPC_INCLUDE_FAN, editable.decimal = c.ambient_xfer_coeff_fan0 + c.fan255_adjustment)
261+
262+
#define _MPC_EDIT_ITEMS(N) \
263+
EDIT_ITEM_FAST_N(float31sign, N, MSG_MPC_POWER_E, &c.heater_power, 1, 200); \
264+
EDIT_ITEM_FAST_N(float31sign, N, MSG_MPC_BLOCK_HEAT_CAPACITY_E, &c.block_heat_capacity, 0, 40); \
265+
EDIT_ITEM_FAST_N(float43, N, MSG_SENSOR_RESPONSIVENESS_E, &c.sensor_responsiveness, 0, 1); \
266+
EDIT_ITEM_FAST_N(float43, N, MSG_MPC_AMBIENT_XFER_COEFF_E, &c.ambient_xfer_coeff_fan0, 0, 1)
267+
268+
#if ENABLED(MPC_INCLUDE_FAN)
269+
#define MPC_EDIT_ITEMS(N)
270+
_MPC_EDIT_ITEMS(N); \
271+
EDIT_ITEM_FAST_N(float43, N, MSG_MPC_AMBIENT_XFER_COEFF_FAN255_E, &editable.decimal, 0, 1, []{ \
272+
thermalManager.temp_hotend[N].constants.fan255_adjustment = editable.decimal - thermalManager.temp_hotend[N].constants.ambient_xfer_coeff_fan0; \
273+
})
274+
#else
275+
#define MPC_EDIT_ITEMS _MPC_EDIT_ITEMS
276+
#endif
277+
260278
#if HAS_MULTI_HOTEND
261-
static uint8_t current_mpc_hotend = 0;
262-
void mpc_edit_hotend(const uint8_t e);
279+
void mpc_edit_hotend(const uint8_t e) {
280+
static uint8_t current_mpc_hotend = 0;
281+
current_mpc_hotend = e;
282+
MPC_EDIT_DEFS(e);
283+
START_MENU();
284+
BACK_ITEM(MSG_TEMPERATURE);
285+
MPC_EDIT_ITEMS(current_mpc_hotend);
286+
END_MENU();
287+
}
263288
#endif
264289
#endif
265290

@@ -345,32 +370,13 @@ void menu_backlash();
345370
#endif
346371

347372
#if ENABLED(MPC_EDIT_MENU)
348-
349-
#define _MPC_EDIT_ITEMS(N) \
350-
EDIT_ITEM_FAST_N(float31sign, N, MSG_MPC_POWER_E, &c.heater_power, 1, 200); \
351-
EDIT_ITEM_FAST_N(float31sign, N, MSG_MPC_BLOCK_HEAT_CAPACITY_E, &c.block_heat_capacity, 0, 40); \
352-
EDIT_ITEM_FAST_N(float43, N, MSG_SENSOR_RESPONSIVENESS_E, &c.sensor_responsiveness, 0, 1); \
353-
EDIT_ITEM_FAST_N(float43, N, MSG_MPC_AMBIENT_XFER_COEFF_E, &c.ambient_xfer_coeff_fan0, 0, 1)
354-
355-
#if ENABLED(MPC_INCLUDE_FAN)
356-
#define MPC_EDIT_ITEMS(N) \
357-
_MPC_EDIT_ITEMS(N); \
358-
EDIT_ITEM_FAST_N(float43, N, MSG_MPC_AMBIENT_XFER_COEFF_FAN255_E, &editable.decimal, 0, 1, []{ \
359-
thermalManager.temp_hotend[N].constants.fan255_adjustment = editable.decimal - thermalManager.temp_hotend[N].constants.ambient_xfer_coeff_fan0; \
360-
});
361-
#else
362-
#define MPC_EDIT_ITEMS _MPC_EDIT_ITEMS
363-
#endif
364-
365373
#if HAS_MULTI_HOTEND
366374
#define MPC_ENTRY(N) SUBMENU_N(N, MSG_MPC_EDIT, []{ mpc_edit_hotend(MenuItemBase::itemIndex); });
375+
REPEAT(HOTENDS, MPC_ENTRY);
367376
#else
368-
#define MPC_ENTRY MPC_EDIT_ITEMS
377+
MPC_EDIT_ITEMS;
369378
#endif
370-
371-
REPEAT(HOTENDS, MPC_ENTRY);
372-
373-
#endif // MPC_EDIT_MENU
379+
#endif
374380

375381
#if ENABLED(MPC_AUTOTUNE_MENU)
376382
ACTION_ITEM(MSG_MPC_AUTOTUNE, []{ queue.inject(F("M306 T")); ui.return_to_status(); });
@@ -397,17 +403,6 @@ void menu_backlash();
397403
END_MENU();
398404
}
399405

400-
#if ENABLED(MPC_EDIT_MENU) && HAS_MULTI_HOTEND
401-
void mpc_edit_hotend(const uint8_t e) {
402-
current_mpc_hotend = e;
403-
MPC_EDIT_DEFS(e);
404-
START_MENU();
405-
BACK_ITEM(MSG_TEMPERATURE);
406-
MPC_EDIT_ITEMS(current_mpc_hotend);
407-
END_MENU();
408-
}
409-
#endif
410-
411406
#endif // SHOW_MENU_ADVANCED_TEMPERATURE
412407

413408
#if DISABLED(SLIM_LCD_MENUS)

0 commit comments

Comments
 (0)