From 3b2a0117ee0409b426e0e86dde592e97e9df5bb0 Mon Sep 17 00:00:00 2001 From: Lefucjusz Date: Fri, 15 Mar 2024 14:25:36 +0100 Subject: [PATCH] [BH-1891] Change bedtime chime list to vertical * Changed horizontal list in bedtime chime to vertical one. * Removed unused GUI objects. --- image/system_a/data/lang/Deutsch.json | 2 +- image/system_a/data/lang/English.json | 8 +- image/system_a/data/lang/Espanol.json | 2 +- image/system_a/data/lang/Francais.json | 2 +- image/system_a/data/lang/Polski.json | 2 +- .../ApplicationBellBedtime.cpp | 5 +- .../ApplicationBellSettings.cpp | 22 +++--- .../application-bell-settings/CMakeLists.txt | 2 - .../ApplicationBellSettings.hpp | 13 ++-- .../BedtimeSettingsListItemProvider.cpp | 27 ++++--- .../BedtimeSettingsListItemProvider.hpp | 16 ++-- .../PrewakeUpListItemProvider.cpp | 5 +- .../PrewakeUpListItemProvider.hpp | 9 ++- .../presenter/BedtimeSettingsPresenter.cpp | 10 +-- .../presenter/BedtimeSettingsPresenter.hpp | 4 +- .../widgets/DialogYesNo.cpp | 58 -------------- .../widgets/DialogYesNo.hpp | 33 -------- .../windows/BellSettingsWindow.cpp | 13 +--- .../windows/BellSettingsWindow.hpp | 3 +- .../BellSettingsBedtimeToneSettingsWindow.cpp | 78 ------------------- .../BellSettingsBedtimeToneSettingsWindow.hpp | 35 --------- .../include/common/models/BedtimeModel.hpp | 10 +-- .../apps/common/src/models/BedtimeModel.cpp | 10 +-- 23 files changed, 71 insertions(+), 298 deletions(-) delete mode 100644 products/BellHybrid/apps/application-bell-settings/widgets/DialogYesNo.cpp delete mode 100644 products/BellHybrid/apps/application-bell-settings/widgets/DialogYesNo.hpp delete mode 100644 products/BellHybrid/apps/application-bell-settings/windows/bedtime_settings/BellSettingsBedtimeToneSettingsWindow.cpp delete mode 100644 products/BellHybrid/apps/application-bell-settings/windows/bedtime_settings/BellSettingsBedtimeToneSettingsWindow.hpp diff --git a/image/system_a/data/lang/Deutsch.json b/image/system_a/data/lang/Deutsch.json index 73c46e21aa3904746ef59836bd0c69273e0f2576..a27672f126423ccfc2e48370d12fa99f892d9eeb 100644 --- a/image/system_a/data/lang/Deutsch.json +++ b/image/system_a/data/lang/Deutsch.json @@ -94,7 +94,7 @@ "app_bell_settings_alarm_settings_volume": "Alarmlautst\u00e4rke", "app_bell_settings_bedtime_settings_tone": "Klang", "app_bell_settings_bedtime_settings_volume": "Lautst\u00e4rke", - "app_bell_settings_bedtime_tone": "Schlafens-Klang", + "app_bell_settings_bedtime_chime": "Schlafens-Klang", "app_bell_settings_display_factory_reset_confirmation": "L\u00f6scht alle Benutzerdateien
und setzt das Ger\u00e4t auf
Werkseinstellungen zur\u00fcck.
", "app_bell_settings_factory_reset": "Zur\u00fccksetzen", "app_bell_settings_factory_reset_option_back": "Zur\u00fcck", diff --git a/image/system_a/data/lang/English.json b/image/system_a/data/lang/English.json index e260ba139fdb03b49c32b740f50d20021e21590d..8c3655772f7514f30177aaed0ef17b54a3618bd2 100644 --- a/image/system_a/data/lang/English.json +++ b/image/system_a/data/lang/English.json @@ -126,9 +126,9 @@ "app_bell_settings_alarm_settings_title": "Alarm settings", "app_bell_settings_alarm_settings_tone": "Main alarm tone", "app_bell_settings_alarm_settings_volume": "Main alarm volume", - "app_bell_settings_bedtime_settings_tone": "Bedtime tone", - "app_bell_settings_bedtime_settings_volume": "Bedtime tone
volume
", - "app_bell_settings_bedtime_tone": "Bedtime tone", + "app_bell_settings_bedtime_settings_tone": "Bedtime chime", + "app_bell_settings_bedtime_settings_volume": "Bedtime volume", + "app_bell_settings_bedtime_chime": "Bedtime chime", "app_bell_settings_display_factory_reset_confirmation": "Factory reset will delete all
users files and return device
to factory settings.
", "app_bell_settings_factory_reset": "Factory reset", "app_bell_settings_factory_reset_option_back": "Back", @@ -746,7 +746,7 @@ "tethering_menu_access_decline": "Tethering is on.

