🎨 Update MKS UI for no bed, extruder (#22938)

Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
This commit is contained in:
Dmytro 2021-10-13 05:45:00 +03:00 committed by Scott Lahteine
parent 5b1ef638ee
commit ae98d2e5ea

View File

@ -60,6 +60,7 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) {
switch (obj->mks_obj_id) {
case ID_P_ADD: {
if (uiCfg.curTempType == 0) {
#if HAS_HOTEND
int16_t max_target;
thermalManager.temp_hotend[uiCfg.extruderIndex].target += uiCfg.stepHeat;
if (uiCfg.extruderIndex == 0)
@ -72,6 +73,7 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) {
if (thermalManager.degTargetHotend(uiCfg.extruderIndex) > max_target)
thermalManager.setTargetHotend(max_target, uiCfg.extruderIndex);
thermalManager.start_watching_hotend(uiCfg.extruderIndex);
#endif
}
else {
#if HAS_HEATED_BED
@ -87,11 +89,13 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) {
case ID_P_DEC:
if (uiCfg.curTempType == 0) {
#if HAS_HOTEND
if (thermalManager.degTargetHotend(uiCfg.extruderIndex) > uiCfg.stepHeat)
thermalManager.temp_hotend[uiCfg.extruderIndex].target -= uiCfg.stepHeat;
else
thermalManager.setTargetHotend(0, uiCfg.extruderIndex);
thermalManager.start_watching_hotend(uiCfg.extruderIndex);
#endif
}
else {
#if HAS_HEATED_BED
@ -99,7 +103,6 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) {
thermalManager.temp_bed.target -= uiCfg.stepHeat;
else
thermalManager.setTargetBed(0);
thermalManager.start_watching_bed();
#endif
}
@ -142,8 +145,10 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) {
break;
case ID_P_OFF:
if (uiCfg.curTempType == 0) {
#if HAS_HOTEND
thermalManager.setTargetHotend(0, uiCfg.extruderIndex);
thermalManager.start_watching_hotend(uiCfg.extruderIndex);
#endif
}
else {
#if HAS_HEATED_BED
@ -158,16 +163,20 @@ static void event_handler(lv_obj_t *obj, lv_event_t event) {
draw_return_ui();
break;
case ID_P_ABS:
if (uiCfg.curTempType == 0)
thermalManager.setTargetHotend(PREHEAT_2_TEMP_HOTEND, 0);
else if (uiCfg.curTempType == 1)
thermalManager.setTargetBed(PREHEAT_2_TEMP_BED);
if (uiCfg.curTempType == 0) {
TERN_(HAS_HOTEND, thermalManager.setTargetHotend(PREHEAT_2_TEMP_HOTEND, 0));
}
else if (uiCfg.curTempType == 1) {
TERN_(HAS_HEATED_BED, thermalManager.setTargetBed(PREHEAT_2_TEMP_BED));
}
break;
case ID_P_PLA:
if (uiCfg.curTempType == 0)
thermalManager.setTargetHotend(PREHEAT_1_TEMP_HOTEND, 0);
else if (uiCfg.curTempType == 1)
thermalManager.setTargetBed(PREHEAT_1_TEMP_BED);
if (uiCfg.curTempType == 0) {
TERN_(HAS_HOTEND, thermalManager.setTargetHotend(PREHEAT_1_TEMP_HOTEND, 0));
}
else if (uiCfg.curTempType == 1) {
TERN_(HAS_HEATED_BED, thermalManager.setTargetBed(PREHEAT_1_TEMP_BED));
}
break;
}
}
@ -227,14 +236,14 @@ void disp_ext_heart() {
void disp_temp_type() {
if (uiCfg.curTempType == 0) {
if (uiCfg.extruderIndex == 1) {
if (TERN0(HAS_MULTI_EXTRUDER, uiCfg.extruderIndex == 1)) {
lv_imgbtn_set_src_both(buttonType, "F:/bmp_extru2.bin");
if (gCfgItems.multiple_language) {
lv_label_set_text(labelType, preheat_menu.ext2);
lv_obj_align(labelType, buttonType, LV_ALIGN_IN_BOTTOM_MID, 0, BUTTON_TEXT_Y_OFFSET);
}
}
else {
else if (ENABLED(HAS_HOTEND)) {
lv_imgbtn_set_src_both(buttonType, "F:/bmp_extru1.bin");
if (gCfgItems.multiple_language) {
lv_label_set_text(labelType, preheat_menu.ext1);
@ -242,7 +251,7 @@ void disp_temp_type() {
}
}
}
else {
else if (ENABLED(HAS_HEATED_BED)) {
lv_imgbtn_set_src_both(buttonType, "F:/bmp_bed.bin");
if (gCfgItems.multiple_language) {
lv_label_set_text(labelType, preheat_menu.hotbed);
@ -256,8 +265,10 @@ void disp_desire_temp() {
public_buf_l[0] = '\0';
if (uiCfg.curTempType == 0) {
#if HAS_HOTEND
strcat(public_buf_l, uiCfg.extruderIndex < 1 ? preheat_menu.ext1 : preheat_menu.ext2);
sprintf(buf, preheat_menu.value_state, thermalManager.wholeDegHotend(uiCfg.extruderIndex), thermalManager.degTargetHotend(uiCfg.extruderIndex));
#endif
}
else {
#if HAS_HEATED_BED