From dc012f7f3eab72dfb893b706101c866aaaa0abc5 Mon Sep 17 00:00:00 2001 From: eshifri Date: Fri, 20 Aug 2021 08:45:48 -0700 Subject: [PATCH 1/4] Add delay icons to mixies #601 --- radio/src/gui/colorlcd/bitmaps.h | 6 +++--- radio/src/gui/colorlcd/model_mixes.cpp | 8 ++++++++ radio/src/gui/colorlcd/themes/480_default.cpp | 16 ++++++++-------- 3 files changed, 19 insertions(+), 11 deletions(-) diff --git a/radio/src/gui/colorlcd/bitmaps.h b/radio/src/gui/colorlcd/bitmaps.h index 60950a707..263138adc 100644 --- a/radio/src/gui/colorlcd/bitmaps.h +++ b/radio/src/gui/colorlcd/bitmaps.h @@ -102,8 +102,8 @@ extern BitmapBuffer * mixerSetupLabelIcon; extern BitmapBuffer * mixerSetupFlightmodeIcon; extern BitmapBuffer * mixerSetupCurveIcon; extern BitmapBuffer * mixerSetupSwitchIcon; -//extern BitmapBuffer * mixerSetupDelayIcon; -//extern BitmapBuffer * mixerSetupSlowIcon; -//extern BitmapBuffer * mixerSetupDelaySlowIcon; +extern BitmapBuffer * mixerSetupDelayIcon; +extern BitmapBuffer * mixerSetupSlowIcon; +extern BitmapBuffer * mixerSetupDelaySlowIcon; #endif // _BITMAPS_H_ diff --git a/radio/src/gui/colorlcd/model_mixes.cpp b/radio/src/gui/colorlcd/model_mixes.cpp index 1e67b5656..63a1c4f78 100644 --- a/radio/src/gui/colorlcd/model_mixes.cpp +++ b/radio/src/gui/colorlcd/model_mixes.cpp @@ -286,6 +286,14 @@ class MixLineButton : public CommonInputOrMixButton if (line.flightModes) { drawFlightModes(dc, line.flightModes, textColor); } + + uint8_t delayslow = 0; + if (line.speedDown || line.speedUp) delayslow = 1; + if (line.delayUp || line.delayDown) delayslow += 2; + if (delayslow) { + BitmapBuffer *delayslowbmp[] = {mixerSetupSlowIcon, mixerSetupDelayIcon, mixerSetupDelaySlowIcon}; + dc->drawMask(width() - 16, PAGE_LINE_HEIGHT + FIELD_PADDING_TOP, delayslowbmp[delayslow - 1], textColor); + } } }; diff --git a/radio/src/gui/colorlcd/themes/480_default.cpp b/radio/src/gui/colorlcd/themes/480_default.cpp index c45ae3762..b24c35381 100644 --- a/radio/src/gui/colorlcd/themes/480_default.cpp +++ b/radio/src/gui/colorlcd/themes/480_default.cpp @@ -296,14 +296,14 @@ class Theme480: public OpenTxTheme delete mixerSetupFlightmodeIcon; mixerSetupFlightmodeIcon = BitmapBuffer::load8bitMask(mask_textline_fm); -// delete mixerSetupSlowIcon; -// mixerSetupSlowIcon = BitmapBuffer::loadMask(getFilePath("mask_textline_slow.png")); -// -// delete mixerSetupDelayIcon; -// mixerSetupDelayIcon = BitmapBuffer::loadMask(getFilePath("mask_textline_delay.png")); -// -// delete mixerSetupDelaySlowIcon; -// mixerSetupDelaySlowIcon = BitmapBuffer::loadMask(getFilePath("mask_textline_delayslow.png")); + delete mixerSetupSlowIcon; + mixerSetupSlowIcon = BitmapBuffer::load8bitMask(mask_textline_slow); + + delete mixerSetupDelayIcon; + mixerSetupDelayIcon = BitmapBuffer::load8bitMask(mask_textline_delay); + + delete mixerSetupDelaySlowIcon; + mixerSetupDelaySlowIcon = BitmapBuffer::load8bitMask(mask_textline_delayslow); } void load() const override From 1e36050bcf4e4ee3eeaf6e5c9e96862577fd263c Mon Sep 17 00:00:00 2001 From: eshifri Date: Fri, 20 Aug 2021 22:56:51 -0700 Subject: [PATCH 2/4] Shift flight modes string display for vertical screen --- radio/src/gui/colorlcd/model_inputs.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/radio/src/gui/colorlcd/model_inputs.cpp b/radio/src/gui/colorlcd/model_inputs.cpp index 2157ac2b3..754e42179 100644 --- a/radio/src/gui/colorlcd/model_inputs.cpp +++ b/radio/src/gui/colorlcd/model_inputs.cpp @@ -315,9 +315,15 @@ void CommonInputOrMixButton::drawFlightModes(BitmapBuffer *dc, FlightModesType value, LcdFlags textColor) { + coord_t startX; + if (LCD_W > LCD_H) + startX = 146; + else + startX = 136; + dc->drawMask(146, 2 + PAGE_LINE_HEIGHT + FIELD_PADDING_TOP, mixerSetupFlightmodeIcon, textColor); - coord_t x = 166; + coord_t x = startX + 20;//166; for (int i = 0; i < MAX_FLIGHT_MODES; i++) { char s[] = " "; s[0] = '0' + i; From aa28f1be44a986d9320710978e373a9b393bb308 Mon Sep 17 00:00:00 2001 From: eshifri Date: Sat, 21 Aug 2021 15:38:55 -0700 Subject: [PATCH 3/4] Shift flight modes string display for vertical screen --- radio/src/gui/colorlcd/model_mixes.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/radio/src/gui/colorlcd/model_mixes.cpp b/radio/src/gui/colorlcd/model_mixes.cpp index 63a1c4f78..1434d1d19 100644 --- a/radio/src/gui/colorlcd/model_mixes.cpp +++ b/radio/src/gui/colorlcd/model_mixes.cpp @@ -287,12 +287,13 @@ class MixLineButton : public CommonInputOrMixButton drawFlightModes(dc, line.flightModes, textColor); } + // Put this icon on the first line, since we jave more space there uint8_t delayslow = 0; if (line.speedDown || line.speedUp) delayslow = 1; if (line.delayUp || line.delayDown) delayslow += 2; if (delayslow) { BitmapBuffer *delayslowbmp[] = {mixerSetupSlowIcon, mixerSetupDelayIcon, mixerSetupDelaySlowIcon}; - dc->drawMask(width() - 16, PAGE_LINE_HEIGHT + FIELD_PADDING_TOP, delayslowbmp[delayslow - 1], textColor); + dc->drawMask(width() - 16, FIELD_PADDING_TOP, delayslowbmp[delayslow - 1], textColor); } } }; From 4f111cfa780eb006b825078ca8ea0e576583bb90 Mon Sep 17 00:00:00 2001 From: eshifri Date: Sat, 21 Aug 2021 17:19:45 -0700 Subject: [PATCH 4/4] undo changes --- radio/src/gui/colorlcd/model_inputs.cpp | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/radio/src/gui/colorlcd/model_inputs.cpp b/radio/src/gui/colorlcd/model_inputs.cpp index 754e42179..2157ac2b3 100644 --- a/radio/src/gui/colorlcd/model_inputs.cpp +++ b/radio/src/gui/colorlcd/model_inputs.cpp @@ -315,15 +315,9 @@ void CommonInputOrMixButton::drawFlightModes(BitmapBuffer *dc, FlightModesType value, LcdFlags textColor) { - coord_t startX; - if (LCD_W > LCD_H) - startX = 146; - else - startX = 136; - dc->drawMask(146, 2 + PAGE_LINE_HEIGHT + FIELD_PADDING_TOP, mixerSetupFlightmodeIcon, textColor); - coord_t x = startX + 20;//166; + coord_t x = 166; for (int i = 0; i < MAX_FLIGHT_MODES; i++) { char s[] = " "; s[0] = '0' + i;