To access menu,
turn tethering off.
", "tethering_phone_mode_change_prohibited": "Tethering is on.

Other modes (Connected, DND,
Offline) are overriden by this mode
and are not working.
", "tethering_turn_off_question": "Turn tethering off?", - "unsaved_changes": "Unsaved4 changes", + "unsaved_changes": "Unsaved changes", "battery_low": "Low battery", "battery_remaining": "$BATTERY% battery remaining" } diff --git a/image/system_a/data/lang/Espanol.json b/image/system_a/data/lang/Espanol.json index 02b97f6f435500df0e002b97bb3554cccfbafa8d..9353263c3dd6af1ae131fe0f4f90b5c8beff237e 100644 --- a/image/system_a/data/lang/Espanol.json +++ b/image/system_a/data/lang/Espanol.json @@ -93,7 +93,7 @@ "app_bell_settings_alarm_settings_volume": "Volumen de alarma", "app_bell_settings_bedtime_settings_tone": "Hora de dormir", "app_bell_settings_bedtime_settings_volume": "Volumen", - "app_bell_settings_bedtime_tone": "Hora de dormir", + "app_bell_settings_bedtime_chime": "Hora de dormir", "app_bell_settings_display_factory_reset_confirmation": "La configuraci\u00f3n de f\u00e1brica
eliminar\u00e1 todos los archivos.
", "app_bell_settings_factory_reset": "Restablecer", "app_bell_settings_factory_reset_option_back": "Atr\u00e1s", diff --git a/image/system_a/data/lang/Francais.json b/image/system_a/data/lang/Francais.json index fa1ec2661cf468f6c61b05cc9e2fd4eb8e9ac5a4..213e9dde3326d3e7798a92df450a8512fe4e685a 100644 --- a/image/system_a/data/lang/Francais.json +++ b/image/system_a/data/lang/Francais.json @@ -95,7 +95,7 @@ "app_bell_settings_alarm_settings_volume": "Volume", "app_bell_settings_bedtime_settings_tone": "M\u00e9lodie de l'heure du coucher", "app_bell_settings_bedtime_settings_volume": "Volume", - "app_bell_settings_bedtime_tone": "Heure du coucher", + "app_bell_settings_bedtime_chime": "Heure du coucher", "app_bell_settings_display_factory_reset_confirmation": "La r\u00e9initialisation d'usine
supprimera tous les fichiers de l'utilisateur et remettra l'appareil sur ses param\u00e8tres d'usine.
", "app_bell_settings_factory_reset": "R\u00e9initialisation", "app_bell_settings_factory_reset_option_back": "Retour", diff --git a/image/system_a/data/lang/Polski.json b/image/system_a/data/lang/Polski.json index d7ead247af26fc9a3a82a2524984617e225f540c..91b53daa1a9bd53892e910b7dc1f6c524bcae470 100644 --- a/image/system_a/data/lang/Polski.json +++ b/image/system_a/data/lang/Polski.json @@ -94,7 +94,7 @@ "app_bell_settings_alarm_settings_volume": "G\u0142o\u015bno\u015b\u0107 alarmu", "app_bell_settings_bedtime_settings_tone": "D\u017awi\u0119k", "app_bell_settings_bedtime_settings_volume": "G\u0142o\u015bno\u015b\u0107", - "app_bell_settings_bedtime_tone": "Pora snu", + "app_bell_settings_bedtime_chime": "Pora snu", "app_bell_settings_display_factory_reset_confirmation": "Reset usunie wszystkie pliki
i przywr\u00f3ci urz\u0105dzenie do
ustawie\u0144 fabrycznych.
", "app_bell_settings_factory_reset": "Ustaw. fabryczne", "app_bell_settings_factory_reset_option_back": "Wr\u00f3\u0107", diff --git a/products/BellHybrid/apps/application-bell-bedtime/ApplicationBellBedtime.cpp b/products/BellHybrid/apps/application-bell-bedtime/ApplicationBellBedtime.cpp index fe5f5068860b5c1d07458557a7f58b3782c6dd3d..12ed05b3bfb94d119b40fc41021b81446c1b7990 100644 --- a/products/BellHybrid/apps/application-bell-bedtime/ApplicationBellBedtime.cpp +++ b/products/BellHybrid/apps/application-bell-bedtime/ApplicationBellBedtime.cpp @@ -8,7 +8,6 @@ #include #include #include -#include namespace app { @@ -36,10 +35,8 @@ namespace app { windowsFactory.attach( gui::name::window::main_window, [](ApplicationCommon *app, [[maybe_unused]] const std::string &name) { - auto soundsRepository = std::make_unique(paths::audio::proprietary() / - paths::audio::bedtimeReminder()); auto audioModel = std::make_unique(app); - auto bedtimeModel = std::make_unique(app, *audioModel, *soundsRepository); + auto bedtimeModel = std::make_unique(app, *audioModel); auto provider = std::make_shared(std::move(bedtimeModel)); auto presenter = std::make_unique(provider); return std::make_unique(app, std::move(presenter)); diff --git a/products/BellHybrid/apps/application-bell-settings/ApplicationBellSettings.cpp b/products/BellHybrid/apps/application-bell-settings/ApplicationBellSettings.cpp index e7800d491ced01e965b30b8269380e7f8e365c70..c60691d9924656d1e91ab7bd452c8bc89d042179 100644 --- a/products/BellHybrid/apps/application-bell-settings/ApplicationBellSettings.cpp +++ b/products/BellHybrid/apps/application-bell-settings/ApplicationBellSettings.cpp @@ -44,7 +44,6 @@ #include #include #include -#include #include namespace app @@ -124,14 +123,19 @@ namespace app windowsFactory.attach( gui::window::name::bellSettingsBedtimeTone, [this](ApplicationCommon *app, const std::string &name) { - auto soundsRepository = std::make_unique(paths::audio::proprietary() / - paths::audio::bedtimeReminder()); - auto bedtimeModel = std::make_shared(app, *audioModel, *soundsRepository); - - auto provider = std::make_shared( - bedtimeModel, soundsRepository->getSongTitles()); - auto presenter = std::make_unique( - provider, bedtimeModel, *audioModel, std::move(soundsRepository)); + auto bedtimeModel = std::make_shared(app, *audioModel); + + const auto &pathSorting = + SoundsRepository::PathSorting{paths::audio::proprietary() / paths::audio::bedtimeReminder(), + SoundsRepository::SortingBy::TitleAscending}; + + auto soundsRepository = std::make_unique(this, pathSorting); + auto songsModel = std::make_unique(this, std::move(soundsRepository)); + + auto provider = std::make_shared(bedtimeModel, + std::move(songsModel)); + auto presenter = + std::make_unique(provider, bedtimeModel, *audioModel); return std::make_unique(app, std::move(presenter)); }); diff --git a/products/BellHybrid/apps/application-bell-settings/CMakeLists.txt b/products/BellHybrid/apps/application-bell-settings/CMakeLists.txt index 60d6b647fe1b50f3ccff9ac8774a96a1d182bf0a..a437cca87fcc83021791e35de70ece8c64aec259 100644 --- a/products/BellHybrid/apps/application-bell-settings/CMakeLists.txt +++ b/products/BellHybrid/apps/application-bell-settings/CMakeLists.txt @@ -54,7 +54,6 @@ target_sources(application-bell-settings widgets/DateSetListItem.cpp widgets/TimeSetListItem.cpp widgets/AboutYourBellListItem.cpp - widgets/DialogYesNo.cpp widgets/SongsListViewItem.cpp windows/BellSettingsBedtimeToneWindow.cpp @@ -98,7 +97,6 @@ target_sources(application-bell-settings widgets/DateFormatSetListItem.hpp widgets/TimeSetListItem.hpp widgets/AboutYourBellListItem.hpp - widgets/DialogYesNo.hpp widgets/SongsListViewItem.hpp windows/alarm_settings/BellSettingsAlarmSettingsSnoozeWindow.hpp diff --git a/products/BellHybrid/apps/application-bell-settings/include/application-bell-settings/ApplicationBellSettings.hpp b/products/BellHybrid/apps/application-bell-settings/include/application-bell-settings/ApplicationBellSettings.hpp index 67cf5cf3448e006a764835896be430f733005fd8..528a41fca1e3896f211fd49f58b5d685a7658e95 100644 --- a/products/BellHybrid/apps/application-bell-settings/include/application-bell-settings/ApplicationBellSettings.hpp +++ b/products/BellHybrid/apps/application-bell-settings/include/application-bell-settings/ApplicationBellSettings.hpp @@ -12,9 +12,6 @@ namespace gui::window::name { inline constexpr auto bellSettings = gui::name::window::main_window; inline constexpr auto bellSettingsTimeUnits = "BellSettingsTimeUnits"; - inline constexpr auto bellSettingsDialog = "BellSettingsDialog"; - inline constexpr auto bellSettingsFinished = "BellSettingsFinished"; - inline constexpr auto bellSettingsFrontlight = "BellSettingsFrontlight"; inline constexpr auto bellSettingsHomeView = "BellSettingsHomeView"; inline constexpr auto bellSettingsLanguage = "BellSettingsLanguage"; inline constexpr auto bellSettingsLayout = "BellSettingsLayout"; @@ -33,11 +30,11 @@ namespace app void onStop() override; public: - ApplicationBellSettings(std::string name = applicationBellSettingsName, - std::string parent = "", - StatusIndicators statusIndicators = StatusIndicators{}, - StartInBackground startInBackground = {false}, - std::uint32_t stackDepth = 1024 * 8); + explicit ApplicationBellSettings(std::string name = applicationBellSettingsName, + std::string parent = "", + StatusIndicators statusIndicators = StatusIndicators{}, + StartInBackground startInBackground = {false}, + std::uint32_t stackDepth = 1024 * 8); sys::ReturnCodes InitHandler() override; diff --git a/products/BellHybrid/apps/application-bell-settings/models/alarm_settings/BedtimeSettingsListItemProvider.cpp b/products/BellHybrid/apps/application-bell-settings/models/alarm_settings/BedtimeSettingsListItemProvider.cpp index 8ab7b34fa9d6b2822ea2d65d7eca7a6a31b6aa70..bd24b05c1368f0a961c9bc3795cf7275a89c0eb9 100644 --- a/products/BellHybrid/apps/application-bell-settings/models/alarm_settings/BedtimeSettingsListItemProvider.cpp +++ b/products/BellHybrid/apps/application-bell-settings/models/alarm_settings/BedtimeSettingsListItemProvider.cpp @@ -2,32 +2,29 @@ // For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md #include "BedtimeSettingsListItemProvider.hpp" -#include "BellSettingsStyle.hpp" -#include "common/models/AbstractAudioModel.hpp" +#include "SongsListViewItem.hpp" +#include #include -#include -#include -#include namespace app::bell_settings { using namespace gui; - BedtimeSettingsListItemProvider::BedtimeSettingsListItemProvider(std::shared_ptr model, - std::vector chimeToneRange) - : model{std::move(model)} + BedtimeSettingsListItemProvider::BedtimeSettingsListItemProvider( + std::shared_ptr settingsModel, std::shared_ptr songsModel) + : settingsModel{std::move(settingsModel)}, songsModel{std::move(songsModel)} { - buildListItems(std::move(chimeToneRange)); + buildListItems(); } - void BedtimeSettingsListItemProvider::buildListItems(std::vector chimeToneRange) + void BedtimeSettingsListItemProvider::buildListItems() { constexpr auto itemCount = 2U; internalData.reserve(itemCount); - auto chimeTone = new list_items::Text(std::move(chimeToneRange), - model->getBedtimeTone(), - utils::translate("app_bell_settings_bedtime_settings_tone")); + auto chimeTone = new SongsListViewItem( + utils::translate("app_bell_settings_bedtime_settings_tone"), settingsModel->getBedtimeTone(), songsModel); + chimeTone->set_on_value_change_cb([this](const auto &val) { if (onToneChange) { onToneChange(val); @@ -44,12 +41,13 @@ namespace app::bell_settings } }; internalData.emplace_back(chimeTone); + constexpr auto volumeStep = 1U; constexpr auto volumeMin = AbstractAudioModel::minVolume; constexpr auto volumeMax = AbstractAudioModel::maxVolume; bedtimeVolume = new list_items::NumericWithBar( list_items::NumericWithBar::spinner_type::range{volumeMin, volumeMax, volumeStep}, - model->getBedtimeVolume(), + settingsModel->getBedtimeVolume(), volumeMax, utils::translate("app_bell_settings_bedtime_settings_volume")); bedtimeVolume->set_on_value_change_cb([this](const auto &val) { @@ -70,6 +68,7 @@ namespace app::bell_settings } }; internalData.emplace_back(bedtimeVolume); + for (auto item : internalData) { item->deleteByList = false; } diff --git a/products/BellHybrid/apps/application-bell-settings/models/alarm_settings/BedtimeSettingsListItemProvider.hpp b/products/BellHybrid/apps/application-bell-settings/models/alarm_settings/BedtimeSettingsListItemProvider.hpp index 048c71e066852995e824dd0ab75ca3060de894ac..5bed03fd76736c08c656fc3ae73c7415a3ec06fc 100644 --- a/products/BellHybrid/apps/application-bell-settings/models/alarm_settings/BedtimeSettingsListItemProvider.hpp +++ b/products/BellHybrid/apps/application-bell-settings/models/alarm_settings/BedtimeSettingsListItemProvider.hpp @@ -3,12 +3,14 @@ #pragma once -#include -#include #include -#include #include "SettingsListItemProvider.hpp" +namespace app +{ + class SongsModel; +} + namespace app::list_items { class NumericWithBar; @@ -19,14 +21,16 @@ namespace app::bell_settings class BedtimeSettingsListItemProvider : public SettingsListItemProvider { public: - BedtimeSettingsListItemProvider(std::shared_ptr model, std::vector chimeToneRange); + BedtimeSettingsListItemProvider(std::shared_ptr model, + std::shared_ptr songsModel); auto getCurrentVolume() -> std::uint8_t; private: - void buildListItems(std::vector bedtimeToneRange); + void buildListItems(); - std::shared_ptr model; + std::shared_ptr settingsModel; + std::shared_ptr songsModel; app::list_items::NumericWithBar *bedtimeVolume{nullptr}; }; } // namespace app::bell_settings diff --git a/products/BellHybrid/apps/application-bell-settings/models/alarm_settings/PrewakeUpListItemProvider.cpp b/products/BellHybrid/apps/application-bell-settings/models/alarm_settings/PrewakeUpListItemProvider.cpp index 3f38777ef1bf5be9ad44ad5cfe37a0846c83b7c9..45d81e6695aba256c3f72c534b82e273e9adbdf9 100644 --- a/products/BellHybrid/apps/application-bell-settings/models/alarm_settings/PrewakeUpListItemProvider.cpp +++ b/products/BellHybrid/apps/application-bell-settings/models/alarm_settings/PrewakeUpListItemProvider.cpp @@ -2,15 +2,12 @@ // For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md #include "PrewakeUpListItemProvider.hpp" +#include "AbstractPrewakeUpSettingsModel.hpp" #include "common/models/AbstractAudioModel.hpp" -#include #include #include #include -#include #include -#include - #include #include diff --git a/products/BellHybrid/apps/application-bell-settings/models/alarm_settings/PrewakeUpListItemProvider.hpp b/products/BellHybrid/apps/application-bell-settings/models/alarm_settings/PrewakeUpListItemProvider.hpp index bd6588f3a7b395368efb6432a2d1bef39aab60a4..27e2ee6b77c6c97a27f8c3f1971b28661654a5a2 100644 --- a/products/BellHybrid/apps/application-bell-settings/models/alarm_settings/PrewakeUpListItemProvider.hpp +++ b/products/BellHybrid/apps/application-bell-settings/models/alarm_settings/PrewakeUpListItemProvider.hpp @@ -4,9 +4,11 @@ #pragma once #include "SettingsListItemProvider.hpp" -#include "AbstractPrewakeUpSettingsModel.hpp" -#include -#include + +namespace app +{ + class SongsModel; +} namespace app::list_items { @@ -16,6 +18,7 @@ namespace app::list_items namespace app::bell_settings { class AbstractFrontlightModel; + class AbstractPrewakeUpSettingsModel; class PrewakeUpListItemProvider : public SettingsListItemProvider { diff --git a/products/BellHybrid/apps/application-bell-settings/presenter/BedtimeSettingsPresenter.cpp b/products/BellHybrid/apps/application-bell-settings/presenter/BedtimeSettingsPresenter.cpp index 26c5733119416aff6e49f5c6c5fe43874f8c2dd3..398514b47fee12d0af369e5b8543068183426138 100644 --- a/products/BellHybrid/apps/application-bell-settings/presenter/BedtimeSettingsPresenter.cpp +++ b/products/BellHybrid/apps/application-bell-settings/presenter/BedtimeSettingsPresenter.cpp @@ -7,17 +7,13 @@ namespace app::bell_settings { SettingsPresenter::SettingsPresenter(std::shared_ptr provider, std::shared_ptr model, - AbstractAudioModel &audioModel, - std::unique_ptr soundsRepository) - : provider(std::move(provider)), - model(std::move(model)), audioModel{audioModel}, soundsRepository{std::move(soundsRepository)} + AbstractAudioModel &audioModel) + : provider(std::move(provider)), model(std::move(model)), audioModel{audioModel} { auto playSound = [this](const UTF8 &val) { currentSoundPath = val; this->audioModel.setVolume(this->provider->getCurrentVolume(), AbstractAudioModel::PlaybackType::Bedtime); - this->audioModel.play(this->soundsRepository->titleToPath(currentSoundPath).value_or(""), - AbstractAudioModel::PlaybackType::Bedtime, - {}); + this->audioModel.play(currentSoundPath, AbstractAudioModel::PlaybackType::Bedtime, {}); }; this->provider->onExit = [this]() { getView()->exit(); }; diff --git a/products/BellHybrid/apps/application-bell-settings/presenter/BedtimeSettingsPresenter.hpp b/products/BellHybrid/apps/application-bell-settings/presenter/BedtimeSettingsPresenter.hpp index 46de7d6179a429e8f9c15f95fff0a910f2384cf4..d0441532b36f5606e498fe2b7589197c37d9eb16 100644 --- a/products/BellHybrid/apps/application-bell-settings/presenter/BedtimeSettingsPresenter.hpp +++ b/products/BellHybrid/apps/application-bell-settings/presenter/BedtimeSettingsPresenter.hpp @@ -44,8 +44,7 @@ namespace app::bell_settings public: SettingsPresenter(std::shared_ptr provider, std::shared_ptr model, - AbstractAudioModel &audioModel, - std::unique_ptr soundsRepository); + AbstractAudioModel &audioModel); auto getPagesProvider() const -> std::shared_ptr override; auto saveData() -> void override; @@ -59,7 +58,6 @@ namespace app::bell_settings std::shared_ptr provider; std::shared_ptr model; AbstractAudioModel &audioModel; - std::unique_ptr soundsRepository; UTF8 currentSoundPath; }; } // namespace app::bell_settings diff --git a/products/BellHybrid/apps/application-bell-settings/widgets/DialogYesNo.cpp b/products/BellHybrid/apps/application-bell-settings/widgets/DialogYesNo.cpp deleted file mode 100644 index eab29b2be2d190e090288d8d299d250ce6a20972..0000000000000000000000000000000000000000 --- a/products/BellHybrid/apps/application-bell-settings/widgets/DialogYesNo.cpp +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright (c) 2017-2023, Mudita Sp. z.o.o. All rights reserved. -// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md - -#include "DialogYesNo.hpp" - -#include - -#include -#include -#include -#include - -using namespace gui; - -BellDialogYesNo::BellDialogYesNo(app::ApplicationCommon *app, const std::string &name) - : BellShortOptionWindow(app, name) -{ - optionsList->setBoundaries(Boundaries::Fixed); - - statusBar->setVisible(false); - header->setTitleVisibility(true); -} - -std::list BellDialogYesNo::dialogOptionsList(std::function yesAction) -{ - std::list dialogOptionList; - auto addDialogSettings = [&](const UTF8 &name, const gui::bell_dialog::Options &optionName) { - dialogOptionList.emplace_back(std::make_unique( - name, - [=](gui::Item &item) { - if (optionName == bell_dialog::Options::YES) { - return yesAction(); - } - else if (optionName == bell_dialog::Options::NO) { - application->returnToPreviousWindow(); - } - return true; - }, - [=](gui::Item &item) { - // put focus change callback here - return true; - }, - this)); - }; - - addDialogSettings(utils::translate(style::strings::common::no), bell_dialog::Options::NO); - addDialogSettings(utils::translate(style::strings::common::yes), bell_dialog::Options::YES); - - return dialogOptionList; -} - -void BellDialogYesNo::onBeforeShow(ShowMode, SwitchData *data) -{ - if (auto metadata = dynamic_cast(data); metadata) { - setListTitle(metadata->get().text); - addOptions(dialogOptionsList(metadata->get().action)); - } -} diff --git a/products/BellHybrid/apps/application-bell-settings/widgets/DialogYesNo.hpp b/products/BellHybrid/apps/application-bell-settings/widgets/DialogYesNo.hpp deleted file mode 100644 index cd4fd8c0cc5d38f9aabae599a5fc23ccbca038ce..0000000000000000000000000000000000000000 --- a/products/BellHybrid/apps/application-bell-settings/widgets/DialogYesNo.hpp +++ /dev/null @@ -1,33 +0,0 @@ -// 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 -#include - -namespace gui -{ - namespace bell_dialog - { - enum Options - { - YES, - NO - }; - } // namespace bell_dialog - - /// @brief Yes/No Dialog class - /// - /// Contain same items as Dialog and additionally Yes and No selectable options - class BellDialogYesNo : public BellShortOptionWindow - { - public: - BellDialogYesNo(app::ApplicationCommon *app, const std::string &name); - - void onBeforeShow(ShowMode mode, SwitchData *data) override; - - private: - std::list dialogOptionsList(std::function yesAction); - }; -}; // namespace gui diff --git a/products/BellHybrid/apps/application-bell-settings/windows/BellSettingsWindow.cpp b/products/BellHybrid/apps/application-bell-settings/windows/BellSettingsWindow.cpp index b902ee824b60ce5452c5017c89879afadf33c544..533c6fd6264c6efa4874dd9c79e1d0966a37030f 100644 --- a/products/BellHybrid/apps/application-bell-settings/windows/BellSettingsWindow.cpp +++ b/products/BellHybrid/apps/application-bell-settings/windows/BellSettingsWindow.cpp @@ -1,4 +1,4 @@ -// Copyright (c) 2017-2023, Mudita Sp. z.o.o. All rights reserved. +// Copyright (c) 2017-2024, Mudita Sp. z.o.o. All rights reserved. // For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md #include "AboutYourBellWindow.hpp" @@ -8,20 +8,15 @@ #include "alarm_settings/BellSettingsAlarmSettingsMenuWindow.hpp" #include -#include -#include #include #include #include #include -#include -#include #include namespace gui { - BellSettingsWindow::BellSettingsWindow(app::ApplicationCommon *app) : BellOptionWindow(app, gui::window::name::bellSettings) { @@ -63,8 +58,9 @@ namespace gui addWinSettings(utils::translate("app_bell_settings_alarm_settings"), BellSettingsAlarmSettingsMenuWindow::name, defaultCallback); - addWinSettings( - utils::translate("app_bell_settings_bedtime_tone"), window::name::bellSettingsBedtimeTone, defaultCallback); + addWinSettings(utils::translate("app_bell_settings_bedtime_chime"), + window::name::bellSettingsBedtimeTone, + defaultCallback); addWinSettings(bellSettingsTimeUnitsTitle, window::name::bellSettingsTimeUnits, defaultCallback); addWinSettings( utils::translate("app_bell_settings_language"), gui::window::name::bellSettingsLanguage, defaultCallback); @@ -81,5 +77,4 @@ namespace gui return settingsOptionList; } - } // namespace gui diff --git a/products/BellHybrid/apps/application-bell-settings/windows/BellSettingsWindow.hpp b/products/BellHybrid/apps/application-bell-settings/windows/BellSettingsWindow.hpp index 987fc3238f2d613dc390bc34ef8d51d7dc5b9bde..19e57d5a5064caf58cf9d56585aba175f36f297c 100644 --- a/products/BellHybrid/apps/application-bell-settings/windows/BellSettingsWindow.hpp +++ b/products/BellHybrid/apps/application-bell-settings/windows/BellSettingsWindow.hpp @@ -1,4 +1,4 @@ -// Copyright (c) 2017-2021, Mudita Sp. z.o.o. All rights reserved. +// Copyright (c) 2017-2024, Mudita Sp. z.o.o. All rights reserved. // For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md #pragma once @@ -15,5 +15,4 @@ namespace gui private: std::list