M image/assets/lang/Deutsch.json => image/assets/lang/Deutsch.json +4 -0
@@ 121,6 121,10 @@
"app_settings_language_german": "German",
"app_settings_language_spanish": "Spanish",
"app_settings_date_time": "Date and Time",
+ "app_settings_display_wallpaper_edit_quotes": "Edit quotes",
+ "app_settings_display_wallpaper_quotes_our_favourites": "Our favourites",
+ "app_settings_display_wallpaper_quotes_custom": "Custom",
+ "app_settings_display_wallpaper_quotes_categories": "Categories",
"app_messages_title_main": "Messages",
"app_messages_new_message": "New Message",
"app_phonebook_title_main": "Contacts",
M image/assets/lang/English.json => image/assets/lang/English.json +4 -0
@@ 355,6 355,10 @@
"app_settings_display_wallpaper_quotes_delete_confirmation": "Delete quote?",
"app_settings_display_wallpaper_quotes_note": "Note",
"app_settings_display_wallpaper_quotes_author": "Author",
+ "app_settings_display_wallpaper_quotes_quote": "Quote text",
+ "app_settings_display_wallpaper_quotes_our_favourites": "Our favourites",
+ "app_settings_display_wallpaper_quotes_custom": "Custom",
+ "app_settings_display_wallpaper_quotes_categories": "Categories",
"app_settings_system": "System",
"app_settings_apps_tools": "Apps and tools",
"app_settings_apps_messages": "Messages",
M image/assets/lang/Espanol.json => image/assets/lang/Espanol.json +4 -0
@@ 124,6 124,10 @@
"app_settings_language_spanish": "Español",
"app_settings_date_time": "Date and Time",
"app_settings_cellular_passthrough": "Cellular <-> USB",
+ "app_settings_display_wallpaper_edit_quotes": "Edit quotes",
+ "app_settings_display_wallpaper_quotes_our_favourites": "Our favourites",
+ "app_settings_display_wallpaper_quotes_custom": "Custom",
+ "app_settings_display_wallpaper_quotes_categories": "Categories",
"app_phonebook_title_main": "Contactos",
"app_phonebook_call": "CALL",
"app_phonebook_save": "SAVE",
M image/assets/lang/Francais.json => image/assets/lang/Francais.json +4 -0
@@ 121,6 121,10 @@
"app_settings_language_german": "German",
"app_settings_language_spanish": "Spanish",
"app_settings_date_time": "Date and Time",
+ "app_settings_display_wallpaper_edit_quotes": "Edit quotes",
+ "app_settings_display_wallpaper_quotes_our_favourites": "Our favourites",
+ "app_settings_display_wallpaper_quotes_custom": "Custom",
+ "app_settings_display_wallpaper_quotes_categories": "Categories",
"app_messages_title_main": "Messages",
"app_messages_new_message": "New Message",
"app_phonebook_title_main": "Contacts",
M image/assets/lang/Polski.json => image/assets/lang/Polski.json +4 -0
@@ 123,6 123,10 @@
"app_settings_language_polish": "Polski",
"app_settings_language_german": "Niemiecki",
"app_settings_language_spanish": "Hiszpański",
+ "app_settings_display_wallpaper_edit_quotes": "Edycja cytatów",
+ "app_settings_display_wallpaper_quotes_our_favourites": "Nasze ulubione",
+ "app_settings_display_wallpaper_quotes_custom": "Użytkownika",
+ "app_settings_display_wallpaper_quotes_categories": "Kategorie",
"app_messages_title_main": "Wiadomości",
"app_messages_new_message": "Nowa Wiadomość",
"app_phonebook_title_main": "Kontakty",
M module-apps/application-settings-new/ApplicationSettings.cpp => module-apps/application-settings-new/ApplicationSettings.cpp +4 -0
@@ 25,6 25,7 @@
#include "windows/WallpaperWindow.hpp"
#include "windows/QuotesMainWindow.hpp"
#include "windows/QuotesAddWindow.hpp"
+#include "windows/EditQuotesWindow.hpp"
#include "windows/SecurityMainWindow.hpp"
#include "windows/QuotesOptionsWindow.hpp"
#include "windows/ChangePasscodeWindow.hpp"
@@ 458,6 459,9 @@ namespace app
windowsFactory.attach(gui::window::name::options_quote, [](Application *app, const std::string &name) {
return std::make_unique<gui::QuotesOptionsWindow>(app, std::move(settings::getQuotesModel(app)));
});
+ windowsFactory.attach(gui::window::name::edit_quotes, [](Application *app, const std::string &name) {
+ return std::make_unique<gui::EditQuotesWindow>(app);
+ });
attachPopups({gui::popup::ID::Volume});
}
M module-apps/application-settings-new/ApplicationSettings.hpp => module-apps/application-settings-new/ApplicationSettings.hpp +1 -0
@@ 40,6 40,7 @@ namespace gui::window::name
inline constexpr auto quotes = "Quotes";
inline constexpr auto new_quote = "NewQuote";
inline constexpr auto edit_quote = "EditQuote";
+ inline constexpr auto edit_quotes = "EditQuotes";
inline constexpr auto options_quote = "OptionsQuote";
inline constexpr auto delete_quote = "DeleteQuote";
inline constexpr auto quotes_dialog_yes_no = "DialogYesNo";
M module-apps/application-settings-new/CMakeLists.txt => module-apps/application-settings-new/CMakeLists.txt +2 -0
@@ 62,6 62,7 @@ target_sources( ${PROJECT_NAME}
windows/ChangeTimeZone.cpp
windows/ChangeDateAndTimeWindow.cpp
windows/BluetoothCheckPasskeyWindow.cpp
+ windows/EditQuotesWindow.cpp
PUBLIC
ApplicationSettings.hpp
@@ 86,6 87,7 @@ target_sources( ${PROJECT_NAME}
windows/LanguagesWindow.hpp
windows/DateAndTimeMainWindow.hpp
windows/ChangeDateAndTimeWindow.hpp
+ windows/EditQuotesWindow.hpp
)
add_dependencies(${PROJECT_NAME} version)
A module-apps/application-settings-new/windows/EditQuotesWindow.cpp => module-apps/application-settings-new/windows/EditQuotesWindow.cpp +94 -0
@@ 0,0 1,94 @@
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
+// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
+
+#include "EditQuotesWindow.hpp"
+
+#include <module-apps/application-settings-new/ApplicationSettings.hpp>
+#include <module-apps/options/type/OptionSetting.hpp>
+
+#include <i18n/i18n.hpp>
+
+namespace gui
+{
+ EditQuotesWindow::EditQuotesWindow(app::Application *app) : BaseSettingsWindow(app, window::name::edit_quotes)
+ {
+ setTitle(utils::localize.get("app_settings_display_wallpaper_edit_quotes"));
+ }
+
+ auto EditQuotesWindow::buildOptionsList() -> std::list<gui::Option>
+ {
+ std::list<gui::Option> optionsList;
+
+ auto addCheckOption = [&](UTF8 text, bool &switcher) {
+ optionsList.emplace_back(std::make_unique<gui::option::OptionSettings>(
+ text,
+ [&](gui::Item &item) mutable {
+ switchHandler(switcher);
+ return true;
+ },
+ [=](gui::Item &item) {
+ if (item.focus) {
+ this->setBottomBarText(utils::translateI18(style::strings::common::Switch),
+ BottomBar::Side::CENTER);
+ }
+ return true;
+ },
+ this,
+ switcher ? gui::option::SettingRightItem::Checked : gui::option::SettingRightItem::Disabled));
+ };
+
+ addCheckOption(utils::translateI18("app_settings_display_wallpaper_quotes_our_favourites"),
+ isOurFavouritesSwitchOn);
+
+ if (isOurFavouritesSwitchOn) {
+ optionsList.emplace_back(std::make_unique<gui::option::OptionSettings>(
+ utils::translateI18("app_settings_display_wallpaper_quotes_categories"),
+ [=](gui::Item &item) {
+ application->switchWindow(gui::window::name::quotes, nullptr);
+ return true;
+ },
+ [=](gui::Item &item) {
+ if (item.focus) {
+ this->setBottomBarText(utils::translateI18(style::strings::common::select),
+ BottomBar::Side::CENTER);
+ }
+ return true;
+ },
+ this,
+ gui::option::SettingRightItem::ArrowWhite));
+ }
+
+ addCheckOption(utils::translateI18("app_settings_display_wallpaper_quotes_custom"), isCustomSwitchOn);
+
+ if (isCustomSwitchOn) {
+ optionsList.emplace_back(std::make_unique<gui::option::OptionSettings>(
+ utils::translateI18("app_settings_display_wallpaper_edit_quotes"),
+ [=](gui::Item &item) {
+ application->switchWindow(gui::window::name::quotes, nullptr);
+ return true;
+ },
+ [=](gui::Item &item) {
+ if (item.focus) {
+ this->setBottomBarText(utils::translateI18(style::strings::common::select),
+ BottomBar::Side::CENTER);
+ }
+ return true;
+ },
+ this,
+ gui::option::SettingRightItem::ArrowWhite));
+ }
+
+ return optionsList;
+ }
+
+ void EditQuotesWindow::switchHandler(bool &optionSwitch)
+ {
+ isOurFavouritesSwitchOn = false;
+ isCustomSwitchOn = false;
+
+ optionSwitch = !optionSwitch;
+
+ rebuildOptionList();
+ }
+
+} // namespace gui
A module-apps/application-settings-new/windows/EditQuotesWindow.hpp => module-apps/application-settings-new/windows/EditQuotesWindow.hpp +26 -0
@@ 0,0 1,26 @@
+// 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 CheckBoxWithLabel;
+
+ class EditQuotesWindow : public BaseSettingsWindow
+ {
+ public:
+ EditQuotesWindow(app::Application *app);
+
+ private:
+ void switchHandler(bool &optionSwitch);
+ auto buildOptionsList() -> std::list<Option> override;
+
+ bool isOurFavouritesSwitchOn = false;
+ bool isCustomSwitchOn = false;
+
+ Item *quotes;
+ };
+} // namespace gui
M module-apps/application-settings-new/windows/WallpaperWindow.cpp => module-apps/application-settings-new/windows/WallpaperWindow.cpp +2 -2
@@ 1,4 1,4 @@
-// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
+// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
#include "WallpaperWindow.hpp"
@@ 45,7 45,7 @@ namespace gui
optionsList.emplace_back(std::make_unique<gui::option::OptionSettings>(
utils::translateI18("app_settings_display_wallpaper_edit_quotes"),
[=](gui::Item &item) {
- application->switchWindow(gui::window::name::quotes, nullptr);
+ application->switchWindow(gui::window::name::edit_quotes, nullptr);
return true;
},
[=](gui::Item &item) {