From 256e53a016959da1f89a9dcc862950ba5f60750d Mon Sep 17 00:00:00 2001 From: Raphael Coeffic Date: Sat, 17 Apr 2021 08:08:08 +0200 Subject: [PATCH] Allow for progressive Topbar (dis-)appearance --- radio/src/gui/colorlcd/topbar.cpp | 13 +++++++++++++ radio/src/gui/colorlcd/topbar.h | 1 + 2 files changed, 14 insertions(+) diff --git a/radio/src/gui/colorlcd/topbar.cpp b/radio/src/gui/colorlcd/topbar.cpp index 8fee1026d..083df7ef2 100644 --- a/radio/src/gui/colorlcd/topbar.cpp +++ b/radio/src/gui/colorlcd/topbar.cpp @@ -57,6 +57,19 @@ void TopBar::setVisible(float visible) // 0.0 -> 1.0 } } +coord_t TopBar::getVisibleHeight(float visible) const // 0.0 -> 1.0 +{ + if (visible == 0.0) { + return 0; + } + else if (visible == 1.0) { + return MENU_HEADER_HEIGHT; + } + + float h = (float)MENU_HEADER_HEIGHT * visible; + return (coord_t)h; +} + const char * const STR_MONTHS[] = TR_MONTHS; void TopBar::paint(BitmapBuffer * dc) diff --git a/radio/src/gui/colorlcd/topbar.h b/radio/src/gui/colorlcd/topbar.h index cd6d6c2da..21424f0a2 100644 --- a/radio/src/gui/colorlcd/topbar.h +++ b/radio/src/gui/colorlcd/topbar.h @@ -46,6 +46,7 @@ class TopBar: public WidgetsContainer rect_t getZone(unsigned int index) const override; void setVisible(float visible); + coord_t getVisibleHeight(float visible) const; // 0.0 -> 1.0 void paint(BitmapBuffer * dc) override;