From 71ccf023b1842fd3ff8d8fd5d507c7f183542e00 Mon Sep 17 00:00:00 2001 From: Bertrand Songis Date: Mon, 20 Apr 2020 18:49:02 +0200 Subject: [PATCH] Cosmetics --- .../thirdparty/libopenui/src/basenumberedit.h | 2 +- .../thirdparty/libopenui/src/bufferedwindow.h | 2 +- radio/src/thirdparty/libopenui/src/button.h | 8 +++---- .../src/thirdparty/libopenui/src/carousel.cpp | 2 ++ radio/src/thirdparty/libopenui/src/carousel.h | 4 ++-- radio/src/thirdparty/libopenui/src/checkbox.h | 2 +- radio/src/thirdparty/libopenui/src/choice.h | 2 +- .../thirdparty/libopenui/src/coloredit.cpp | 2 +- .../src/thirdparty/libopenui/src/coloredit.h | 2 +- radio/src/thirdparty/libopenui/src/dialog.h | 2 +- .../libopenui/src/expansion_panel.h | 4 ++-- .../src/thirdparty/libopenui/src/filechoice.h | 2 +- radio/src/thirdparty/libopenui/src/form.h | 4 ++-- .../libopenui/src/keyboard_number.h | 2 +- .../thirdparty/libopenui/src/keyboard_text.h | 2 +- .../src/thirdparty/libopenui/src/mainwindow.h | 2 +- radio/src/thirdparty/libopenui/src/menu.cpp | 5 +++-- radio/src/thirdparty/libopenui/src/menu.h | 10 ++++----- .../thirdparty/libopenui/src/modal_window.h | 4 ++-- .../src/thirdparty/libopenui/src/numberedit.h | 2 +- radio/src/thirdparty/libopenui/src/progress.h | 4 ++-- radio/src/thirdparty/libopenui/src/slider.h | 2 +- radio/src/thirdparty/libopenui/src/static.h | 6 ++--- radio/src/thirdparty/libopenui/src/table.h | 6 ++--- radio/src/thirdparty/libopenui/src/textedit.h | 6 ++--- radio/src/thirdparty/libopenui/src/window.cpp | 20 ++++++++++++----- radio/src/thirdparty/libopenui/src/window.h | 22 ++++++++++--------- 27 files changed, 72 insertions(+), 59 deletions(-) diff --git a/radio/src/thirdparty/libopenui/src/basenumberedit.h b/radio/src/thirdparty/libopenui/src/basenumberedit.h index e7d6daf0e..c1314c97f 100644 --- a/radio/src/thirdparty/libopenui/src/basenumberedit.h +++ b/radio/src/thirdparty/libopenui/src/basenumberedit.h @@ -85,7 +85,7 @@ class BaseNumberEdit : public FormField { _setValue = handler; } - int32_t getValue() + int32_t getValue() const { return _getValue(); } diff --git a/radio/src/thirdparty/libopenui/src/bufferedwindow.h b/radio/src/thirdparty/libopenui/src/bufferedwindow.h index 674dcd235..56d25447c 100644 --- a/radio/src/thirdparty/libopenui/src/bufferedwindow.h +++ b/radio/src/thirdparty/libopenui/src/bufferedwindow.h @@ -106,7 +106,7 @@ class TransparentBitmapBackground: public TransparentBufferedWindow } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "TransparentBitmapBackground"; } diff --git a/radio/src/thirdparty/libopenui/src/button.h b/radio/src/thirdparty/libopenui/src/button.h index 6bcd7682c..41a6b463f 100644 --- a/radio/src/thirdparty/libopenui/src/button.h +++ b/radio/src/thirdparty/libopenui/src/button.h @@ -31,12 +31,12 @@ class Button: public FormField { public: Button(FormGroup * parent, const rect_t & rect, std::function pressHandler = nullptr, WindowFlags windowFlags = 0): FormField(parent, rect, windowFlags), - pressHandler(pressHandler) + pressHandler(std::move(pressHandler)) { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "Button"; } @@ -112,7 +112,7 @@ class TextButton: public Button { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "TextButton \"" + text + "\""; } @@ -141,7 +141,7 @@ class IconButton: public Button { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "IconButton(" + std::to_string(icon) + ")"; } diff --git a/radio/src/thirdparty/libopenui/src/carousel.cpp b/radio/src/thirdparty/libopenui/src/carousel.cpp index c8915b6a1..44c069ead 100644 --- a/radio/src/thirdparty/libopenui/src/carousel.cpp +++ b/radio/src/thirdparty/libopenui/src/carousel.cpp @@ -48,6 +48,7 @@ void CarouselWindow::update() setInnerWidth(lastPosition); } +#if defined(HARDWARE_KEYS) void Carousel::onEvent(event_t event) { TRACE_WINDOWS("%s received event 0x%X", getWindowDebugString().c_str(), event); @@ -64,3 +65,4 @@ void Carousel::onEvent(event_t event) Window::onEvent(event); } } +#endif diff --git a/radio/src/thirdparty/libopenui/src/carousel.h b/radio/src/thirdparty/libopenui/src/carousel.h index 342233c27..696a20cfd 100644 --- a/radio/src/thirdparty/libopenui/src/carousel.h +++ b/radio/src/thirdparty/libopenui/src/carousel.h @@ -91,7 +91,7 @@ class Carousel: public Window { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "Carousel"; } @@ -114,7 +114,7 @@ class Carousel: public Window { nextButton->enable(index < (int)body->items.size() - 1); } - int getSelection() + int getSelection() const { return body->selection; } diff --git a/radio/src/thirdparty/libopenui/src/checkbox.h b/radio/src/thirdparty/libopenui/src/checkbox.h index 61e1ebce9..3c0d17077 100644 --- a/radio/src/thirdparty/libopenui/src/checkbox.h +++ b/radio/src/thirdparty/libopenui/src/checkbox.h @@ -33,7 +33,7 @@ class CheckBox : public FormField { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "CheckBox"; } diff --git a/radio/src/thirdparty/libopenui/src/choice.h b/radio/src/thirdparty/libopenui/src/choice.h index ea72f2315..6b3a03936 100644 --- a/radio/src/thirdparty/libopenui/src/choice.h +++ b/radio/src/thirdparty/libopenui/src/choice.h @@ -57,7 +57,7 @@ class Choice : public ChoiceBase { void addItems(const char * items[], uint8_t count); #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "Choice"; } diff --git a/radio/src/thirdparty/libopenui/src/coloredit.cpp b/radio/src/thirdparty/libopenui/src/coloredit.cpp index 0de6d9386..708498433 100644 --- a/radio/src/thirdparty/libopenui/src/coloredit.cpp +++ b/radio/src/thirdparty/libopenui/src/coloredit.cpp @@ -33,7 +33,7 @@ class ColorBox: public Window { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "ColorBox"; } diff --git a/radio/src/thirdparty/libopenui/src/coloredit.h b/radio/src/thirdparty/libopenui/src/coloredit.h index 28f57ae4e..c12dedb55 100644 --- a/radio/src/thirdparty/libopenui/src/coloredit.h +++ b/radio/src/thirdparty/libopenui/src/coloredit.h @@ -27,7 +27,7 @@ class ColorEdit : public FormGroup { ColorEdit(FormGroup * parent, const rect_t & rect, std::function getValue, std::function setValue = nullptr); #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "ColorEdit"; } diff --git a/radio/src/thirdparty/libopenui/src/dialog.h b/radio/src/thirdparty/libopenui/src/dialog.h index 85b2b7737..58d26233b 100644 --- a/radio/src/thirdparty/libopenui/src/dialog.h +++ b/radio/src/thirdparty/libopenui/src/dialog.h @@ -37,7 +37,7 @@ class DialogWindowContent: public ModalWindowContent { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "DialogWindowContent"; } diff --git a/radio/src/thirdparty/libopenui/src/expansion_panel.h b/radio/src/thirdparty/libopenui/src/expansion_panel.h index c3de410fc..0a9e7bb3c 100644 --- a/radio/src/thirdparty/libopenui/src/expansion_panel.h +++ b/radio/src/thirdparty/libopenui/src/expansion_panel.h @@ -29,7 +29,7 @@ class ExpansionPanelHeader: virtual public FormGroup { explicit ExpansionPanelHeader(ExpansionPanel * parent); #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "ExpansionPanelHeader"; } @@ -53,7 +53,7 @@ class ExpansionPanel: public FormGroup { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "ExpansionPanel"; } diff --git a/radio/src/thirdparty/libopenui/src/filechoice.h b/radio/src/thirdparty/libopenui/src/filechoice.h index ebed4d8d4..877f3f933 100644 --- a/radio/src/thirdparty/libopenui/src/filechoice.h +++ b/radio/src/thirdparty/libopenui/src/filechoice.h @@ -28,7 +28,7 @@ class FileChoice: public ChoiceBase { FileChoice(FormGroup * parent, const rect_t & rect, std::string folder, const char * extension, int maxlen, std::function getValue, std::function setValue); #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "FileChoice"; } diff --git a/radio/src/thirdparty/libopenui/src/form.h b/radio/src/thirdparty/libopenui/src/form.h index 3a71b84cc..8dea0331a 100644 --- a/radio/src/thirdparty/libopenui/src/form.h +++ b/radio/src/thirdparty/libopenui/src/form.h @@ -94,7 +94,7 @@ class FormGroup: public FormField { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "FormGroup"; } @@ -135,7 +135,7 @@ class FormWindow: public FormGroup { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "FormWindow"; } diff --git a/radio/src/thirdparty/libopenui/src/keyboard_number.h b/radio/src/thirdparty/libopenui/src/keyboard_number.h index 52e195658..b82f68f1d 100644 --- a/radio/src/thirdparty/libopenui/src/keyboard_number.h +++ b/radio/src/thirdparty/libopenui/src/keyboard_number.h @@ -29,7 +29,7 @@ class NumberKeyboard : public Keyboard { ~NumberKeyboard() override; #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "NumberKeyboard"; } diff --git a/radio/src/thirdparty/libopenui/src/keyboard_text.h b/radio/src/thirdparty/libopenui/src/keyboard_text.h index bc333904e..368d239ec 100644 --- a/radio/src/thirdparty/libopenui/src/keyboard_text.h +++ b/radio/src/thirdparty/libopenui/src/keyboard_text.h @@ -37,7 +37,7 @@ class TextKeyboard : public Keyboard { ~TextKeyboard() override; #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "TextKeyboard"; } diff --git a/radio/src/thirdparty/libopenui/src/mainwindow.h b/radio/src/thirdparty/libopenui/src/mainwindow.h index 30b40ae49..e345c9de7 100644 --- a/radio/src/thirdparty/libopenui/src/mainwindow.h +++ b/radio/src/thirdparty/libopenui/src/mainwindow.h @@ -33,7 +33,7 @@ class MainWindow: public Window { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "MainWindow"; } diff --git a/radio/src/thirdparty/libopenui/src/menu.cpp b/radio/src/thirdparty/libopenui/src/menu.cpp index 5827c11cc..06cfa8311 100644 --- a/radio/src/thirdparty/libopenui/src/menu.cpp +++ b/radio/src/thirdparty/libopenui/src/menu.cpp @@ -73,13 +73,14 @@ bool MenuBody::onTouchEnd(coord_t /*x*/, coord_t y) void MenuBody::paint(BitmapBuffer * dc) { - for (auto i = 0; i < (int)lines.size(); i++) { + for (unsigned i = 0; i < lines.size(); i++) { auto & line = lines[i]; LcdFlags flags = MENU_COLOR | MENU_FONT; if (selectedIndex == i) { flags = MENU_HIGHLIGHT_COLOR | MENU_FONT; - if (MENU_HIGHLIGHT_BGCOLOR != MENU_BGCOLOR) + if (MENU_HIGHLIGHT_BGCOLOR != MENU_BGCOLOR) { dc->drawSolidFilledRect(0, i * MENUS_LINE_HEIGHT, width(), MENUS_LINE_HEIGHT, MENU_HIGHLIGHT_BGCOLOR); + } } if (line.drawLine) { line.drawLine(dc, 0, i * MENUS_LINE_HEIGHT /*+ (lineHeight - 20) / 2*/, flags); diff --git a/radio/src/thirdparty/libopenui/src/menu.h b/radio/src/thirdparty/libopenui/src/menu.h index 333648f8f..d1737a8c1 100644 --- a/radio/src/thirdparty/libopenui/src/menu.h +++ b/radio/src/thirdparty/libopenui/src/menu.h @@ -66,7 +66,7 @@ class MenuBody: public Window { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "MenuBody"; } @@ -74,12 +74,12 @@ class MenuBody: public Window { void select(int index); - int selection() + int selection() const { return selectedIndex; } - int count() + int count() const { return lines.size(); } @@ -112,7 +112,7 @@ class MenuBody: public Window { void setCancelHandler(std::function handler) { - onCancel = handler; + onCancel = std::move(handler); } void paint(BitmapBuffer * dc) override; @@ -139,7 +139,7 @@ class MenuWindowContent: public ModalWindowContent { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "MenuWindowContent"; } diff --git a/radio/src/thirdparty/libopenui/src/modal_window.h b/radio/src/thirdparty/libopenui/src/modal_window.h index f143ac5d6..f82658ac4 100644 --- a/radio/src/thirdparty/libopenui/src/modal_window.h +++ b/radio/src/thirdparty/libopenui/src/modal_window.h @@ -28,7 +28,7 @@ class ModalWindow: public Window explicit ModalWindow(Window * parent); #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "ModalWindow"; } @@ -77,7 +77,7 @@ class ModalWindowContent: public Window { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "ModalWindowContent"; } diff --git a/radio/src/thirdparty/libopenui/src/numberedit.h b/radio/src/thirdparty/libopenui/src/numberedit.h index ff18d61f7..e978f75f4 100644 --- a/radio/src/thirdparty/libopenui/src/numberedit.h +++ b/radio/src/thirdparty/libopenui/src/numberedit.h @@ -29,7 +29,7 @@ class NumberEdit : public BaseNumberEdit { std::function getValue, std::function setValue = nullptr, WindowFlags windowFlags = 0, LcdFlags textFlags = 0); #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "NumberEdit(" + std::to_string(getValue()) + ")"; } diff --git a/radio/src/thirdparty/libopenui/src/progress.h b/radio/src/thirdparty/libopenui/src/progress.h index e135b3715..176b38873 100644 --- a/radio/src/thirdparty/libopenui/src/progress.h +++ b/radio/src/thirdparty/libopenui/src/progress.h @@ -30,7 +30,7 @@ class Progress : public Window { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "Progress"; } @@ -45,7 +45,7 @@ class Progress : public Window { void paint(BitmapBuffer * dc) override; protected: - int value; + int value = 0; }; #endif diff --git a/radio/src/thirdparty/libopenui/src/slider.h b/radio/src/thirdparty/libopenui/src/slider.h index cf35fbfa8..c883516cc 100644 --- a/radio/src/thirdparty/libopenui/src/slider.h +++ b/radio/src/thirdparty/libopenui/src/slider.h @@ -34,7 +34,7 @@ class Slider: public FormField { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "Slider"; } diff --git a/radio/src/thirdparty/libopenui/src/static.h b/radio/src/thirdparty/libopenui/src/static.h index acfd102d6..bf5486aac 100644 --- a/radio/src/thirdparty/libopenui/src/static.h +++ b/radio/src/thirdparty/libopenui/src/static.h @@ -32,7 +32,7 @@ class StaticText: public Window { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "StaticText \"" + text + "\""; } @@ -58,7 +58,7 @@ class Subtitle: public StaticText { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "Subtitle \"" + text + "\""; } @@ -100,7 +100,7 @@ class StaticBitmap: public Window { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "StaticBitmap"; } diff --git a/radio/src/thirdparty/libopenui/src/table.h b/radio/src/thirdparty/libopenui/src/table.h index 06f1cf992..dc9a86a43 100644 --- a/radio/src/thirdparty/libopenui/src/table.h +++ b/radio/src/thirdparty/libopenui/src/table.h @@ -46,7 +46,7 @@ class Table: public Window { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "Table::Header"; } @@ -75,7 +75,7 @@ class Table: public Window { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "Table::Body"; } @@ -134,7 +134,7 @@ class Table: public Window { } #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "Table"; } diff --git a/radio/src/thirdparty/libopenui/src/textedit.h b/radio/src/thirdparty/libopenui/src/textedit.h index 292bbecb8..adcaa08bc 100644 --- a/radio/src/thirdparty/libopenui/src/textedit.h +++ b/radio/src/thirdparty/libopenui/src/textedit.h @@ -35,7 +35,7 @@ class TextEdit : public FormField { #if defined(DEBUG_WINDOWS) - std::string getName() override + std::string getName() const override { return "TextEdit"; } @@ -46,12 +46,12 @@ class TextEdit : public FormField { changeHandler = handler; } - uint8_t getMaxLength() + uint8_t getMaxLength() const { return length; } - char * getData() + char * getData() const { return value; } diff --git a/radio/src/thirdparty/libopenui/src/window.cpp b/radio/src/thirdparty/libopenui/src/window.cpp index a6aa4cc99..c6df7c10c 100644 --- a/radio/src/thirdparty/libopenui/src/window.cpp +++ b/radio/src/thirdparty/libopenui/src/window.cpp @@ -138,7 +138,7 @@ void Window::setFocus(uint8_t flag) void Window::setScrollPositionX(coord_t value) { - coord_t newScrollPosition = max(0, min(innerWidth - width(), value)); + auto newScrollPosition = max(0, min(innerWidth - width(), value)); if (newScrollPosition != scrollPositionX) { scrollPositionX = newScrollPosition; invalidate(); @@ -147,7 +147,12 @@ void Window::setScrollPositionX(coord_t value) void Window::setScrollPositionY(coord_t value) { - coord_t newScrollPosition = max(0, min(innerHeight - height(), value)); + auto newScrollPosition = min(innerHeight - height(), value); + + if (newScrollPosition < 0 && innerHeight != INFINITE_HEIGHT) { + newScrollPosition = 0; + } + if (newScrollPosition != scrollPositionY) { scrollPositionY = newScrollPosition; invalidate(); @@ -192,7 +197,7 @@ void Window::scrollTo(const rect_t & rect) } } -bool Window::hasOpaqueRect(const rect_t & rect) +bool Window::hasOpaqueRect(const rect_t & rect) const { if (!this->rect.contains(rect)) return false; @@ -253,12 +258,12 @@ void Window::fullPaint(BitmapBuffer * dc) } } -bool Window::isChildFullSize(Window * child) +bool Window::isChildFullSize(const Window * child) const { return child->top() == 0 && child->height() == height() && child->left() == 0 && child->width() == width(); } -bool Window::isChildVisible(Window * window) +bool Window::isChildVisible(const Window * window) const { for (auto rit = children.rbegin(); rit != children.rend(); rit++) { auto child = *rit; @@ -333,7 +338,10 @@ void Window::checkEvents() if (pageHeight) { coord_t relativeScrollPosition = scrollPositionY % pageHeight; if (relativeScrollPosition) { - setScrollPositionY(getScrollPositionY() - relativeScrollPosition + (relativeScrollPosition > pageHeight / 2 ? pageHeight : 0)); + if (relativeScrollPosition > 0) + setScrollPositionY(getScrollPositionY() - relativeScrollPosition + (relativeScrollPosition > pageHeight / 2 ? pageHeight : 0)); + else + setScrollPositionY(getScrollPositionY() - relativeScrollPosition - (relativeScrollPosition > -pageHeight / 2 ? 0 : pageHeight)); } } } diff --git a/radio/src/thirdparty/libopenui/src/window.h b/radio/src/thirdparty/libopenui/src/window.h index eb15e0806..9661fb634 100644 --- a/radio/src/thirdparty/libopenui/src/window.h +++ b/radio/src/thirdparty/libopenui/src/window.h @@ -39,6 +39,8 @@ typedef uint32_t WindowFlags; #undef TRANSPARENT #endif +constexpr int INFINITE_HEIGHT = INT32_MAX; + constexpr WindowFlags OPAQUE = 1u << 0u; constexpr WindowFlags TRANSPARENT = 1u << 1u; constexpr WindowFlags NO_SCROLLBAR = 1u << 2u; @@ -65,19 +67,19 @@ class Window { virtual ~Window(); #if defined(DEBUG_WINDOWS) - virtual std::string getName() + virtual std::string getName() const { return "Window"; } - std::string getRectString() + std::string getRectString() const { char result[32]; sprintf(result, "[%d, %d, %d, %d]", left(), top(), width(), height()); return result; } - std::string getIndentString() + std::string getIndentString() const { std::string result; auto tmp = parent; @@ -88,7 +90,7 @@ class Window { return result; } - std::string getWindowDebugString(const char * name = nullptr) + std::string getWindowDebugString(const char * name = nullptr) const { return getName() + (name ? std::string(" [") + name + "] " : " ") + getRectString(); } @@ -252,7 +254,7 @@ class Window { pageHeight = h; } - uint8_t getPageCount() + uint8_t getPageCount() const { if (pageWidth) return innerWidth / pageWidth; @@ -262,7 +264,7 @@ class Window { return 1; } - uint8_t getPageIndex() + uint8_t getPageIndex() const { if (pageWidth) return (getScrollPositionX() + (pageWidth / 2)) / pageWidth; @@ -305,11 +307,11 @@ class Window { void setScrollPositionY(coord_t value); - bool isChildVisible(Window * window); + bool isChildVisible(const Window * window) const; - bool isChildFullSize(Window * window); + bool isChildFullSize(const Window * window) const; - bool isVisible() + bool isVisible() const { return parent && parent->isChildVisible(this); } @@ -400,7 +402,7 @@ class Window { bool forwardTouchEnd(coord_t x, coord_t y); - bool hasOpaqueRect(const rect_t & rect); + bool hasOpaqueRect(const rect_t & rect) const; }; #endif // _WINDOW_H_