M image/assets/lang/English.json => image/assets/lang/English.json +3 -0
@@ 333,6 333,9 @@
"app_settings_phone_modes": "Phone Modes",
"app_settings_security": "Security",
"app_settings_language": "Language",
+ "app_settings_factory_reset": "Factory reset",
+ "app_settings_about_your_pure": "About your Pure",
+ "app_settings_certification": "Certification",
"app_settings_about": "About Mudita Pure",
"app_settings_title_languages": "Language Selection",
"app_settings_language_english": "English",
M module-apps/application-settings-new/ApplicationSettings.cpp => module-apps/application-settings-new/ApplicationSettings.cpp +4 -0
@@ 27,6 27,7 @@
#include "windows/SecurityMainWindow.hpp"
#include "windows/QuotesOptionsWindow.hpp"
#include "windows/ChangePasscodeWindow.hpp"
+#include "windows/SystemMainWindow.hpp"
#include "Dialog.hpp"
@@ 232,6 233,9 @@ namespace app
windowsFactory.attach(gui::window::name::security, [](Application *app, const std::string &name) {
return std::make_unique<gui::SecurityMainWindow>(app);
});
+ windowsFactory.attach(gui::window::name::system, [](Application *app, const std::string &name) {
+ return std::make_unique<gui::SystemMainWindow>(app);
+ });
}
void ApplicationSettingsNew::destroyUserInterface()
M module-apps/application-settings-new/ApplicationSettings.hpp => module-apps/application-settings-new/ApplicationSettings.hpp +6 -0
@@ 49,6 49,12 @@ namespace gui::window::name
inline constexpr auto dialog_settings = "DialogSettings";
inline constexpr auto change_passcode = "ChangePasscode";
+ inline constexpr auto language = "Language";
+ inline constexpr auto date_and_time = "DateAndTime";
+ inline constexpr auto factory_reset = "FactoryReset";
+ inline constexpr auto about_your_pure = "AboutYourPure";
+ inline constexpr auto certification = "Certification";
+
} // namespace gui::window::name
namespace app
M module-apps/application-settings-new/CMakeLists.txt => module-apps/application-settings-new/CMakeLists.txt +2 -0
@@ 44,6 44,7 @@ target_sources( ${PROJECT_NAME}
windows/ChangePasscodeWindow.cpp
widgets/SpinBox.cpp
widgets/SpinBoxOptionSetting.cpp
+ windows/SystemMainWindow.cpp
PUBLIC
ApplicationSettings.hpp
@@ 60,6 61,7 @@ target_sources( ${PROJECT_NAME}
widgets/SettingsStyle.hpp
windows/AutolockWindow.hpp
windows/WallpaperWindow.hpp
+ windows/SystemMainWindow.hpp
)
add_dependencies(${PROJECT_NAME} version)
A module-apps/application-settings-new/windows/SystemMainWindow.cpp => module-apps/application-settings-new/windows/SystemMainWindow.cpp +37 -0
@@ 0,0 1,37 @@
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
+// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
+
+#include "application-settings-new/ApplicationSettings.hpp"
+#include "OptionSetting.hpp"
+#include "SystemMainWindow.hpp"
+
+namespace gui
+{
+ SystemMainWindow::SystemMainWindow(app::Application *app) : BaseSettingsWindow(app, window::name::system)
+ {}
+
+ auto SystemMainWindow::buildOptionsList() -> std::list<Option>
+ {
+ std::list<Option> optionList;
+ auto addOption = [&](UTF8 name, const std::string &window) {
+ optionList.emplace_back(std::make_unique<option::OptionSettings>(
+ utils::translateI18(name),
+ [=](Item &item) {
+ LOG_INFO("switching to %s page", window.c_str());
+ application->switchWindow(window, nullptr);
+ return true;
+ },
+ nullptr,
+ nullptr,
+ option::SettingRightItem::ArrowWhite));
+ };
+
+ addOption("app_settings_language", gui::window::name::language);
+ addOption("app_settings_date_and_time", gui::window::name::date_and_time);
+ addOption("app_settings_factory_reset", gui::window::name::factory_reset);
+ addOption("app_settings_about_your_pure", gui::window::name::about_your_pure);
+ addOption("app_settings_certification", gui::window::name::certification);
+
+ return optionList;
+ }
+} // namespace gui
A module-apps/application-settings-new/windows/SystemMainWindow.hpp => module-apps/application-settings-new/windows/SystemMainWindow.hpp +18 -0
@@ 0,0 1,18 @@
+// 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 SystemMainWindow : public BaseSettingsWindow
+ {
+ public:
+ explicit SystemMainWindow(app::Application *app);
+
+ private:
+ auto buildOptionsList() -> std::list<Option> override;
+ };
+} // namespace gui