🎨 Update MKS UI for no bed, extruder (#22938)
Co-authored-by: Scott Lahteine <thinkyhead@users.noreply.github.com>
This commit is contained in:
		@@ -60,18 +60,20 @@ 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) {
 | 
			
		||||
        int16_t max_target;
 | 
			
		||||
        thermalManager.temp_hotend[uiCfg.extruderIndex].target += uiCfg.stepHeat;
 | 
			
		||||
        if (uiCfg.extruderIndex == 0)
 | 
			
		||||
          max_target = HEATER_0_MAXTEMP - (WATCH_TEMP_INCREASE + TEMP_HYSTERESIS + 1);
 | 
			
		||||
        else {
 | 
			
		||||
          #if HAS_MULTI_HOTEND
 | 
			
		||||
            max_target = HEATER_1_MAXTEMP - (WATCH_TEMP_INCREASE + TEMP_HYSTERESIS + 1);
 | 
			
		||||
          #endif
 | 
			
		||||
        }
 | 
			
		||||
        if (thermalManager.degTargetHotend(uiCfg.extruderIndex) > max_target)
 | 
			
		||||
          thermalManager.setTargetHotend(max_target, uiCfg.extruderIndex);
 | 
			
		||||
        thermalManager.start_watching_hotend(uiCfg.extruderIndex);
 | 
			
		||||
        #if HAS_HOTEND
 | 
			
		||||
          int16_t max_target;
 | 
			
		||||
          thermalManager.temp_hotend[uiCfg.extruderIndex].target += uiCfg.stepHeat;
 | 
			
		||||
          if (uiCfg.extruderIndex == 0)
 | 
			
		||||
            max_target = HEATER_0_MAXTEMP - (WATCH_TEMP_INCREASE + TEMP_HYSTERESIS + 1);
 | 
			
		||||
          else {
 | 
			
		||||
            #if HAS_MULTI_HOTEND
 | 
			
		||||
              max_target = HEATER_1_MAXTEMP - (WATCH_TEMP_INCREASE + TEMP_HYSTERESIS + 1);
 | 
			
		||||
            #endif
 | 
			
		||||
          }
 | 
			
		||||
          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 (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);
 | 
			
		||||
        #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) {
 | 
			
		||||
        thermalManager.setTargetHotend(0, uiCfg.extruderIndex);
 | 
			
		||||
        thermalManager.start_watching_hotend(uiCfg.extruderIndex);
 | 
			
		||||
        #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) {
 | 
			
		||||
    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));
 | 
			
		||||
    #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
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user