Use font ascent and descent for line positioning (#12224)

This commit is contained in:
N95JPL
2018-10-31 03:39:44 +00:00
committed by Scott Lahteine
parent 9cd3529108
commit b780b69c62
4 changed files with 110 additions and 104 deletions

View File

@@ -45,7 +45,7 @@
FORCE_INLINE void _draw_centered_temp(const int16_t temp, const uint8_t x, const uint8_t y) {
const char * const str = itostr3(temp);
lcd_moveto(x - (str[0] != ' ' ? 0 : str[1] != ' ' ? 1 : 2) * DOG_CHAR_WIDTH / 2, y);
lcd_moveto(x - (str[0] != ' ' ? 0 : str[1] != ' ' ? 1 : 2) * MENU_FONT_WIDTH / 2, y);
lcd_put_u8str(str);
lcd_put_u8str_P(PSTR(LCD_STR_DEGREE " "));
}
@@ -178,7 +178,7 @@ FORCE_INLINE void lcd_implementation_status_message(const bool blink) {
lcd_put_wchar('.');
if (--chars) {
// Print a second copy of the message
lcd_put_u8str_max(lcd_status_message, LCD_PIXEL_WIDTH - ((rlen+2) * DOG_CHAR_WIDTH));
lcd_put_u8str_max(lcd_status_message, LCD_PIXEL_WIDTH - ((rlen+2) * MENU_FONT_WIDTH));
}
}
}
@@ -356,9 +356,9 @@ void lcd_impl_status_screen_0() {
//
#if DISABLED(DOGM_SD_PERCENT)
#define SD_DURATION_X (PROGRESS_BAR_X + (PROGRESS_BAR_WIDTH / 2) - len * (DOG_CHAR_WIDTH / 2))
#define SD_DURATION_X (PROGRESS_BAR_X + (PROGRESS_BAR_WIDTH / 2) - len * (MENU_FONT_WIDTH / 2))
#else
#define SD_DURATION_X (LCD_PIXEL_WIDTH - len * DOG_CHAR_WIDTH)
#define SD_DURATION_X (LCD_PIXEL_WIDTH - len * MENU_FONT_WIDTH)
#endif
if (PAGE_CONTAINS(41, 48)) {
@@ -376,7 +376,7 @@ void lcd_impl_status_screen_0() {
// XYZ Coordinates
//
#define XYZ_BASELINE (30 + INFO_FONT_HEIGHT)
#define XYZ_BASELINE (30 + INFO_FONT_ASCENT)
#define X_LABEL_POS 3
#define X_VALUE_POS 11
@@ -384,10 +384,10 @@ void lcd_impl_status_screen_0() {
#if ENABLED(XYZ_HOLLOW_FRAME)
#define XYZ_FRAME_TOP 29
#define XYZ_FRAME_HEIGHT INFO_FONT_HEIGHT + 3
#define XYZ_FRAME_HEIGHT INFO_FONT_ASCENT + 3
#else
#define XYZ_FRAME_TOP 30
#define XYZ_FRAME_HEIGHT INFO_FONT_HEIGHT + 1
#define XYZ_FRAME_HEIGHT INFO_FONT_ASCENT + 1
#endif
static char xstring[5], ystring[5], zstring[8];
@@ -419,7 +419,7 @@ void lcd_impl_status_screen_0() {
u8g.drawBox(0, XYZ_FRAME_TOP, LCD_PIXEL_WIDTH, XYZ_FRAME_HEIGHT); // 8: 30-39 7: 30-37
#endif
if (PAGE_CONTAINS(XYZ_BASELINE - (INFO_FONT_HEIGHT - 1), XYZ_BASELINE)) {
if (PAGE_CONTAINS(XYZ_BASELINE - (INFO_FONT_ASCENT - 1), XYZ_BASELINE)) {
#if DISABLED(XYZ_HOLLOW_FRAME)
u8g.setColorIndex(0); // white on black
@@ -449,14 +449,15 @@ void lcd_impl_status_screen_0() {
//
// Feedrate
//
#define EXTRAS_BASELINE 50
if (PAGE_CONTAINS(51 - INFO_FONT_HEIGHT, 49)) {
if (PAGE_CONTAINS(EXTRAS_BASELINE - (INFO_FONT_HEIGHT - 1), EXTRAS_BASELINE)) {
lcd_setFont(FONT_MENU);
lcd_moveto(3, 50);
lcd_moveto(3, EXTRAS_BASELINE);
lcd_put_wchar(LCD_STR_FEEDRATE[0]);
lcd_setFont(FONT_STATUSMENU);
lcd_moveto(12, 50);
lcd_moveto(12, EXTRAS_BASELINE);
lcd_put_u8str(itostr3(feedrate_percentage));
lcd_put_wchar('%');
@@ -464,15 +465,15 @@ void lcd_impl_status_screen_0() {
// Filament sensor display if SD is disabled
//
#if ENABLED(FILAMENT_LCD_DISPLAY) && DISABLED(SDSUPPORT)
lcd_moveto(56, 50);
lcd_moveto(56, EXTRAS_BASELINE);
lcd_put_u8str(wstring);
lcd_moveto(102, 50);
lcd_moveto(102, EXTRAS_BASELINE);
lcd_put_u8str(mstring);
lcd_put_wchar('%');
lcd_setFont(FONT_MENU);
lcd_moveto(47, 50);
lcd_moveto(47, EXTRAS_BASELINE);
lcd_put_wchar(LCD_STR_FILAM_DIA[0]); // lcd_put_u8str_P(PSTR(LCD_STR_FILAM_DIA));
lcd_moveto(93, 50);
lcd_moveto(93, EXTRAS_BASELINE);
lcd_put_wchar(LCD_STR_FILAM_MUL[0]);
#endif
}
@@ -481,9 +482,9 @@ void lcd_impl_status_screen_0() {
// Status line
//
#define STATUS_BASELINE (55 + INFO_FONT_HEIGHT)
#define STATUS_BASELINE (LCD_PIXEL_HEIGHT - INFO_FONT_DESCENT)
if (PAGE_CONTAINS(STATUS_BASELINE - (INFO_FONT_HEIGHT - 1), STATUS_BASELINE)) {
if (PAGE_CONTAINS(STATUS_BASELINE - (INFO_FONT_ASCENT - 1), STATUS_BASELINE)) {
lcd_moveto(0, STATUS_BASELINE);
#if ENABLED(FILAMENT_LCD_DISPLAY) && ENABLED(SDSUPPORT)