From d4c3ff743bc80f91d0f699f60cd01f267673b394 Mon Sep 17 00:00:00 2001 From: 3djc Date: Sat, 8 Apr 2017 16:59:21 +0200 Subject: [PATCH] 3djc/x7 draw timer (#4764) * Use drawText with tiem string like x12s. Change font ':' which where way to large for SMLSIZE * MIDSIZE ':' lower dot was not horizontaly symetrical, moving it up one pixel * Make it all ARM * Let's try not to brake timer adjust * Fix --- radio/src/fonts/std/font_04x06.png | Bin 755 -> 762 bytes radio/src/fonts/std/font_08x10.png | Bin 1003 -> 1339 bytes radio/src/gui/128x64/lcd.cpp | 2 +- radio/src/gui/common/arm/widgets.cpp | 11 ++++++----- 4 files changed, 7 insertions(+), 6 deletions(-) diff --git a/radio/src/fonts/std/font_04x06.png b/radio/src/fonts/std/font_04x06.png index 7afcb839ef8669272a0f28bbabb5dffe0704ac4f..0b3cd8824e26771d8d731884676a5a8f4b5f812d 100644 GIT binary patch delta 696 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 O0000f delta 965 zcmdnZ^_qQxL@*-*5QzOdupdaVq&xaLGB9lH=l+w(3gjy!dj$D1FjT2AFf_C&&uiZGt-_iL)g3%Y@83HDy9P?ZZ z7YQn!ouIg)oAuyNfmm-(odVkxr_41Jr>vOF$tkk5Bl!MYk;_Z+H#{hRfA6=n;*KTE znxE(7NfsSoQ)&0EP)d)l-*+%A+ZXy(EfT5+9%*Ej`O zm{yzJ5L)Q>i!1BG;jM-d3}N>VRb+2zKlrGAad}CJ`SC;IlXtJHYnU41r^TQyQx#Jn z$HaNNJvULV=yoP|5{mI$1x=XT#j%i!KH%u$Gw5 zT)-L=|1hNV#X^o8*Mep1r(|d6wm9$}O;BTte!QURuej~}=`v3aolR7Xxp6E^=fL-j z=LeY23G=QjJhCQ6b{1EY1LMxthW3Y33r|^`d%%60qgQ38fl!;X?>_}?1-*qEn*_`b zrKHryWG~2N6;L^}C$-m zn`=ee$~F(i{jEOJ4C3Vc)jyv5^zY{D7jHkY{McY-^C3B^`;yz0H9rpot4XZh7BNN7 z)%RFKy+cEV_(6>Z#g2##9aCjR(s`2k8Pg5sY;2D{R&OY0$mQD>-SuGJnLSFo=7e8U zzPkHDYZ&K8nY7K-AAYlk^v|#E_7PS1^OI}sL%G9C&!kUht9$)p@8*deGw;vYFrPKR z=#$8qjF6a>a{ZTP_|BUAGSM((iL#mPjE4E2l60HO?dJYm!|G}qjE%Jo46O_d944DT gf$D&0$jwj5OsmAL!SGyv1W*Hmr>mdKI;Vst06}t-qyPW_ diff --git a/radio/src/gui/128x64/lcd.cpp b/radio/src/gui/128x64/lcd.cpp index 81aa86fc2..09673710a 100644 --- a/radio/src/gui/128x64/lcd.cpp +++ b/radio/src/gui/128x64/lcd.cpp @@ -815,7 +815,7 @@ void drawTimer(coord_t x, coord_t y, putstime_t tme, LcdFlags att, LcdFlags att2 #endif lcdDrawNumber(x, y, qr.quot, att|LEADING0|LEFT, 2); #if defined(CPUARM) - if (att & MIDSIZE) { + if (FONTSIZE(att) == MIDSIZE) { lcdLastRightPos--; } if (separator == CHR_HOUR) diff --git a/radio/src/gui/common/arm/widgets.cpp b/radio/src/gui/common/arm/widgets.cpp index b8b1ed382..3e9bee876 100644 --- a/radio/src/gui/common/arm/widgets.cpp +++ b/radio/src/gui/common/arm/widgets.cpp @@ -28,16 +28,16 @@ void drawCurveRef(coord_t x, coord_t y, CurveRef & curve, LcdFlags att) lcdDrawText(x, y, "D", att); GVAR_MENU_ITEM(lcdNextPos, y, curve.value, -100, 100, LEFT|att, 0, 0); break; - + case CURVE_REF_EXPO: lcdDrawText(x, y, "E", att); GVAR_MENU_ITEM(lcdNextPos, y, curve.value, -100, 100, LEFT|att, 0, 0); break; - + case CURVE_REF_FUNC: lcdDrawTextAtIndex(x, y, STR_VCURVEFUNC, curve.value, att); break; - + case CURVE_REF_CUSTOM: drawCurveName(x, y, curve.value, att); break; @@ -51,10 +51,10 @@ void drawSensorCustomValue(coord_t x, coord_t y, uint8_t sensor, int32_t value, // Lua luaLcdDrawChannel() can call us with a bad value return; } - + TelemetryItem & telemetryItem = telemetryItems[sensor]; TelemetrySensor & telemetrySensor = g_model.telemetrySensors[sensor]; - + if (telemetrySensor.unit == UNIT_DATETIME) { drawDate(x, y, telemetryItem, flags); } @@ -126,6 +126,7 @@ void drawSourceCustomValue(coord_t x, coord_t y, source_t source, int32_t value, drawSensorCustomValue(x, y, source, value, flags); } else if (source >= MIXSRC_FIRST_TIMER || source == MIXSRC_TX_TIME) { + if (value < 0) flags |= BLINK|INVERS; drawTimer(x, y, value, flags); } else if (source == MIXSRC_TX_VOLTAGE) {