From aacdce34ba7afd607b85b66fd46023c8e31e3a16 Mon Sep 17 00:00:00 2001 From: Quentin Date: Sat, 2 Nov 2019 19:29:06 +0100 Subject: [PATCH] Add your name in the settings --- apps/settings/base.de.i18n | 1 + apps/settings/base.en.i18n | 1 + apps/settings/base.es.i18n | 1 + apps/settings/base.fr.i18n | 1 + apps/settings/base.pt.i18n | 1 + apps/settings/main_controller_prompt_beta.cpp | 4 ++-- apps/settings/main_controller_prompt_none.cpp | 4 ++-- apps/settings/main_controller_prompt_update.cpp | 4 ++-- apps/settings/sub_menu/about_controller.cpp | 7 ++++--- apps/settings/sub_menu/about_controller.h | 2 +- build/config.mak | 3 ++- ion/Makefile | 2 +- ion/include/ion.h | 1 + ion/src/shared/platform_info.cpp | 17 +++++++++++++++++ 14 files changed, 37 insertions(+), 12 deletions(-) diff --git a/apps/settings/base.de.i18n b/apps/settings/base.de.i18n index 00c4263ef..41ab3c058 100644 --- a/apps/settings/base.de.i18n +++ b/apps/settings/base.de.i18n @@ -23,6 +23,7 @@ Polar = "Polar " Brightness = "Helligkeit" SoftwareVersion = "Epsilon version" CustomSoftwareVersion = "Omega version" +Username = "Name" SerialNumber = "Seriennummer" UpdatePopUp = "Erinnerung: Update" BetaPopUp = "Beta pop-up" diff --git a/apps/settings/base.en.i18n b/apps/settings/base.en.i18n index 96455df9e..89a6dff1f 100644 --- a/apps/settings/base.en.i18n +++ b/apps/settings/base.en.i18n @@ -23,6 +23,7 @@ Polar = "Polar " Brightness = "Brightness" SoftwareVersion = "Epsilon version" CustomSoftwareVersion = "Omega version" +Username = "Name" SerialNumber = "Serial number" UpdatePopUp = "Update pop-up" BetaPopUp = "Beta pop-up" diff --git a/apps/settings/base.es.i18n b/apps/settings/base.es.i18n index 2c2934d1e..26a06c9b6 100644 --- a/apps/settings/base.es.i18n +++ b/apps/settings/base.es.i18n @@ -23,6 +23,7 @@ Polar = "Polar " Brightness = "Brillo" SoftwareVersion = "Versión de Epsilon" CustomSoftwareVersion = "Versión de Omega" +Username = "Apellido" SerialNumber = "Número serie" UpdatePopUp = "Pop-up de actualización" BetaPopUp = "Beta pop-up" diff --git a/apps/settings/base.fr.i18n b/apps/settings/base.fr.i18n index 158631c4b..16c31f6c9 100644 --- a/apps/settings/base.fr.i18n +++ b/apps/settings/base.fr.i18n @@ -23,6 +23,7 @@ Polar = "Exponentielle " Brightness = "Luminosité" SoftwareVersion = "Version d'Epsilon" CustomSoftwareVersion = "Version d'Omega" +Username = "Nom" SerialNumber = "Numéro série" UpdatePopUp = "Rappel mise à jour" BetaPopUp = "Rappel version bêta" diff --git a/apps/settings/base.pt.i18n b/apps/settings/base.pt.i18n index c1ec9252b..d7a02c368 100644 --- a/apps/settings/base.pt.i18n +++ b/apps/settings/base.pt.i18n @@ -23,6 +23,7 @@ Polar = "Polar " Brightness = "Brilho" SoftwareVersion = "Versão do Epsilon" CustomSoftwareVersion = "Versão do Omega" +Username = "Nome" SerialNumber = "Número serie" UpdatePopUp = "Alertas de atualização" BetaPopUp = "Beta pop-up" diff --git a/apps/settings/main_controller_prompt_beta.cpp b/apps/settings/main_controller_prompt_beta.cpp index 336ab6cdf..b2ca4e128 100644 --- a/apps/settings/main_controller_prompt_beta.cpp +++ b/apps/settings/main_controller_prompt_beta.cpp @@ -8,7 +8,7 @@ constexpr SettingsMessageTree s_modelEditionModeChildren[2] = {SettingsMessageTr constexpr SettingsMessageTree s_modelFloatDisplayModeChildren[4] = {SettingsMessageTree(I18n::Message::Decimal), SettingsMessageTree(I18n::Message::Scientific), SettingsMessageTree(I18n::Message::Engineering), SettingsMessageTree(I18n::Message::SignificantFigures)}; constexpr SettingsMessageTree s_modelComplexFormatChildren[3] = {SettingsMessageTree(I18n::Message::Real), SettingsMessageTree(I18n::Message::Cartesian), SettingsMessageTree(I18n::Message::Polar)}; constexpr SettingsMessageTree s_modelExamChildren[1] = {SettingsMessageTree(I18n::Message::ActivateExamMode)}; -constexpr SettingsMessageTree s_modelAboutChildren[4] = {SettingsMessageTree(I18n::Message::SoftwareVersion), SettingsMessageTree(I18n::Message::CustomSoftwareVersion), SettingsMessageTree(I18n::Message::SerialNumber), SettingsMessageTree(I18n::Message::FccId)}; +constexpr SettingsMessageTree s_modelAboutChildren[5] = {SettingsMessageTree(I18n::Message::Username), SettingsMessageTree(I18n::Message::SoftwareVersion), SettingsMessageTree(I18n::Message::CustomSoftwareVersion), SettingsMessageTree(I18n::Message::SerialNumber), SettingsMessageTree(I18n::Message::FccId)}; constexpr SettingsMessageTree s_ledColorChildren[4] = {SettingsMessageTree(I18n::Message::ColorWhite), SettingsMessageTree(I18n::Message::ColorGreen), SettingsMessageTree(I18n::Message::ColorBlue), SettingsMessageTree(I18n::Message::ColorYellow)}; constexpr SettingsMessageTree s_accessibilityChildren[6] = {SettingsMessageTree(I18n::Message::AccessibilityInvertColors), SettingsMessageTree(I18n::Message::AccessibilityMagnify),SettingsMessageTree(I18n::Message::AccessibilityGamma),SettingsMessageTree(I18n::Message::AccessibilityGammaRed),SettingsMessageTree(I18n::Message::AccessibilityGammaGreen),SettingsMessageTree(I18n::Message::AccessibilityGammaBlue)}; constexpr SettingsMessageTree s_contributorsChildren[5] = {SettingsMessageTree(I18n::Message::QuentinGuidee), SettingsMessageTree(I18n::Message::DannySimmons), SettingsMessageTree(I18n::Message::JoachimLeFournis), SettingsMessageTree(I18n::Message::JeanBaptisteBoric), SettingsMessageTree(I18n::Message::MaximeFriess)}; @@ -22,7 +22,7 @@ constexpr SettingsMessageTree s_modelMenu[] = SettingsMessageTree(I18n::Message::Language), SettingsMessageTree(I18n::Message::ExamMode, s_modelExamChildren, 1), SettingsMessageTree(I18n::Message::BetaPopUp), - SettingsMessageTree(I18n::Message::About, s_modelAboutChildren, 4), + SettingsMessageTree(I18n::Message::About, s_modelAboutChildren, 5), SettingsMessageTree(I18n::Message::LEDColor, s_ledColorChildren, 4), SettingsMessageTree(I18n::Message::Accessibility, s_accessibilityChildren, 6), SettingsMessageTree(I18n::Message::Contributors, s_contributorsChildren, 5)}; diff --git a/apps/settings/main_controller_prompt_none.cpp b/apps/settings/main_controller_prompt_none.cpp index 320f379cb..d5940c111 100644 --- a/apps/settings/main_controller_prompt_none.cpp +++ b/apps/settings/main_controller_prompt_none.cpp @@ -9,7 +9,7 @@ constexpr SettingsMessageTree s_modelEditionModeChildren[2] = {SettingsMessageTr constexpr SettingsMessageTree s_modelFloatDisplayModeChildren[4] = {SettingsMessageTree(I18n::Message::Decimal), SettingsMessageTree(I18n::Message::Scientific), SettingsMessageTree(I18n::Message::Engineering), SettingsMessageTree(I18n::Message::SignificantFigures)}; constexpr SettingsMessageTree s_modelComplexFormatChildren[3] = {SettingsMessageTree(I18n::Message::Real), SettingsMessageTree(I18n::Message::Cartesian), SettingsMessageTree(I18n::Message::Polar)}; constexpr SettingsMessageTree s_modelExamChildren[1] = {SettingsMessageTree(I18n::Message::ActivateExamMode)}; -constexpr SettingsMessageTree s_modelAboutChildren[4] = {SettingsMessageTree(I18n::Message::SoftwareVersion), SettingsMessageTree(I18n::Message::CustomSoftwareVersion), SettingsMessageTree(I18n::Message::SerialNumber), SettingsMessageTree(I18n::Message::FccId)}; +constexpr SettingsMessageTree s_modelAboutChildren[5] = {SettingsMessageTree(I18n::Message::Username), SettingsMessageTree(I18n::Message::SoftwareVersion), SettingsMessageTree(I18n::Message::CustomSoftwareVersion), SettingsMessageTree(I18n::Message::SerialNumber), SettingsMessageTree(I18n::Message::FccId)}; constexpr SettingsMessageTree s_ledColorChildren[4] = {SettingsMessageTree(I18n::Message::ColorWhite), SettingsMessageTree(I18n::Message::ColorGreen), SettingsMessageTree(I18n::Message::ColorBlue), SettingsMessageTree(I18n::Message::ColorYellow)}; constexpr SettingsMessageTree s_accessibilityChildren[6] = {SettingsMessageTree(I18n::Message::AccessibilityInvertColors), SettingsMessageTree(I18n::Message::AccessibilityMagnify),SettingsMessageTree(I18n::Message::AccessibilityGamma),SettingsMessageTree(I18n::Message::AccessibilityGammaRed),SettingsMessageTree(I18n::Message::AccessibilityGammaGreen),SettingsMessageTree(I18n::Message::AccessibilityGammaBlue)}; constexpr SettingsMessageTree s_contributorsChildren[5] = {SettingsMessageTree(I18n::Message::QuentinGuidee), SettingsMessageTree(I18n::Message::DannySimmons), SettingsMessageTree(I18n::Message::JoachimLeFournis), SettingsMessageTree(I18n::Message::JeanBaptisteBoric), SettingsMessageTree(I18n::Message::MaximeFriess)}; @@ -22,7 +22,7 @@ constexpr SettingsMessageTree s_modelMenu[] = SettingsMessageTree(I18n::Message::Brightness), SettingsMessageTree(I18n::Message::Language), SettingsMessageTree(I18n::Message::ExamMode, s_modelExamChildren, 1), - SettingsMessageTree(I18n::Message::About, s_modelAboutChildren, 4), + SettingsMessageTree(I18n::Message::About, s_modelAboutChildren, 5), SettingsMessageTree(I18n::Message::LEDColor, s_ledColorChildren, 4), SettingsMessageTree(I18n::Message::Accessibility, s_accessibilityChildren, 6), SettingsMessageTree(I18n::Message::Contributors, s_contributorsChildren, 5)}; diff --git a/apps/settings/main_controller_prompt_update.cpp b/apps/settings/main_controller_prompt_update.cpp index be80ece30..ec1b82c73 100644 --- a/apps/settings/main_controller_prompt_update.cpp +++ b/apps/settings/main_controller_prompt_update.cpp @@ -8,7 +8,7 @@ constexpr SettingsMessageTree s_modelEditionModeChildren[2] = {SettingsMessageTr constexpr SettingsMessageTree s_modelFloatDisplayModeChildren[4] = {SettingsMessageTree(I18n::Message::Decimal), SettingsMessageTree(I18n::Message::Scientific), SettingsMessageTree(I18n::Message::Engineering), SettingsMessageTree(I18n::Message::SignificantFigures)}; constexpr SettingsMessageTree s_modelComplexFormatChildren[3] = {SettingsMessageTree(I18n::Message::Real), SettingsMessageTree(I18n::Message::Cartesian), SettingsMessageTree(I18n::Message::Polar)}; constexpr SettingsMessageTree s_modelExamChildren[1] = {SettingsMessageTree(I18n::Message::ActivateExamMode)}; -constexpr SettingsMessageTree s_modelAboutChildren[4] = {SettingsMessageTree(I18n::Message::SoftwareVersion), SettingsMessageTree(I18n::Message::CustomSoftwareVersion), SettingsMessageTree(I18n::Message::SerialNumber), SettingsMessageTree(I18n::Message::FccId)}; +constexpr SettingsMessageTree s_modelAboutChildren[5] = {SettingsMessageTree(I18n::Message::Username), SettingsMessageTree(I18n::Message::SoftwareVersion), SettingsMessageTree(I18n::Message::CustomSoftwareVersion), SettingsMessageTree(I18n::Message::SerialNumber), SettingsMessageTree(I18n::Message::FccId)}; constexpr SettingsMessageTree s_ledColorChildren[4] = {SettingsMessageTree(I18n::Message::ColorWhite), SettingsMessageTree(I18n::Message::ColorGreen), SettingsMessageTree(I18n::Message::ColorBlue), SettingsMessageTree(I18n::Message::ColorYellow)}; constexpr SettingsMessageTree s_accessibilityChildren[6] = {SettingsMessageTree(I18n::Message::AccessibilityInvertColors), SettingsMessageTree(I18n::Message::AccessibilityMagnify),SettingsMessageTree(I18n::Message::AccessibilityGamma),SettingsMessageTree(I18n::Message::AccessibilityGammaRed),SettingsMessageTree(I18n::Message::AccessibilityGammaGreen),SettingsMessageTree(I18n::Message::AccessibilityGammaBlue)}; constexpr SettingsMessageTree s_contributorsChildren[5] = {SettingsMessageTree(I18n::Message::QuentinGuidee), SettingsMessageTree(I18n::Message::DannySimmons), SettingsMessageTree(I18n::Message::JoachimLeFournis), SettingsMessageTree(I18n::Message::JeanBaptisteBoric), SettingsMessageTree(I18n::Message::MaximeFriess)}; @@ -22,7 +22,7 @@ constexpr SettingsMessageTree s_modelMenu[] = SettingsMessageTree(I18n::Message::Language), SettingsMessageTree(I18n::Message::ExamMode, s_modelExamChildren, 1), SettingsMessageTree(I18n::Message::UpdatePopUp), - SettingsMessageTree(I18n::Message::About, s_modelAboutChildren, 4), + SettingsMessageTree(I18n::Message::About, s_modelAboutChildren, 5), SettingsMessageTree(I18n::Message::LEDColor, s_ledColorChildren, 4), SettingsMessageTree(I18n::Message::Accessibility, s_accessibilityChildren, 6), SettingsMessageTree(I18n::Message::Contributors, s_contributorsChildren, 5)}; diff --git a/apps/settings/sub_menu/about_controller.cpp b/apps/settings/sub_menu/about_controller.cpp index daa43fbb8..4c8f75293 100644 --- a/apps/settings/sub_menu/about_controller.cpp +++ b/apps/settings/sub_menu/about_controller.cpp @@ -22,7 +22,7 @@ bool AboutController::handleEvent(Ion::Events::Event event) { return true; } if (event == Ion::Events::OK || event == Ion::Events::EXE) { - if (selectedRow() == 0) { + if (selectedRow() == 1) { MessageTableCellWithBuffer * myCell = (MessageTableCellWithBuffer *)m_selectableTableView.selectedCell(); if (strcmp(myCell->accessoryText(), Ion::patchLevel()) == 0) { myCell->setAccessoryText(Ion::softwareVersion()); @@ -31,7 +31,7 @@ bool AboutController::handleEvent(Ion::Events::Event event) { myCell->setAccessoryText(Ion::patchLevel()); return true; } - if (selectedRow() == 1) { + if (selectedRow() == 2) { MessageTableCellWithBuffer * myCell = (MessageTableCellWithBuffer *)m_selectableTableView.selectedCell(); if (strcmp(myCell->accessoryText(), Ion::customSoftwareVersion()) == 0) { myCell->setAccessoryText("Public"); //Change for public/dev @@ -60,12 +60,13 @@ void AboutController::willDisplayCellForIndex(HighlightCell * cell, int index) { GenericSubController::willDisplayCellForIndex(cell, index); MessageTableCellWithBuffer * myCell = (MessageTableCellWithBuffer *)cell; static const char * messages[] = { + Ion::username(), Ion::softwareVersion(), Ion::customSoftwareVersion(), Ion::serialNumber(), Ion::fccId() }; - assert(index >= 0 && index < 4); + assert(index >= 0 && index < 5); myCell->setAccessoryText(messages[index]); } diff --git a/apps/settings/sub_menu/about_controller.h b/apps/settings/sub_menu/about_controller.h index 5ecbeb23b..892dc48f7 100644 --- a/apps/settings/sub_menu/about_controller.h +++ b/apps/settings/sub_menu/about_controller.h @@ -14,7 +14,7 @@ public: int reusableCellCount(int type) override; void willDisplayCellForIndex(HighlightCell * cell, int index) override; private: - constexpr static int k_totalNumberOfCell = 4; + constexpr static int k_totalNumberOfCell = 5; MessageTableCellWithBuffer m_cells[k_totalNumberOfCell]; HardwareTest::PopUpController m_hardwareTestPopUpController; }; diff --git a/build/config.mak b/build/config.mak index 4d4722305..8ae1c0831 100644 --- a/build/config.mak +++ b/build/config.mak @@ -4,7 +4,8 @@ PLATFORM ?= device DEBUG ?= 0 EPSILON_VERSION ?= 12.0.0 -EPSILON_CUSTOM_VERSION ?= 1.13.3-0 +EPSILON_CUSTOM_VERSION ?= 1.13.4-0 +USERNAME ?= N/A # Valid values are "none", "update", "beta" EPSILON_APPS ?= calculation rpn graph code statistics probability solver atom sequence regression settings EPSILON_I18N ?= en fr es de pt diff --git a/ion/Makefile b/ion/Makefile index 5e84f7d08..b6c955e6d 100644 --- a/ion/Makefile +++ b/ion/Makefile @@ -22,7 +22,7 @@ ion_console_display_src += ion/src/shared/console_display.cpp # char test[4]= "ab"; is valid and should initialize test to 'a','b',0,0). # Older versions of GCC are not conformant so we resort to an initializer list. initializer_list = $(shell echo $(1) | sed "s/\(.\)/'\1',/g")0 -$(call object_for,ion/src/shared/platform_info.cpp): SFLAGS += -DPATCH_LEVEL="$(call initializer_list,$(PATCH_LEVEL))" -DEPSILON_VERSION="$(call initializer_list,$(EPSILON_VERSION))" -DEPSILON_CUSTOM_VERSION="$(call initializer_list,$(EPSILON_CUSTOM_VERSION))" +$(call object_for,ion/src/shared/platform_info.cpp): SFLAGS += -DPATCH_LEVEL="$(call initializer_list,$(PATCH_LEVEL))" -DEPSILON_VERSION="$(call initializer_list,$(EPSILON_VERSION))" -DEPSILON_CUSTOM_VERSION="$(call initializer_list,$(EPSILON_CUSTOM_VERSION))" -DUSERNAME="$(call initializer_list,$(USERNAME))" ion_src += $(addprefix ion/src/shared/, \ console_line.cpp \ diff --git a/ion/include/ion.h b/ion/include/ion.h index 5903ad2a7..b6754a79f 100644 --- a/ion/include/ion.h +++ b/ion/include/ion.h @@ -28,6 +28,7 @@ void ion_main(int argc, const char * const argv[]); namespace Ion { const char * serialNumber(); +const char * username(); const char * softwareVersion(); const char * customSoftwareVersion(); const char * patchLevel(); diff --git a/ion/src/shared/platform_info.cpp b/ion/src/shared/platform_info.cpp index 74d1f0f73..77c313f26 100644 --- a/ion/src/shared/platform_info.cpp +++ b/ion/src/shared/platform_info.cpp @@ -13,6 +13,10 @@ #error This file expects EPSILON_CUSTOM_VERSION to be defined #endif +#ifndef USERNAME +#error This file expects USERNAME to be defined +#endif + #ifndef HEADER_SECTION #define HEADER_SECTION #endif @@ -28,6 +32,7 @@ public: m_header(Magic), m_version{EPSILON_VERSION}, m_customVersion{EPSILON_CUSTOM_VERSION}, + m_username{USERNAME}, m_patchLevel{PATCH_LEVEL}, m_storageAddress(storageAddress), m_storageSize(Ion::Storage::k_storageSize), @@ -46,6 +51,13 @@ public: assert(m_footer == Magic); return m_customVersion; } + const char * username() const { + assert(m_storageAddress != nullptr); + assert(m_storageSize != 0); + assert(m_header == Magic); + assert(m_footer == Magic); + return m_username; + } const char * patchLevel() const { assert(m_storageAddress != nullptr); assert(m_storageSize != 0); @@ -58,6 +70,7 @@ private: uint32_t m_header; const char m_version[8]; const char m_customVersion[16]; + const char m_username[16]; const char m_patchLevel[8]; void * m_storageAddress; size_t m_storageSize; @@ -74,6 +87,10 @@ const char * Ion::customSoftwareVersion() { return platform_infos.customVersion(); } +const char * Ion::username() { + return platform_infos.username(); +} + const char * Ion::patchLevel() { return platform_infos.patchLevel(); }