mirror of
https://github.com/MarlinFirmware/Marlin.git
synced 2026-01-02 21:00:36 -07:00
🧑💻 ProUI: pre-calculate menu sizes
This commit is contained in:
parent
58749a9a0e
commit
c7e64371c9
1 changed files with 149 additions and 27 deletions
|
|
@ -3101,8 +3101,18 @@ frame_rect_t selrect(frame_rect_t) {
|
|||
}
|
||||
|
||||
void drawPrepareMenu() {
|
||||
constexpr uint8_t items = (3
|
||||
+ COUNT_ENABLED(LCD_BED_TRAMMING)
|
||||
+ 2
|
||||
+ TERN(MESH_BED_LEVELING, 1, ENABLED(HAS_BED_PROBE))
|
||||
+ TERN(HAS_ZOFFSET_ITEM, ENABLED(HAS_BED_PROBE), ENABLED(BABYSTEPPING))
|
||||
+ PREHEAT_COUNT
|
||||
+ 1
|
||||
+ 2 * ALL(PROUI_TUNING_GRAPH, PROUI_ITEM_PLOT)
|
||||
+ 1
|
||||
);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU_R(prepareMenu, selrect({133, 1, 28, 13}), MSG_PREPARE, 12 + PREHEAT_COUNT)) {
|
||||
if (SET_MENU_R(prepareMenu, selrect({133, 1, 28, 13}), MSG_PREPARE, items)) {
|
||||
BACK_ITEM(gotoMainMenu);
|
||||
MENU_ITEM(ICON_FilMan, MSG_FILAMENT_MAN, onDrawSubMenu, drawFilamentManMenu);
|
||||
MENU_ITEM(ICON_Axis, MSG_MOVE_AXIS, onDrawMoveSubMenu, drawMoveMenu);
|
||||
|
|
@ -3145,8 +3155,14 @@ void drawPrepareMenu() {
|
|||
#if ENABLED(LCD_BED_TRAMMING)
|
||||
|
||||
void drawTrammingMenu() {
|
||||
constexpr uint8_t items = (1
|
||||
+ 2 * ALL(HAS_BED_PROBE, HAS_MESH)
|
||||
+ (DISABLED(HAS_BED_PROBE) && ENABLED(HAS_ZOFFSET_ITEM))
|
||||
+ 4
|
||||
+ ENABLED(BED_TRAMMING_INCLUDE_CENTER)
|
||||
);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU(trammingMenu, MSG_BED_TRAMMING, 8)) {
|
||||
if (SET_MENU(trammingMenu, MSG_BED_TRAMMING, items)) {
|
||||
BACK_ITEM(drawPrepareMenu);
|
||||
#if HAS_BED_PROBE && HAS_MESH
|
||||
MENU_ITEM(ICON_Tram, MSG_TRAMMING_WIZARD, onDrawMenuItem, trammingwizard);
|
||||
|
|
@ -3168,8 +3184,13 @@ void drawPrepareMenu() {
|
|||
#endif // LCD_BED_TRAMMING
|
||||
|
||||
void drawControlMenu() {
|
||||
constexpr uint8_t items = (3
|
||||
+ COUNT_ENABLED(CASE_LIGHT_MENU, LED_CONTROL_MENU)
|
||||
+ TERN0(EEPROM_SETTINGS, 3)
|
||||
+ 2
|
||||
);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU_R(controlMenu, selrect({103, 1, 28, 14}), MSG_CONTROL, 11)) {
|
||||
if (SET_MENU_R(controlMenu, selrect({103, 1, 28, 14}), MSG_CONTROL, items)) {
|
||||
BACK_ITEM(gotoMainMenu);
|
||||
MENU_ITEM(ICON_Temperature, MSG_TEMPERATURE, onDrawTempSubMenu, drawTemperatureMenu);
|
||||
MENU_ITEM(ICON_Motion, MSG_MOTION, onDrawMotionSubMenu, drawMotionMenu);
|
||||
|
|
@ -3198,8 +3219,20 @@ void drawControlMenu() {
|
|||
}
|
||||
|
||||
void drawAdvancedSettingsMenu() {
|
||||
constexpr uint8_t items = (1
|
||||
+ COUNT_ENABLED(EEPROM_SETTINGS, HAS_MESH, HAS_BED_PROBE, HAS_HOME_OFFSET, HAS_TRINAMIC_CONFIG, HAS_ESDIAG, \
|
||||
HAS_LOCKSCREEN, EDITABLE_DISPLAY_TIMEOUT, SOUND_MENU_ITEM, POWER_LOSS_RECOVERY, HAS_GCODE_PREVIEW, \
|
||||
PROUI_MEDIASORT, BAUD_RATE_GCODE, HAS_CUSTOM_COLORS)
|
||||
+ 1
|
||||
+ (ENABLED(PIDTEMP) && ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU))
|
||||
+ ANY(MPC_EDIT_MENU, MPC_AUTOTUNE_MENU)
|
||||
+ (ENABLED(PIDTEMPBED) && ANY(PID_AUTOTUNE_MENU, PID_EDIT_MENU))
|
||||
+ TERN0(PRINTCOUNTER, 2)
|
||||
+ 1
|
||||
+ TERN0(HAS_LCD_BRIGHTNESS, 2)
|
||||
);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU(advancedSettingsMenu, MSG_ADVANCED_SETTINGS, 24)) {
|
||||
if (SET_MENU(advancedSettingsMenu, MSG_ADVANCED_SETTINGS, items)) {
|
||||
BACK_ITEM(gotoMainMenu);
|
||||
#if ENABLED(EEPROM_SETTINGS)
|
||||
MENU_ITEM(ICON_WriteEEPROM, MSG_STORE_EEPROM, onDrawMenuItem, writeEEPROM);
|
||||
|
|
@ -3268,8 +3301,9 @@ void drawAdvancedSettingsMenu() {
|
|||
}
|
||||
|
||||
void drawMoveMenu() {
|
||||
constexpr uint8_t items = 2 + COUNT_ENABLED(HAS_X_AXIS, HAS_Y_AXIS, HAS_Z_AXIS, HAS_HOTEND);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU_R(moveMenu, selrect({192, 1, 42, 14}), MSG_MOVE_AXIS, 6)) {
|
||||
if (SET_MENU_R(moveMenu, selrect({192, 1, 42, 14}), MSG_MOVE_AXIS, items)) {
|
||||
BACK_ITEM(drawPrepareMenu);
|
||||
EDIT_ITEM(ICON_Axis, MSG_LIVE_MOVE, onDrawChkbMenu, setLiveMove, &enableLiveMove);
|
||||
#if HAS_X_AXIS
|
||||
|
|
@ -3293,8 +3327,9 @@ void drawMoveMenu() {
|
|||
#if HAS_HOME_OFFSET
|
||||
|
||||
void drawHomeOffsetMenu() {
|
||||
constexpr uint8_t items = 1 + COUNT_ENABLED(HAS_X_AXIS, HAS_Y_AXIS, HAS_Z_AXIS);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU(homeOffsetMenu, MSG_SET_HOME_OFFSETS, 4)) {
|
||||
if (SET_MENU(homeOffsetMenu, MSG_SET_HOME_OFFSETS, items)) {
|
||||
BACK_ITEM(drawAdvancedSettingsMenu);
|
||||
#if HAS_X_AXIS
|
||||
EDIT_ITEM(ICON_HomeOffsetX, MSG_HOME_OFFSET_X, onDrawPFloatMenu, setHomeOffsetX, &home_offset.x);
|
||||
|
|
@ -3314,8 +3349,12 @@ void drawMoveMenu() {
|
|||
#if HAS_BED_PROBE
|
||||
|
||||
void drawProbeSetMenu() {
|
||||
constexpr uint8_t items = (1
|
||||
+ COUNT_ENABLED(HAS_X_AXIS, HAS_Y_AXIS, HAS_Z_AXIS, Z_MIN_PROBE_REPEATABILITY_TEST)
|
||||
+ TERN0(BLTOUCH, 3 + ENABLED(HAS_BLTOUCH_HS_MODE))
|
||||
);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU(probeSettingsMenu, MSG_ZPROBE_SETTINGS, 9)) {
|
||||
if (SET_MENU(probeSettingsMenu, MSG_ZPROBE_SETTINGS, items)) {
|
||||
BACK_ITEM(drawAdvancedSettingsMenu);
|
||||
#if HAS_X_AXIS
|
||||
EDIT_ITEM(ICON_ProbeOffsetX, MSG_ZPROBE_XOFFSET, onDrawPFloatMenu, setProbeOffsetX, &probe.offset.x);
|
||||
|
|
@ -3344,8 +3383,12 @@ void drawMoveMenu() {
|
|||
#endif // HAS_BED_PROBE
|
||||
|
||||
void drawFilSetMenu() {
|
||||
constexpr uint8_t items = (1
|
||||
+ COUNT_ENABLED(HAS_FILAMENT_SENSOR, HAS_FILAMENT_RUNOUT_DISTANCE, PREVENT_COLD_EXTRUSION, FWRETRACT)
|
||||
+ TERN0(CONFIGURE_FILAMENT_CHANGE, 2)
|
||||
);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU(filSetMenu, MSG_FILAMENT_SET, 9)) {
|
||||
if (SET_MENU(filSetMenu, MSG_FILAMENT_SET, items)) {
|
||||
BACK_ITEM(drawAdvancedSettingsMenu);
|
||||
#if HAS_FILAMENT_SENSOR
|
||||
EDIT_ITEM(ICON_Runout, MSG_RUNOUT_SENSOR, onDrawChkbMenu, setRunoutEnable, &runout.enabled);
|
||||
|
|
@ -3384,8 +3427,12 @@ void drawFilSetMenu() {
|
|||
#if ENABLED(LED_CONTROL_MENU)
|
||||
|
||||
void drawLedControlMenu() {
|
||||
constexpr uint8_t items = (1
|
||||
+ !ALL(CASE_LIGHT_MENU, CASE_LIGHT_USE_NEOPIXEL)
|
||||
+ ENABLED(HAS_COLOR_LEDS) * TERN(LED_COLOR_PRESETS, 8, 3 + ENABLED(HAS_WHITE_LED)),
|
||||
);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU(ledControlMenu, MSG_LED_CONTROL, 10)) {
|
||||
if (SET_MENU(ledControlMenu, MSG_LED_CONTROL, items)) {
|
||||
BACK_ITEM((currentMenu == tuneMenu) ? drawTuneMenu : drawControlMenu);
|
||||
#if !ALL(CASE_LIGHT_MENU, CASE_LIGHT_USE_NEOPIXEL)
|
||||
EDIT_ITEM(ICON_LedControl, MSG_LIGHTS, onDrawChkbMenu, setLedStatus, &leds.lights_on);
|
||||
|
|
@ -3416,8 +3463,21 @@ void drawFilSetMenu() {
|
|||
#endif // LED_CONTROL_MENU
|
||||
|
||||
void drawTuneMenu() {
|
||||
constexpr uint8_t items = (2
|
||||
+ COUNT_ENABLED(HAS_HOTEND, HAS_HEATED_BED, HAS_FAN)
|
||||
+ ALL(HAS_ZOFFSET_ITEM, BABYSTEPPING)
|
||||
+ 1
|
||||
+ COUNT_ENABLED(ADVANCED_PAUSE_FEATURE, HAS_FILAMENT_SENSOR, PROUI_ITEM_PLR, FWRETRACT, PROUI_ITEM_JD, PROUI_ITEM_ADVK, HAS_LOCKSCREEN)
|
||||
+ TERN0(HAS_LCD_BRIGHTNESS, 2)
|
||||
+ ENABLED(EDITABLE_DISPLAY_TIMEOUT)
|
||||
+ 2 * ALL(PROUI_TUNING_GRAPH, PROUI_ITEM_PLOT)
|
||||
+ TERN(CASE_LIGHT_MENU,
|
||||
1 + COUNT_ENABLED(CASELIGHT_USES_BRIGHTNESS, LED_CONTROL_MENU),
|
||||
ENABLED(LED_CONTROL_MENU) && DISABLED(CASE_LIGHT_USE_NEOPIXEL)
|
||||
)
|
||||
);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU_R(tuneMenu, selrect({73, 2, 28, 12}), MSG_TUNE, 20)) {
|
||||
if (SET_MENU_R(tuneMenu, selrect({73, 2, 28, 12}), MSG_TUNE, items)) {
|
||||
BACK_ITEM(gotoPrintProcess);
|
||||
EDIT_ITEM(ICON_Speed, MSG_SPEED, onDrawSpeedItem, setSpeed, &feedrate_percentage);
|
||||
#if HAS_HOTEND
|
||||
|
|
@ -3518,8 +3578,9 @@ void drawTuneMenu() {
|
|||
#endif
|
||||
|
||||
void drawInputShaping_menu() {
|
||||
constexpr uint8_t items = 1 + 2 * COUNT_ENABLED(INPUT_SHAPING_X, INPUT_SHAPING_Y, INPUT_SHAPING_Z);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU(inputShapingMenu, MSG_INPUT_SHAPING, 1 PLUS_TERN0(INPUT_SHAPING_X, 2) PLUS_TERN0(INPUT_SHAPING_Y, 2) PLUS_TERN0(INPUT_SHAPING_Z, 2))) {
|
||||
if (SET_MENU(inputShapingMenu, MSG_INPUT_SHAPING, items)) {
|
||||
BACK_ITEM(drawMotionMenu);
|
||||
#if ENABLED(INPUT_SHAPING_X)
|
||||
MENU_ITEM(ICON_ShapingX, MSG_SHAPING_A_FREQ, onDrawShapingXFreq, setShapingXFreq);
|
||||
|
|
@ -3553,8 +3614,22 @@ void drawTuneMenu() {
|
|||
#endif
|
||||
|
||||
void drawTrinamicConfigMenu() {
|
||||
constexpr uint8_t items = (1
|
||||
#if AXIS_IS_TMC(X)
|
||||
+ 1
|
||||
#endif
|
||||
#if AXIS_IS_TMC(Y)
|
||||
+ 1
|
||||
#endif
|
||||
#if AXIS_IS_TMC(Z)
|
||||
+ 1
|
||||
#endif
|
||||
#if AXIS_IS_TMC(E0)
|
||||
+ 1
|
||||
#endif
|
||||
);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU(trinamicConfigMenu, MSG_TMC_DRIVERS, 5)) {
|
||||
if (SET_MENU(trinamicConfigMenu, MSG_TMC_DRIVERS, items)) {
|
||||
BACK_ITEM(drawAdvancedSettingsMenu);
|
||||
#if AXIS_IS_TMC(X)
|
||||
EDIT_ITEM(ICON_TMCXSet, MSG_TMC_ACURRENT, onDrawPIntMenu, setXTMCCurrent, &stepperX.val_mA);
|
||||
|
|
@ -3574,8 +3649,12 @@ void drawTuneMenu() {
|
|||
#endif
|
||||
|
||||
void drawMotionMenu() {
|
||||
constexpr uint8_t items = (4
|
||||
+ COUNT_ENABLED(EDITABLE_STEPS_PER_UNIT, EDITABLE_HOMING_FEEDRATE, LIN_ADVANCE, SHAPING_MENU, ADAPTIVE_STEP_SMOOTHING_TOGGLE)
|
||||
+ 2
|
||||
);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU_R(motionMenu, selrect({1, 16, 28, 13}), MSG_MOTION, 11)) {
|
||||
if (SET_MENU_R(motionMenu, selrect({1, 16, 28, 13}), MSG_MOTION, items)) {
|
||||
BACK_ITEM(drawControlMenu);
|
||||
MENU_ITEM(ICON_MaxSpeed, MSG_SPEED, onDrawSpeed, drawMaxSpeedMenu);
|
||||
MENU_ITEM(ICON_MaxAccelerated, MSG_ACCELERATION, onDrawAcc, drawMaxAccelMenu);
|
||||
|
|
@ -3620,8 +3699,13 @@ void drawMotionMenu() {
|
|||
#endif
|
||||
|
||||
void drawFilamentManMenu() {
|
||||
constexpr uint8_t items = (1
|
||||
+ ENABLED(NOZZLE_PARK_FEATURE)
|
||||
+ TERN0(ADVANCED_PAUSE_FEATURE, 1 + ENABLED(HAS_PREHEAT))
|
||||
+ TERN0(FILAMENT_LOAD_UNLOAD_GCODES, 2)
|
||||
);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU(filamentMenu, MSG_FILAMENT_MAN, 6)) {
|
||||
if (SET_MENU(filamentMenu, MSG_FILAMENT_MAN, items)) {
|
||||
BACK_ITEM(drawPrepareMenu);
|
||||
#if ENABLED(NOZZLE_PARK_FEATURE)
|
||||
MENU_ITEM(ICON_Park, MSG_FILAMENT_PARK_ENABLED, onDrawMenuItem, parkHead);
|
||||
|
|
@ -3681,16 +3765,21 @@ void drawFilamentManMenu() {
|
|||
|
||||
#define _preheatMenu(N) \
|
||||
void drawPreheat## N ##Menu() { \
|
||||
constexpr uint8_t items = 1 + COUNT_ENABLED(HAS_HOTEND, HAS_HEATED_BED, HAS_FAN, EEPROM_SETTINGS); \
|
||||
hmiValue.select = (N) - 1; \
|
||||
drawPreheatMenu(SET_MENU(preheatMenu, MSG_PREHEAT_## N ##_SETTINGS, 5)); \
|
||||
drawPreheatMenu(SET_MENU(preheatMenu, MSG_PREHEAT_## N ##_SETTINGS, items)); \
|
||||
}
|
||||
REPEAT_1(PREHEAT_COUNT, _preheatMenu)
|
||||
|
||||
#endif // HAS_PREHEAT
|
||||
|
||||
void drawTemperatureMenu() {
|
||||
constexpr uint8_t items = (1
|
||||
+ COUNT_ENABLED(HAS_HOTEND, HAS_HEATED_BED, HAS_FAN)
|
||||
+ PREHEAT_COUNT
|
||||
);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU_R(temperatureMenu, selrect({236, 2, 28, 12}), MSG_TEMPERATURE, 4 + PREHEAT_COUNT)) {
|
||||
if (SET_MENU_R(temperatureMenu, selrect({236, 2, 28, 12}), MSG_TEMPERATURE, items)) {
|
||||
BACK_ITEM(drawControlMenu);
|
||||
#if HAS_HOTEND
|
||||
hotendTargetItem = EDIT_ITEM(ICON_HotendTemp, MSG_UBL_SET_TEMP_HOTEND, onDrawHotendTemp, setHotendTemp, &thermalManager.temp_hotend[0].target);
|
||||
|
|
@ -3710,8 +3799,9 @@ void drawTemperatureMenu() {
|
|||
}
|
||||
|
||||
void drawMaxSpeedMenu() {
|
||||
constexpr uint8_t items = 1 + COUNT_ENABLED(HAS_X_AXIS, HAS_Y_AXIS, HAS_Z_AXIS, HAS_HOTEND);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU_R(maxSpeedMenu, selrect({1, 16, 28, 13}), MSG_MAX_SPEED, 5)) {
|
||||
if (SET_MENU_R(maxSpeedMenu, selrect({1, 16, 28, 13}), MSG_MAX_SPEED, items)) {
|
||||
BACK_ITEM(drawMotionMenu);
|
||||
#if HAS_X_AXIS
|
||||
EDIT_ITEM(ICON_MaxSpeedX, MSG_VMAX_A, onDrawMaxSpeedX, setMaxSpeedX, &planner.settings.max_feedrate_mm_s[X_AXIS]);
|
||||
|
|
@ -3730,8 +3820,9 @@ void drawMaxSpeedMenu() {
|
|||
}
|
||||
|
||||
void drawMaxAccelMenu() {
|
||||
constexpr uint8_t items = 1 + COUNT_ENABLED(HAS_X_AXIS, HAS_Y_AXIS, HAS_Z_AXIS, HAS_HOTEND);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU_R(maxAccelMenu, selrect({1, 16, 28, 13}), MSG_AMAX_EN, 5)) {
|
||||
if (SET_MENU_R(maxAccelMenu, selrect({1, 16, 28, 13}), MSG_AMAX_EN, items)) {
|
||||
BACK_ITEM(drawMotionMenu);
|
||||
#if HAS_X_AXIS
|
||||
EDIT_ITEM(ICON_MaxAccX, MSG_AMAX_A, onDrawMaxAccelX, setMaxAccelX, &planner.settings.max_acceleration_mm_per_s2[X_AXIS]);
|
||||
|
|
@ -3752,8 +3843,9 @@ void drawMaxAccelMenu() {
|
|||
#if ENABLED(CLASSIC_JERK)
|
||||
|
||||
void drawMaxJerkMenu() {
|
||||
constexpr uint8_t items = 1 + COUNT_ENABLED(HAS_X_AXIS, HAS_Y_AXIS, HAS_Z_AXIS, HAS_HOTEND);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU_R(maxJerkMenu, selrect({1, 16, 28, 13}), MSG_JERK, 5)) {
|
||||
if (SET_MENU_R(maxJerkMenu, selrect({1, 16, 28, 13}), MSG_JERK, items)) {
|
||||
BACK_ITEM(drawMotionMenu);
|
||||
#if HAS_X_AXIS
|
||||
EDIT_ITEM(ICON_MaxSpeedJerkX, MSG_VA_JERK, onDrawMaxJerkX, setMaxJerkX, &planner.max_jerk.x);
|
||||
|
|
@ -3776,8 +3868,9 @@ void drawMaxAccelMenu() {
|
|||
#if ENABLED(EDITABLE_STEPS_PER_UNIT)
|
||||
|
||||
void drawStepsMenu() {
|
||||
constexpr uint8_t items = 1 + COUNT_ENABLED(HAS_X_AXIS, HAS_Y_AXIS, HAS_Z_AXIS, HAS_HOTEND);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU_R(stepsMenu, selrect({1, 16, 28, 13}), MSG_STEPS_PER_MM, 5)) {
|
||||
if (SET_MENU_R(stepsMenu, selrect({1, 16, 28, 13}), MSG_STEPS_PER_MM, items)) {
|
||||
BACK_ITEM(drawMotionMenu);
|
||||
#if HAS_X_AXIS
|
||||
EDIT_ITEM(ICON_StepX, MSG_A_STEPS, onDrawStepsX, setStepsX, &planner.settings.axis_steps_per_mm[X_AXIS]);
|
||||
|
|
@ -3800,8 +3893,9 @@ void drawMaxAccelMenu() {
|
|||
#if ENABLED(EDITABLE_HOMING_FEEDRATE)
|
||||
|
||||
void drawHomingFRMenu() {
|
||||
constexpr uint8_t items = 1 + COUNT_ENABLED(HAS_X_AXIS, HAS_Y_AXIS, HAS_Z_AXIS);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU(homingFRMenu, MSG_HOMING_FEEDRATE, 4)) {
|
||||
if (SET_MENU(homingFRMenu, MSG_HOMING_FEEDRATE, items)) {
|
||||
BACK_ITEM(drawMotionMenu);
|
||||
#if HAS_X_AXIS
|
||||
uint16_t xhome = static_cast<uint16_t>(homing_feedrate_mm_m.x);
|
||||
|
|
@ -3921,8 +4015,12 @@ void drawMaxAccelMenu() {
|
|||
#endif
|
||||
|
||||
void drawHotendMPCMenu() {
|
||||
constexpr uint8_t items = (1
|
||||
+ ENABLED(MPC_AUTOTUNE_MENU)
|
||||
+ TERN0(MPC_EDIT_MENU, 4 + ENABLED(MPC_INCLUDE_FAN))
|
||||
);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU_F(hotendMPCMenu, "MPC Settings", 7)) {
|
||||
if (SET_MENU_F(hotendMPCMenu, "MPC Settings", items)) {
|
||||
MPC_t &mpc = thermalManager.temp_hotend[0].mpc;
|
||||
BACK_ITEM(drawAdvancedSettingsMenu);
|
||||
#if ENABLED(MPC_AUTOTUNE_MENU)
|
||||
|
|
@ -3991,8 +4089,13 @@ void drawMaxAccelMenu() {
|
|||
#endif
|
||||
|
||||
void drawHotendPIDMenu() {
|
||||
constexpr uint8_t items = (1
|
||||
+ TERN0(PID_AUTOTUNE_MENU, 3)
|
||||
+ TERN0(PID_EDIT_MENU, 3)
|
||||
+ ENABLED(EEPROM_SETTINGS)
|
||||
);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU_F(hotendPIDMenu, STR_HOTEND_PID " Settings", 8)) {
|
||||
if (SET_MENU_F(hotendPIDMenu, STR_HOTEND_PID " Settings", items)) {
|
||||
BACK_ITEM(drawAdvancedSettingsMenu);
|
||||
#if ENABLED(PID_AUTOTUNE_MENU)
|
||||
MENU_ITEM_F(ICON_PIDNozzle, STR_HOTEND_PID, onDrawMenuItem, hotendPID);
|
||||
|
|
@ -4021,8 +4124,13 @@ void drawMaxAccelMenu() {
|
|||
#endif
|
||||
|
||||
void drawBedPIDMenu() {
|
||||
constexpr uint8_t items = (1
|
||||
+ TERN0(PID_AUTOTUNE_MENU, 3)
|
||||
+ TERN0(PID_EDIT_MENU, 3)
|
||||
+ ENABLED(EEPROM_SETTINGS)
|
||||
);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU_F(bedPIDMenu, STR_BED_PID " Settings", 8)) {
|
||||
if (SET_MENU_F(bedPIDMenu, STR_BED_PID " Settings", items)) {
|
||||
BACK_ITEM(drawAdvancedSettingsMenu);
|
||||
#if ENABLED(PID_AUTOTUNE_MENU)
|
||||
MENU_ITEM_F(ICON_PIDBed, STR_BED_PID, onDrawMenuItem,bedPID);
|
||||
|
|
@ -4051,8 +4159,13 @@ void drawMaxAccelMenu() {
|
|||
#endif
|
||||
|
||||
void drawChamberPIDMenu() {
|
||||
constexpr uint8_t items = (1
|
||||
+ TERN0(PID_AUTOTUNE_MENU, 3)
|
||||
+ TERN0(PID_EDIT_MENU, 3)
|
||||
+ ENABLED(EEPROM_SETTINGS)
|
||||
);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU_F(chamberPIDMenu, STR_CHAMBER_PID " Settings", 8)) {
|
||||
if (SET_MENU_F(chamberPIDMenu, STR_CHAMBER_PID " Settings", items)) {
|
||||
BACK_ITEM(drawAdvancedSettingsMenu);
|
||||
#if ENABLED(PID_AUTOTUNE_MENU)
|
||||
MENU_ITEM_F(ICON_PIDChamber, STR_CHAMBER_PID, onDrawMenuItem,chamberPID);
|
||||
|
|
@ -4096,8 +4209,9 @@ void drawMaxAccelMenu() {
|
|||
#if ENABLED(INDIVIDUAL_AXIS_HOMING_SUBMENU)
|
||||
|
||||
void drawHomingMenu() {
|
||||
constexpr uint8_t items = 2 + COUNT_ENABLED(HAS_X_AXIS, HAS_Y_AXIS, HAS_Z_AXIS, Z_STEPPER_AUTO_ALIGN, MESH_BED_LEVELING);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU(homingMenu, MSG_HOMING, 6)) {
|
||||
if (SET_MENU(homingMenu, MSG_HOMING, items)) {
|
||||
BACK_ITEM(drawPrepareMenu);
|
||||
MENU_ITEM(ICON_Homing, MSG_AUTO_HOME, onDrawMenuItem, autoHome);
|
||||
#if HAS_X_AXIS
|
||||
|
|
@ -4212,8 +4326,16 @@ void drawMaxAccelMenu() {
|
|||
#if HAS_MESH
|
||||
|
||||
void drawMeshSetMenu() {
|
||||
constexpr uint8_t items = (1
|
||||
+ ENABLED(PREHEAT_BEFORE_LEVELING)
|
||||
+ 2
|
||||
+ ENABLED(HAS_BED_PROBE)
|
||||
+ TERN0(AUTO_BED_LEVELING_UBL, 6)
|
||||
+ TERN0(PROUI_MESH_EDIT, 2)
|
||||
+ 1
|
||||
);
|
||||
checkkey = ID_Menu;
|
||||
if (SET_MENU(meshMenu, MSG_MESH_LEVELING, 14)) {
|
||||
if (SET_MENU(meshMenu, MSG_MESH_LEVELING, items)) {
|
||||
BACK_ITEM(drawAdvancedSettingsMenu);
|
||||
#if ENABLED(PREHEAT_BEFORE_LEVELING)
|
||||
EDIT_ITEM(ICON_Temperature, MSG_UBL_SET_TEMP_BED, onDrawPIntMenu, setBedLevT, &hmiData.bedLevT);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue