From 280b8afc0a9e7c82bc9c8422ab0cd195ffc8f66d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Benjamin=20M=C3=B8ller?= <37707273+LupusE@users.noreply.github.com> Date: Fri, 22 Nov 2024 17:12:17 +0100 Subject: [PATCH] Add changes from "fixed memory usage #2380" to about_simple file generator. (#2381) * Generator for updating the about-page in PP from github. * Rename generate_ui-about-simple.ccp.py to generate_ui-about-simple.cpp.py * Adapt changes from "fixed memory usage #2380" to the file generator. --- firmware/tools/generate_ui-about-simple.cpp.py | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/firmware/tools/generate_ui-about-simple.cpp.py b/firmware/tools/generate_ui-about-simple.cpp.py index 846af10e..7386eb46 100644 --- a/firmware/tools/generate_ui-about-simple.cpp.py +++ b/firmware/tools/generate_ui-about-simple.cpp.py @@ -26,6 +26,7 @@ import requests import sys cppheader = """#include "ui_about_simple.hpp" +#include #define ROLL_SPEED_FRAME_PER_LINE 60 // cuz frame rate of pp screen is probably 60, scroll per sec @@ -33,7 +34,7 @@ cppheader = """#include "ui_about_simple.hpp" namespace ui { // Information: a line starting with a '#' will be yellow coloured -const std::""" +constexpr std::""" cppfooter = """ AboutView::AboutView(NavigationView& nav) { @@ -52,18 +53,18 @@ AboutView::AboutView(NavigationView& nav) { button_ok.focus(); }; - for (const std::string& authors_line : authors_list) { + for (auto& authors_line : authors_list) { // if it's starting with #, it's a title and we have to substract the '#' and paint yellow if (authors_line.size() > 0) { if (authors_line[0] == '#') { menu_view.add_item( - {authors_line.substr(1, authors_line.size() - 1), + {(std::string)authors_line.substr(1, authors_line.size() - 1), ui::Theme::getInstance()->fg_yellow->foreground, nullptr, nullptr}); } else { menu_view.add_item( - {authors_line, + {(std::string)authors_line, Theme::getInstance()->bg_darkest->foreground, nullptr, nullptr}); @@ -140,7 +141,7 @@ def get_contributors(url): def generate_content(projects): project_contrib = [] - project_contrib.append("string authors_list[] = {\n") + project_contrib.append("string_view authors_list[] = {\n") project_contrib.append(" \"# * List of contributors * \",\n") for project in projects: project_contrib.append(" \" \",\n") @@ -169,7 +170,7 @@ def pp_create_ui_about_simple_cpp(cpp_file, cppheader, cppcontent, cppfooter): def pp_change_ui_about_simple_cpp(cpp_file, cppcontent): content = [] - content_pattern = re.compile(r"string authors_list\[\] = {\n(?:\s+(?:.*,\n)+\s+.*};\n)", re.MULTILINE) + content_pattern = re.compile(r"string_view authors_list\[\] = {\n(?:\s+(?:.*,\n)+\s+.*};\n)", re.MULTILINE) # Read original file with open(cpp_file, 'r') as file: