From 4bcb703345c00eebcb30ee377d22979f806b618a Mon Sep 17 00:00:00 2001 From: Raphael Coeffic Date: Sat, 15 May 2021 13:35:40 +0200 Subject: [PATCH] Moved even more bitmaps to flash --- radio/src/bitmaps/480x272/CMakeLists.txt | 4 +-- .../480x272/default_theme/mask_asterisk.png | Bin 0 -> 12570 bytes .../480x272/default_theme/mask_busy.png | Bin 0 -> 14831 bytes .../480x272/default_theme}/mask_edgetx.png | Bin .../480x272/default_theme/mask_iconback.png | Bin 0 -> 1498 bytes .../480x272/default_theme/mask_modelname.png | Bin 0 -> 661 bytes .../480x272/default_theme/mask_modelqty.png | Bin 0 -> 773 bytes .../480x272/default_theme/mask_moveback.png | Bin 0 -> 653 bytes .../480x272/default_theme/mask_moveico.png | Bin 0 -> 756 bytes .../480x272/default_theme/mask_question.png | Bin 0 -> 13796 bytes .../480x272/default_theme/mask_sdfree.png | Bin 0 -> 534 bytes .../480x272/default_theme/mask_shutdown.png | Bin 0 -> 12739 bytes .../bitmaps/480x272/default_theme/thumb.png | Bin 0 -> 4051 bytes radio/src/gui/colorlcd/bitmaps.cpp | 2 +- radio/src/gui/colorlcd/bitmaps.h | 2 +- radio/src/gui/colorlcd/draw_functions.cpp | 12 +++----- radio/src/gui/colorlcd/fullscreen_dialog.cpp | 18 +++++------ radio/src/gui/colorlcd/theme.cpp | 25 ++++++++++++++-- radio/src/gui/colorlcd/theme.h | 1 + radio/src/gui/colorlcd/themes/480_bitmaps.h | 16 ++++++++++ radio/src/gui/colorlcd/themes/480_default.cpp | 28 ++++++++++-------- radio/src/gui/colorlcd/themes/flysky.cpp | 14 ++++----- 22 files changed, 78 insertions(+), 44 deletions(-) create mode 100644 radio/src/bitmaps/480x272/default_theme/mask_asterisk.png create mode 100644 radio/src/bitmaps/480x272/default_theme/mask_busy.png rename radio/{sdcard/horus/THEMES/EdgeTX => src/bitmaps/480x272/default_theme}/mask_edgetx.png (100%) create mode 100644 radio/src/bitmaps/480x272/default_theme/mask_iconback.png create mode 100644 radio/src/bitmaps/480x272/default_theme/mask_modelname.png create mode 100644 radio/src/bitmaps/480x272/default_theme/mask_modelqty.png create mode 100644 radio/src/bitmaps/480x272/default_theme/mask_moveback.png create mode 100644 radio/src/bitmaps/480x272/default_theme/mask_moveico.png create mode 100644 radio/src/bitmaps/480x272/default_theme/mask_question.png create mode 100644 radio/src/bitmaps/480x272/default_theme/mask_sdfree.png create mode 100644 radio/src/bitmaps/480x272/default_theme/mask_shutdown.png create mode 100644 radio/src/bitmaps/480x272/default_theme/thumb.png diff --git a/radio/src/bitmaps/480x272/CMakeLists.txt b/radio/src/bitmaps/480x272/CMakeLists.txt index 55d3b6867..100143cce 100644 --- a/radio/src/bitmaps/480x272/CMakeLists.txt +++ b/radio/src/bitmaps/480x272/CMakeLists.txt @@ -40,5 +40,5 @@ add_bitmaps_target(${BITMAP_TARGET_PREFIX}_bootloader_icons ${RADIO_SRC_DIR}/bit add_dependencies(${BITMAP_TARGET_PREFIX}_bitmaps ${BITMAP_TARGET_PREFIX}_calibration_bitmaps ${BITMAP_TARGET_PREFIX}_button_bitmaps ${BITMAP_TARGET_PREFIX}_alpha_bitmaps ${BITMAP_TARGET_PREFIX}_alpha_calibration_bitmaps ${BITMAP_TARGET_PREFIX}_masks ${BITMAP_TARGET_PREFIX}_slider_masks ${BITMAP_TARGET_PREFIX}_layouts_masks - ${BITMAP_TARGET_PREFIX}_fonts ${BITMAP_TARGET_PREFIX}_themes_masks ${BITMAP_TARGET_PREFIX}_themes_alpha - ${BITMAP_TARGET_PREFIX}_volume_masks ${BITMAP_TARGET_PREFIX}_bootloader_bitmaps ${BITMAP_TARGET_PREFIX}_bootloader_icons ) + ${BITMAP_TARGET_PREFIX}_fonts ${BITMAP_TARGET_PREFIX}_themes_masks ${BITMAP_TARGET_PREFIX}_themes_alpha ${BITMAP_TARGET_PREFIX}_splash ${BITMAP_TARGET_PREFIX}_volume_masks + ${BITMAP_TARGET_PREFIX}_bootloader_bitmaps ${BITMAP_TARGET_PREFIX}_bootloader_icons ) diff --git a/radio/src/bitmaps/480x272/default_theme/mask_asterisk.png b/radio/src/bitmaps/480x272/default_theme/mask_asterisk.png new file mode 100644 index 0000000000000000000000000000000000000000..fd10af269206306059e54944a2744b130733fce4 GIT binary patch literal 12570 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 PKL{wus7hB$nuPp6T^pid literal 0 HcmV?d00001 diff --git a/radio/src/bitmaps/480x272/default_theme/mask_busy.png b/radio/src/bitmaps/480x272/default_theme/mask_busy.png new file mode 100644 index 0000000000000000000000000000000000000000..a2d87020526b2eb8bdd3d131fb4a27ed03fe7fd2 GIT binary patch literal 14831 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 B`A`4= literal 0 HcmV?d00001 diff --git a/radio/sdcard/horus/THEMES/EdgeTX/mask_edgetx.png b/radio/src/bitmaps/480x272/default_theme/mask_edgetx.png similarity index 100% rename from radio/sdcard/horus/THEMES/EdgeTX/mask_edgetx.png rename to radio/src/bitmaps/480x272/default_theme/mask_edgetx.png diff --git a/radio/src/bitmaps/480x272/default_theme/mask_iconback.png b/radio/src/bitmaps/480x272/default_theme/mask_iconback.png new file mode 100644 index 0000000000000000000000000000000000000000..966f6b7f23a160c0b17bf2f93134bd50d4f280ce GIT binary patch literal 1498 zcmV<01tt24P)9qR!*xue&0nj1vn4h0lzu$MBL&7&Ak;wOt2%EXSzP2UK5Anj`uq}a! z!dzWl*%If6cnu8=sHmv0B{-qa&CQK1aej#B@puplg=`5<=yQL6kLTxS%W-7A55wUw z5{ZQ6;6!28*Vl7Xlq}0AFE3}hPEiynit=%t-U-ySi0AO|5Y5famSX%Un*fRD1j%I5 zatvMZXwDOl9djNz@0SoJ92v}i&I71vaROoDk@LhOtZdRk zT|C0Xqp~R;D_cV(-Y;WiYly^i0lcNtP&}W{hnkuiuD}F4yd9^ZcmQ>rP9Vg20F_QB z5av7*Pdvh$M{7Otkn>8IR4T=_HALdM1RnQMx9Jji=DnigH8wUvmUaIUjIa?Q&XZ*s z!C;UpA%Yzt;sI1Toj^$01gL3o0urx;;n^Bu5|0+@;^EmEBImgXvrP+$=OWC`d(>^Z z2qDh<_wOI7tE;&ZBG?h)Jb;=OClDqcl}_;pDVqQ_Elyx|YlzCG%P`|Ua-Pc|@k$so zO$#+FE<=d(LZJ{OiTQMb6CutkFE2+R5a3FPU`L4a04kkMAjEk9H7!nHW^0JVb0Mtm zGbJ7^)SW?ycr@oZ18dVlWz&U_^GX;Y&a1Dlhu7=nN{C=bi1Pq)pA)1~DWucsqUVu# zE`_CZnih|m7H427ouFH^vb6;Lwu(h>i zDn9W6OWBmoZmn+Fr7O;KW{2Fk%!57z{lHz-`?JA88i}!pt7=7Ks;WX!6pW3HSsJLdwG~}mUC3lIn3q96MLNb}m&3S}% zik3|P$Y!$uJ{~&v^z@h-!0Yv5WMl*Yu(Y&C;%WHkK49ZB=Q)|dtW9v&3(~m z6n?+IXy8~ZhO)9U92^{Ae}CU%nuH!krSpq;TJs{yGA1V{4TE-ecA~AV4e#&oh{xmh zWJ>&i*?Bb^2}2B@g=ymS_Vywa3gsT3eSW0I0=?2k z42I4F^6q}NizgN z{1a?MEYhT~N*5Aq3k9(ntZkwQ7Pg8YCPmVSh2Usq1V56KV%c%Cg}VnXk9T=L4)>l1 zlH6{$R1}5DWRf0_hbEJWMx&8uXJ?dUnYCJto6UxQ3ghvZk|Ytp!SeZhe0zJ_gRxlb zpV03Lhr=4Ex7lp?U%6ba{bfF%GnGnFuh$=RlVzE+*-UdZRI61eih`Gy7u4%@^m;u^ zCKCXF!{LA=Nw~SWfh0*N7K_N|^S>M|77JxrW~bBPcDv=@TCdk^x7)nBx}w|d-Y=(8 zsqpCNhyZA{S{Vw3czu1%L?S^^6lpe_34lhUk&2@HjAJ+)GMmlP>-GMaRS*OQ0s-c7 zIljKWax$6h!OP1_jz%M`@$vD&_xE=$77MOcE3H2m3>XT9_RDd(T=4t-NF)-7$K$xT zxPZgqz;rr=s;U?a252^$Xfzs#Mx$C9I#pF!C=^gGm$6>20RWjy2BIixj|4%0+wF$e z>xIE!fZc8f?(XjR_4UQYV!?X7&d0|`K0Q4h%(UC>62V}Q(P)&dR*RpXpCrlq`}>37 z^Yb%x{eGXaEMq(#!)moc6h++L-eR}gfuwc{f&iP%hU4R7oSvQnB)MEJSt^y7PN#W( veomcE$CHy2I-O2NA`w13JWy5DA0Oiz#dxpUGm9As00000NkvXXu0mjfg{vY) literal 0 HcmV?d00001 diff --git a/radio/src/bitmaps/480x272/default_theme/mask_modelqty.png b/radio/src/bitmaps/480x272/default_theme/mask_modelqty.png new file mode 100644 index 0000000000000000000000000000000000000000..9a38e4f13dcaa706050cbc0e4cade094077257f7 GIT binary patch literal 773 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

LyzvUZy3t3z_zYy*HIO`~MNoEEed^tD@IoAT> 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 iJ?7>s?#uk$H-K*yzv*snVNMgetFilePath("shutdown.bmp")); - } + static const BitmapBuffer * shutdown = OpenTxTheme::instance()->shutdown; lcd->reset(); - if (shutdown) { OpenTxTheme::instance()->drawBackground(lcd); - lcd->drawBitmap((LCD_W - shutdown->width()) / 2, - (LCD_H - shutdown->height()) / 2, shutdown); + lcd->drawMask((LCD_W - shutdown->width()) / 2, + (LCD_H - shutdown->height()) / 2, shutdown, DEFAULT_COLOR); + int quarter = duration / (totalDuration / 5); if (quarter >= 1) lcd->drawBitmapPattern(LCD_W / 2, (LCD_H - SHUTDOWN_CIRCLE_DIAMETER) / 2, diff --git a/radio/src/gui/colorlcd/fullscreen_dialog.cpp b/radio/src/gui/colorlcd/fullscreen_dialog.cpp index 73f139421..4efc67064 100644 --- a/radio/src/gui/colorlcd/fullscreen_dialog.cpp +++ b/radio/src/gui/colorlcd/fullscreen_dialog.cpp @@ -54,16 +54,14 @@ void FullScreenDialog::paint(BitmapBuffer * dc) FOCUS_COLOR, OPACITY(8)); if (type == WARNING_TYPE_ALERT || type == WARNING_TYPE_ASTERISK) { - dc->drawBitmap(ALERT_BITMAP_LEFT, ALERT_BITMAP_TOP, - OpenTxTheme::instance()->asterisk); - } - else if (type == WARNING_TYPE_INFO) { - dc->drawBitmap(ALERT_BITMAP_LEFT, ALERT_BITMAP_TOP, - OpenTxTheme::instance()->busy); - } - else { // confirmation - dc->drawBitmap(ALERT_BITMAP_LEFT, ALERT_BITMAP_TOP, - OpenTxTheme::instance()->question); + dc->drawMask(ALERT_BITMAP_LEFT, ALERT_BITMAP_TOP, + OpenTxTheme::instance()->asterisk, ALARM_COLOR); + } else if (type == WARNING_TYPE_INFO) { + dc->drawMask(ALERT_BITMAP_LEFT, ALERT_BITMAP_TOP, + OpenTxTheme::instance()->busy, ALARM_COLOR); + } else { // confirmation + dc->drawMask(ALERT_BITMAP_LEFT, ALERT_BITMAP_TOP, + OpenTxTheme::instance()->question, ALARM_COLOR); } if (type == WARNING_TYPE_ALERT) { diff --git a/radio/src/gui/colorlcd/theme.cpp b/radio/src/gui/colorlcd/theme.cpp index 5954ca760..f009b3367 100644 --- a/radio/src/gui/colorlcd/theme.cpp +++ b/radio/src/gui/colorlcd/theme.cpp @@ -28,6 +28,7 @@ extern OpenTxTheme * defaultTheme; const BitmapBuffer * OpenTxTheme::asterisk = nullptr; const BitmapBuffer * OpenTxTheme::question = nullptr; const BitmapBuffer * OpenTxTheme::busy = nullptr; +const BitmapBuffer * OpenTxTheme::shutdown = nullptr; const uint8_t LBM_FOLDER[] = { #include "mask_folder.lbm" @@ -44,6 +45,22 @@ const uint8_t LBM_USB_PLUGGED[] = { #include "mask_usb_symbol.lbm" }; +const uint8_t asterisk_bitmap[] = { +#include "mask_asterisk.lbm" +}; + +const uint8_t question_bitmap[] = { +#include "mask_question.lbm" +}; + +const uint8_t busy_bitmap[] = { +#include "mask_busy.lbm" +}; + +const uint8_t shutdown_bitmap[] = { +#include "mask_shutdown.lbm" +}; + std::list & getRegisteredThemes() { static std::list themes; @@ -72,11 +89,13 @@ void OpenTxTheme::init() const void OpenTxTheme::load() const { if (!asterisk) - asterisk = BitmapBuffer::loadBitmap(getFilePath("asterisk.bmp")); + asterisk = BitmapBuffer::load8bitMask(asterisk_bitmap); if (!question) - question = BitmapBuffer::loadBitmap(getFilePath("question.bmp")); + question = BitmapBuffer::load8bitMask(question_bitmap); if (!busy) - busy = BitmapBuffer::loadBitmap(getFilePath("busy.bmp")); + busy = BitmapBuffer::load8bitMask(busy_bitmap); + if (!shutdown) + shutdown = BitmapBuffer::load8bitMask(shutdown_bitmap); } ZoneOptionValue * OpenTxTheme::getOptionValue(unsigned int index) const diff --git a/radio/src/gui/colorlcd/theme.h b/radio/src/gui/colorlcd/theme.h index 90d2db9e8..2d5c61608 100644 --- a/radio/src/gui/colorlcd/theme.h +++ b/radio/src/gui/colorlcd/theme.h @@ -114,6 +114,7 @@ class OpenTxTheme: public Theme static const BitmapBuffer * asterisk; static const BitmapBuffer * question; static const BitmapBuffer * busy; + static const BitmapBuffer * shutdown; }; OpenTxTheme * getTheme(const char * name); diff --git a/radio/src/gui/colorlcd/themes/480_bitmaps.h b/radio/src/gui/colorlcd/themes/480_bitmaps.h index 4fc6e5494..2b1df160b 100644 --- a/radio/src/gui/colorlcd/themes/480_bitmaps.h +++ b/radio/src/gui/colorlcd/themes/480_bitmaps.h @@ -226,3 +226,19 @@ const uint8_t stick_background[] = { const uint8_t trackp_background[] = { #include "alpha_trackp_background.lbm" }; +const uint8_t mask_sdfree[] = { +#include "mask_sdfree.lbm" +}; +const uint8_t mask_modelqty[] = { +#include "mask_modelqty.lbm" +}; +const uint8_t mask_modelname[] = { +#include "mask_modelname.lbm" +}; +const uint8_t mask_moveback[] = { +#include "mask_moveback.lbm" +}; +const uint8_t mask_moveico[] = { +#include "mask_moveico.lbm" +}; + diff --git a/radio/src/gui/colorlcd/themes/480_default.cpp b/radio/src/gui/colorlcd/themes/480_default.cpp index 97b6ebe79..374b474a5 100644 --- a/radio/src/gui/colorlcd/themes/480_default.cpp +++ b/radio/src/gui/colorlcd/themes/480_default.cpp @@ -213,29 +213,33 @@ class Theme480: public OpenTxTheme trackp_background, sizeof(trackp_background)); // Model Selection screen - delete modelselIconBitmap; - modelselIconBitmap = BitmapBuffer::loadMaskOnBackground("modelsel/mask_iconback.png", TITLE_BGCOLOR, DEFAULT_BGCOLOR); - if (modelselIconBitmap) { - BitmapBuffer * bitmap = BitmapBuffer::loadBitmap(getFilePath("modelsel/icon_default.png")); - modelselIconBitmap->drawBitmap(20, 8, bitmap); - delete bitmap; - } + + // Unused: + // + // delete modelselIconBitmap; + // modelselIconBitmap = BitmapBuffer::loadMaskOnBackground("modelsel/mask_iconback.png", TITLE_BGCOLOR, DEFAULT_BGCOLOR); + // if (modelselIconBitmap) { + // BitmapBuffer * bitmap = BitmapBuffer::loadBitmap(getFilePath("modelsel/icon_default.png")); + // modelselIconBitmap->drawBitmap(20, 8, bitmap); + // delete bitmap; + // } delete modelselSdFreeBitmap; - modelselSdFreeBitmap = BitmapBuffer::loadMask(getFilePath("modelsel/mask_sdfree.png")); + modelselSdFreeBitmap = BitmapBuffer::load8bitMask(mask_sdfree); delete modelselModelQtyBitmap; - modelselModelQtyBitmap = BitmapBuffer::loadMask(getFilePath("modelsel/mask_modelqty.png")); + modelselModelQtyBitmap = BitmapBuffer::load8bitMask(mask_modelqty); delete modelselModelNameBitmap; - modelselModelNameBitmap = BitmapBuffer::loadMask(getFilePath("modelsel/mask_modelname.png")); + modelselModelNameBitmap = BitmapBuffer::load8bitMask(mask_modelname); delete modelselModelMoveBackground; - modelselModelMoveBackground = BitmapBuffer::loadMask(getFilePath("modelsel/mask_moveback.png")); + modelselModelMoveBackground = BitmapBuffer::load8bitMask(mask_moveback); delete modelselModelMoveIcon; - modelselModelMoveIcon = BitmapBuffer::loadMask(getFilePath("modelsel/mask_moveico.png")); + modelselModelMoveIcon = BitmapBuffer::load8bitMask(mask_moveico); + //TODO: should be loaded from LUA, not here!!! delete modelselWizardBackground; modelselWizardBackground = BitmapBuffer::loadBitmap(getFilePath("wizard/background.png")); diff --git a/radio/src/gui/colorlcd/themes/flysky.cpp b/radio/src/gui/colorlcd/themes/flysky.cpp index 6cdccecb4..a395287d3 100644 --- a/radio/src/gui/colorlcd/themes/flysky.cpp +++ b/radio/src/gui/colorlcd/themes/flysky.cpp @@ -216,13 +216,13 @@ class FlyskyTheme: public OpenTxTheme calibTrackpBackground = BitmapBuffer::loadBitmap(getFilePath("trackp_background.png")); // Model Selection screen - delete modelselIconBitmap; - modelselIconBitmap = BitmapBuffer::loadMaskOnBackground("modelsel/mask_iconback.png", TITLE_BGCOLOR, DEFAULT_BGCOLOR); - if (modelselIconBitmap) { - BitmapBuffer * bitmap = BitmapBuffer::loadBitmap(getFilePath("modelsel/icon_default.png")); - modelselIconBitmap->drawBitmap(20, 8, bitmap); - delete bitmap; - } + // delete modelselIconBitmap; + // modelselIconBitmap = BitmapBuffer::loadMaskOnBackground("modelsel/mask_iconback.png", TITLE_BGCOLOR, DEFAULT_BGCOLOR); + // if (modelselIconBitmap) { + // BitmapBuffer * bitmap = BitmapBuffer::loadBitmap(getFilePath("modelsel/icon_default.png")); + // modelselIconBitmap->drawBitmap(20, 8, bitmap); + // delete bitmap; + // } delete modelselSdFreeBitmap; modelselSdFreeBitmap = BitmapBuffer::loadMask(getFilePath("modelsel/mask_sdfree.png"));