M image/assets/lang/Deutsch.json => image/assets/lang/Deutsch.json +4 -0
@@ 116,6 116,10 @@
"app_settings_language": "Language",
"app_settings_about_your_pure": "About your Pure",
"app_settings_technical_information": "Technical Information",
+ "app_settings_tech_info_model": "Model",
+ "app_settings_tech_info_serial_number": "Serial number",
+ "app_settings_tech_info_os_version": "OS Version",
+ "app_settings_tech_info_imei": "IMEI",
"app_settings_certification": "Certification",
"app_settings_us_fcc_id": "US FCC ID",
"app_settings_canada_ic": "Canada IC",
M image/assets/lang/English.json => image/assets/lang/English.json +4 -0
@@ 405,6 405,10 @@
"app_settings_factory_reset": "Factory reset",
"app_settings_about_your_pure": "About your Pure",
"app_settings_technical_information": "Technical Information",
+ "app_settings_tech_info_model": "Model",
+ "app_settings_tech_info_serial_number": "Serial number",
+ "app_settings_tech_info_os_version": "OS Version",
+ "app_settings_tech_info_imei": "IMEI",
"app_settings_certification": "Certification",
"app_settings_us_fcc_id": "US FCC ID",
"app_settings_canada_ic": "Canada IC",
M image/assets/lang/Espanol.json => image/assets/lang/Espanol.json +4 -0
@@ 118,6 118,10 @@
"app_settings_language": "Language",
"app_settings_about_your_pure": "About your Pure",
"app_settings_technical_information": "Technical Information",
+ "app_settings_tech_info_model": "Model",
+ "app_settings_tech_info_serial_number": "Serial number",
+ "app_settings_tech_info_os_version": "OS Version",
+ "app_settings_tech_info_imei": "IMEI",
"app_settings_certification": "Certification",
"app_settings_us_fcc_id": "US FCC ID",
"app_settings_canada_ic": "Canada IC",
M image/assets/lang/Francais.json => image/assets/lang/Francais.json +4 -0
@@ 116,6 116,10 @@
"app_settings_language": "Language",
"app_settings_about_your_pure": "About your Pure",
"app_settings_technical_information": "Technical Information",
+ "app_settings_tech_info_model": "Model",
+ "app_settings_tech_info_serial_number": "Serial number",
+ "app_settings_tech_info_os_version": "OS Version",
+ "app_settings_tech_info_imei": "IMEI",
"app_settings_certification": "Certification",
"app_settings_us_fcc_id": "US FCC ID",
"app_settings_canada_ic": "Canada IC",
M image/assets/lang/Polski.json => image/assets/lang/Polski.json +5 -1
@@ 118,7 118,11 @@
"app_settings_security": "Bezpieczeństwo",
"app_settings_language": "Język",
"app_settings_about_your_pure": "O Twoim Pure",
- "app_settings_technical_information": "Informacja Techniczne",
+ "app_settings_technical_information": "Informacja Techniczna",
+ "app_settings_tech_info_model": "Model",
+ "app_settings_tech_info_serial_number": "Number seryjny",
+ "app_settings_tech_info_os_version": "Wersja systemu",
+ "app_settings_tech_info_imei": "IMEI",
"app_settings_certification": "Certyfikacja",
"app_settings_us_fcc_id": "US FCC ID",
"app_settings_canada_ic": "Kanada IC",
M image/assets/lang/Svenska.json => image/assets/lang/Svenska.json +4 -0
@@ 373,6 373,10 @@
"app_settings_factory_reset": "Återställ fabriksinställningar",
"app_settings_about_your_pure": "Om din Pure",
"app_settings_technical_information": "Teknisk information",
+ "app_settings_tech_info_model": "Model",
+ "app_settings_tech_info_serial_number": "Serial number",
+ "app_settings_tech_info_os_version": "OS Version",
+ "app_settings_tech_info_imei": "IMEI",
"app_settings_certification": "Certifiering",
"app_settings_us_fcc_id": "US FCC ID",
"app_settings_canada_ic": "Canada IC",
M module-apps/application-settings-new/ApplicationSettings.cpp => module-apps/application-settings-new/ApplicationSettings.cpp +4 -0
@@ 42,6 42,7 @@
#include "windows/ConnectionFrequencyWindow.hpp"
#include "windows/AboutYourPureWindow.hpp"
#include "windows/CertificationWindow.hpp"
+#include "windows/TechnicalInformationWindow.hpp"
#include "Dialog.hpp"
#include "DialogMetadataMessage.hpp"
@@ 448,6 449,9 @@ namespace app
windowsFactory.attach(gui::window::name::certification, [](Application *app, const std::string &name) {
return std::make_unique<gui::CertificationWindow>(app);
});
+ windowsFactory.attach(gui::window::name::technical_information, [](Application *app, const std::string &name) {
+ return std::make_unique<gui::TechnicalInformationWindow>(app);
+ });
windowsFactory.attach(gui::window::name::change_time_zone, [](Application *app, const std::string &name) {
return std::make_unique<gui::ChangeTimeZone>(app);
});
M module-apps/application-settings-new/CMakeLists.txt => module-apps/application-settings-new/CMakeLists.txt +2 -0
@@ 71,6 71,7 @@ target_sources( ${PROJECT_NAME}
windows/PhoneModesWindow.cpp
windows/AboutYourPureWindow.cpp
windows/CertificationWindow.cpp
+ windows/TechnicalInformationWindow.cpp
PUBLIC
ApplicationSettings.hpp
@@ 100,6 101,7 @@ target_sources( ${PROJECT_NAME}
windows/QuoteCategoriesWindow.hpp
windows/AboutYourPureWindow.hpp
windows/CertificationWindow.hpp
+ windows/TechnicalInformationWindow.hpp
)
add_dependencies(${PROJECT_NAME} version)
M module-apps/application-settings-new/widgets/SettingsStyle.hpp => module-apps/application-settings-new/widgets/SettingsStyle.hpp +64 -0
@@ 216,4 216,68 @@ namespace style
} // namespace imagece
} // namespace certification
+
+ namespace techinfo
+ {
+ namespace textmodel
+ {
+ inline constexpr auto x = 30;
+ inline constexpr auto y = 117;
+ inline constexpr auto width = 400;
+ inline constexpr auto height = 30;
+ } // namespace textmodel
+ namespace valuemodel
+ {
+ inline constexpr auto x = 30;
+ inline constexpr auto y = 150;
+ inline constexpr auto width = 400;
+ inline constexpr auto height = 30;
+ } // namespace valuemodel
+
+ namespace textserialnumber
+ {
+ inline constexpr auto x = 30;
+ inline constexpr auto y = 192;
+ inline constexpr auto width = 400;
+ inline constexpr auto height = 30;
+ } // namespace textserialnumber
+ namespace valueserialnumber
+ {
+ inline constexpr auto x = 30;
+ inline constexpr auto y = 225;
+ inline constexpr auto width = 400;
+ inline constexpr auto height = 30;
+ } // namespace valueserialnumber
+
+ namespace textosversion
+ {
+ inline constexpr auto x = 30;
+ inline constexpr auto y = 267;
+ inline constexpr auto width = 400;
+ inline constexpr auto height = 30;
+ } // namespace textosversion
+ namespace valueosversion
+ {
+ inline constexpr auto x = 30;
+ inline constexpr auto y = 300;
+ inline constexpr auto width = 400;
+ inline constexpr auto height = 30;
+ } // namespace valueosversion
+
+ namespace textimea
+ {
+ inline constexpr auto x = 30;
+ inline constexpr auto y = 342;
+ inline constexpr auto width = 400;
+ inline constexpr auto height = 30;
+ } // namespace textimea
+ namespace valueimea
+ {
+ inline constexpr auto x = 30;
+ inline constexpr auto y = 375;
+ inline constexpr auto width = 400;
+ inline constexpr auto height = 30;
+ } // namespace valueimea
+
+ } // namespace techinfo
} // namespace style
M module-apps/application-settings-new/windows/CertificationWindow.cpp => module-apps/application-settings-new/windows/CertificationWindow.cpp +0 -1
@@ 11,7 11,6 @@ inline constexpr auto certno = "XXXXXXXXXXXXXXXXXXX";
namespace gui
{
-
CertificationWindow::CertificationWindow(app::Application *app) : AppWindow(app, gui::window::name::certification)
{
buildInterface();
A module-apps/application-settings-new/windows/TechnicalInformationWindow.cpp => module-apps/application-settings-new/windows/TechnicalInformationWindow.cpp +105 -0
@@ 0,0 1,105 @@
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
+// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
+
+#include "TechnicalInformationWindow.hpp"
+#include <application-settings-new/ApplicationSettings.hpp>
+#include <widgets/Text.hpp>
+#include <application-settings-new/widgets/SettingsStyle.hpp>
+#include <source/version.hpp>
+
+static constexpr auto model = "1.0";
+static constexpr auto serialNumber = "XXXXXXXXXXXXXXX";
+static constexpr auto imei = "AA-BBBBBB-CCCCCC-D";
+
+namespace gui
+{
+ TechnicalInformationWindow::TechnicalInformationWindow(app::Application *app)
+ : AppWindow(app, gui::window::name::certification)
+ {
+ buildInterface();
+ }
+
+ void TechnicalInformationWindow::buildInterface()
+ {
+ AppWindow::buildInterface();
+
+ setTitle(utils::localize.get("app_settings_technical_information"));
+
+ modelText = new gui::Text(this,
+ style::techinfo::textmodel::x,
+ style::techinfo::textmodel::y,
+ style::techinfo::textmodel::width,
+ style::techinfo::textmodel::height);
+ modelValue = new gui::Text(this,
+ style::techinfo::valuemodel::x,
+ style::techinfo::valuemodel::y,
+ style::techinfo::valuemodel::width,
+ style::techinfo::valuemodel::height);
+
+ serialNumberText = new gui::Text(this,
+ style::techinfo::textserialnumber::x,
+ style::techinfo::textserialnumber::y,
+ style::techinfo::textserialnumber::width,
+ style::techinfo::textserialnumber::height);
+ serialNumberValue = new gui::Text(this,
+ style::techinfo::valueserialnumber::x,
+ style::techinfo::valueserialnumber::y,
+ style::techinfo::valueserialnumber::width,
+ style::techinfo::valueserialnumber::height);
+
+ osVersionText = new gui::Text(this,
+ style::techinfo::textosversion::x,
+ style::techinfo::textosversion::y,
+ style::techinfo::textosversion::width,
+ style::techinfo::textosversion::height);
+ osVersionValue = new gui::Text(this,
+ style::techinfo::valueosversion::x,
+ style::techinfo::valueosversion::y,
+ style::techinfo::valueosversion::width,
+ style::techinfo::valueosversion::height);
+
+ imeiText = new gui::Text(this,
+ style::techinfo::textimea::x,
+ style::techinfo::textimea::y + 10,
+ style::techinfo::textimea::width,
+ style::techinfo::textimea::height);
+ imeiValue = new gui::Text(this,
+ style::techinfo::valueimea::x,
+ style::techinfo::valueimea::y + 20,
+ style::techinfo::valueimea::width,
+ style::techinfo::valueimea::height);
+
+ bottomBar->setText(BottomBar::Side::RIGHT, utils::localize.get(style::strings::common::back));
+ }
+
+ void TechnicalInformationWindow::onBeforeShow(ShowMode mode, SwitchData *data)
+ {
+ // dummy data for now
+ modelText->setText(utils::localize.get("app_settings_tech_info_model"));
+ modelValue->setText(model);
+ serialNumberText->setText(utils::localize.get("app_settings_tech_info_serial_number"));
+ serialNumberValue->setText(serialNumber);
+ osVersionText->setText(utils::localize.get("app_settings_tech_info_os_version"));
+ osVersionValue->setText(std::string(VERSION));
+ imeiText->setText(utils::localize.get("app_settings_tech_info_imei"));
+ imeiValue->setText(imei);
+ }
+
+ void TechnicalInformationWindow::destroyInterface()
+ {
+ erase();
+ modelText = nullptr;
+ modelValue = nullptr;
+ serialNumberText = nullptr;
+ serialNumberValue = nullptr;
+ osVersionText = nullptr;
+ osVersionValue = nullptr;
+ imeiText = nullptr;
+ imeiValue = nullptr;
+ };
+
+ TechnicalInformationWindow::~TechnicalInformationWindow()
+ {
+ destroyInterface();
+ }
+} // namespace gui
A module-apps/application-settings-new/windows/TechnicalInformationWindow.hpp => module-apps/application-settings-new/windows/TechnicalInformationWindow.hpp +34 -0
@@ 0,0 1,34 @@
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
+// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
+
+#pragma once
+
+#include "BaseSettingsWindow.hpp"
+
+namespace gui
+{
+ class TechnicalInformationWindow : public AppWindow
+ {
+ public:
+ TechnicalInformationWindow(app::Application *app);
+ ~TechnicalInformationWindow() override;
+ void destroyInterface() override;
+
+ private:
+ void buildInterface() override;
+ void onBeforeShow(ShowMode mode, SwitchData *data) override;
+
+ gui::Text *modelText = nullptr;
+ gui::Text *modelValue = nullptr;
+
+ gui::Text *serialNumberText = nullptr;
+ gui::Text *serialNumberValue = nullptr;
+
+ gui::Text *osVersionText = nullptr;
+ gui::Text *osVersionValue = nullptr;
+
+ gui::Text *imeiText = nullptr;
+ gui::Text *imeiValue = nullptr;
+ };
+
+} // namespace gui