Add heating progress bars (#12543)
This commit is contained in:
@@ -31,6 +31,8 @@
|
||||
|
||||
#include "../../inc/MarlinConfig.h"
|
||||
|
||||
#define BW(N) ((N + 7) / 8)
|
||||
|
||||
#if ENABLED(CUSTOM_STATUS_SCREEN_IMAGE)
|
||||
|
||||
/**
|
||||
@@ -49,13 +51,18 @@
|
||||
|
||||
#endif
|
||||
|
||||
#if ENABLED(STATUS_COMBINE_HEATERS)
|
||||
#undef STATUS_HOTEND_ANIM
|
||||
#undef STATUS_BED_ANIM
|
||||
#endif
|
||||
|
||||
//
|
||||
// Default Status Screen Heater or Hotends bitmaps
|
||||
//
|
||||
|
||||
#if !STATUS_HEATERS_WIDTH && !STATUS_HOTEND1_WIDTH
|
||||
|
||||
#ifdef STATUS_COMBINE_HEATERS
|
||||
#if ENABLED(STATUS_COMBINE_HEATERS)
|
||||
|
||||
//
|
||||
// Status Screen Combined Heater bitmaps
|
||||
@@ -67,6 +74,8 @@
|
||||
|
||||
#if HAS_HEATED_BED && HOTENDS <= 3
|
||||
|
||||
#define STATUS_BED_WIDTH 18
|
||||
|
||||
#if HOTENDS == 0
|
||||
|
||||
#define STATUS_HEATERS_WIDTH 18
|
||||
@@ -89,6 +98,7 @@
|
||||
#elif HOTENDS == 1
|
||||
|
||||
#define STATUS_HEATERS_WIDTH 90
|
||||
#define STATUS_BED_X 80
|
||||
|
||||
const unsigned char status_heaters_bmp[] PROGMEM = {
|
||||
B00011111,B11100000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00000000,B00100000,B10000010,B00000000,
|
||||
@@ -237,7 +247,7 @@
|
||||
|
||||
#define STATUS_HOTEND1_WIDTH 12
|
||||
|
||||
#if HOTENDS == 1 || defined(STATUS_HOTEND_NUMBERLESS)
|
||||
#if HOTENDS == 1 || ENABLED(STATUS_HOTEND_NUMBERLESS)
|
||||
|
||||
const unsigned char status_hotend_a_bmp[] PROGMEM = {
|
||||
B00011111,B11100000,
|
||||
@@ -563,9 +573,9 @@
|
||||
// Default Status Screen Bed bitmaps
|
||||
//
|
||||
|
||||
#if !STATUS_BED_WIDTH && !defined(STATUS_COMBINE_HEATERS) && HAS_HEATED_BED && HOTENDS < 4
|
||||
#if !STATUS_BED_WIDTH && DISABLED(STATUS_COMBINE_HEATERS) && HAS_HEATED_BED && HOTENDS < 4
|
||||
|
||||
#ifdef STATUS_ALT_BED_BITMAP
|
||||
#if ENABLED(STATUS_ALT_BED_BITMAP)
|
||||
|
||||
#define STATUS_BED_ANIM
|
||||
#define STATUS_BED_WIDTH 24
|
||||
@@ -886,7 +896,7 @@
|
||||
#define STATUS_LOGO_WIDTH 0
|
||||
#endif
|
||||
#ifndef STATUS_LOGO_BYTEWIDTH
|
||||
#define STATUS_LOGO_BYTEWIDTH ((STATUS_LOGO_WIDTH + 7) / 8)
|
||||
#define STATUS_LOGO_BYTEWIDTH BW(STATUS_LOGO_WIDTH)
|
||||
#endif
|
||||
#if STATUS_LOGO_WIDTH
|
||||
#ifndef STATUS_LOGO_X
|
||||
@@ -953,22 +963,22 @@
|
||||
#define STATUS_HOTEND_WIDTH(N) status_hotend_width[N]
|
||||
|
||||
#ifndef STATUS_HOTEND1_BYTEWIDTH
|
||||
#define STATUS_HOTEND1_BYTEWIDTH ((STATUS_HOTEND1_WIDTH + 7) / 8)
|
||||
#define STATUS_HOTEND1_BYTEWIDTH BW(STATUS_HOTEND1_WIDTH)
|
||||
#endif
|
||||
#ifndef STATUS_HOTEND2_BYTEWIDTH
|
||||
#define STATUS_HOTEND2_BYTEWIDTH ((STATUS_HOTEND2_WIDTH + 7) / 8)
|
||||
#define STATUS_HOTEND2_BYTEWIDTH BW(STATUS_HOTEND2_WIDTH)
|
||||
#endif
|
||||
#ifndef STATUS_HOTEND3_BYTEWIDTH
|
||||
#define STATUS_HOTEND3_BYTEWIDTH ((STATUS_HOTEND3_WIDTH + 7) / 8)
|
||||
#define STATUS_HOTEND3_BYTEWIDTH BW(STATUS_HOTEND3_WIDTH)
|
||||
#endif
|
||||
#ifndef STATUS_HOTEND4_BYTEWIDTH
|
||||
#define STATUS_HOTEND4_BYTEWIDTH ((STATUS_HOTEND4_WIDTH + 7) / 8)
|
||||
#define STATUS_HOTEND4_BYTEWIDTH BW(STATUS_HOTEND4_WIDTH)
|
||||
#endif
|
||||
#ifndef STATUS_HOTEND5_BYTEWIDTH
|
||||
#define STATUS_HOTEND5_BYTEWIDTH ((STATUS_HOTEND5_WIDTH + 7) / 8)
|
||||
#define STATUS_HOTEND5_BYTEWIDTH BW(STATUS_HOTEND5_WIDTH)
|
||||
#endif
|
||||
#ifndef STATUS_HOTEND6_BYTEWIDTH
|
||||
#define STATUS_HOTEND6_BYTEWIDTH ((STATUS_HOTEND6_WIDTH + 7) / 8)
|
||||
#define STATUS_HOTEND6_BYTEWIDTH BW(STATUS_HOTEND6_WIDTH)
|
||||
#endif
|
||||
|
||||
constexpr uint8_t status_hotend_bytewidth[HOTENDS] = ARRAY_N(HOTENDS, STATUS_HOTEND1_BYTEWIDTH, STATUS_HOTEND2_BYTEWIDTH, STATUS_HOTEND3_BYTEWIDTH, STATUS_HOTEND4_BYTEWIDTH, STATUS_HOTEND5_BYTEWIDTH, STATUS_HOTEND6_BYTEWIDTH);
|
||||
@@ -1054,11 +1064,20 @@
|
||||
|
||||
#elif STATUS_HEATERS_WIDTH
|
||||
|
||||
#ifndef STATUS_HEATERS_XSPACE
|
||||
#define STATUS_HEATERS_XSPACE 24
|
||||
#endif
|
||||
#ifndef STATUS_HOTEND_WIDTH
|
||||
#define STATUS_HOTEND_WIDTH(N) 10
|
||||
#endif
|
||||
#ifndef STATUS_HOTEND_X
|
||||
#define STATUS_HOTEND_X(N) (STATUS_HEATERS_X + 2 + (N) * (STATUS_HEATERS_XSPACE))
|
||||
#endif
|
||||
#ifndef STATUS_HOTEND_TEXT_X
|
||||
#define STATUS_HOTEND_TEXT_X(N) (STATUS_HEATERS_X + 6 + (N) * (STATUS_HEATERS_XSPACE))
|
||||
#endif
|
||||
#ifndef STATUS_HEATERS_BYTEWIDTH
|
||||
#define STATUS_HEATERS_BYTEWIDTH ((STATUS_HEATERS_WIDTH + 7) / 8)
|
||||
#define STATUS_HEATERS_BYTEWIDTH BW(STATUS_HEATERS_WIDTH)
|
||||
#endif
|
||||
#ifndef STATUS_HEATERS_HEIGHT
|
||||
#define STATUS_HEATERS_HEIGHT (sizeof(status_heaters_bmp) / (STATUS_HEATERS_BYTEWIDTH))
|
||||
@@ -1081,9 +1100,9 @@
|
||||
#define STATUS_BED_WIDTH 0
|
||||
#endif
|
||||
#ifndef STATUS_BED_BYTEWIDTH
|
||||
#define STATUS_BED_BYTEWIDTH ((STATUS_BED_WIDTH + 7) / 8)
|
||||
#define STATUS_BED_BYTEWIDTH BW(STATUS_BED_WIDTH)
|
||||
#endif
|
||||
#if STATUS_BED_WIDTH
|
||||
#if STATUS_BED_WIDTH && !STATUS_HEATERS_WIDTH
|
||||
|
||||
#ifndef STATUS_BED_X
|
||||
#define STATUS_BED_X (128 - (STATUS_FAN_BYTEWIDTH + STATUS_BED_BYTEWIDTH) * 8)
|
||||
@@ -1125,7 +1144,7 @@
|
||||
#define STATUS_FAN_WIDTH 0
|
||||
#endif
|
||||
#ifndef STATUS_FAN_BYTEWIDTH
|
||||
#define STATUS_FAN_BYTEWIDTH ((STATUS_FAN_WIDTH + 7) / 8)
|
||||
#define STATUS_FAN_BYTEWIDTH BW(STATUS_FAN_WIDTH)
|
||||
#endif
|
||||
#if STATUS_FAN_FRAMES
|
||||
#ifndef STATUS_FAN_X
|
||||
|
||||
Reference in New Issue
Block a user