~aleteoryx/muditaos

ref: 0823d82e5141f44812c54debf07245d0ca746124 muditaos/module-apps/application-settings-new/windows/DisplayAndKeypadWindow.cpp -rw-r--r-- 1.8 KiB
0823d82e — Radoslaw Wicik [EGD-3743] Update copyrights in fies - add empty line after license 5 years ago
                                                                                
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
#include "DisplayAndKeypadWindow.hpp"

#include <application-settings-new/ApplicationSettings.hpp>
#include <i18/i18.hpp>
#include <OptionWindow.hpp>

namespace gui
{
    DisplayAndKeypadWindow::DisplayAndKeypadWindow(app::Application *app)
        : OptionWindow(app, gui::window::name::display_and_keypad)
    {
        options = displayAndKeypadOptionsList();
        addOptions(options);
        setTitle(utils::localize.get("app_settings_disp_key"));
    }

    std::list<Option> DisplayAndKeypadWindow::displayAndKeypadOptionsList()
    {
        std::list<gui::Option> l;

        auto i18     = [](std::string text) { return utils::localize.get(text); };
        auto addMenu = [&](UTF8 name, std::string window = "") {
            l.emplace_back(gui::Option{name,
                                       [=](gui::Item &item) {
                                           if (window == "") {
                                               return false;
                                           }
                                           LOG_INFO("switching to %s page", window.c_str());
                                           application->switchWindow(window, nullptr);
                                           return true;
                                       },
                                       gui::Arrow::Enabled});
        };

        addMenu(i18("app_settings_display_display_light"), gui::window::name::display_light);
        addMenu(i18("app_settings_display_font_size"), gui::window::name::font_size);
        addMenu(i18("app_settings_display_locked_screen"), gui::window::name::locked_screen);
        addMenu(i18("app_settings_display_keypad_light"), gui::window::name::keypad_light);
        addMenu(i18("app_settings_display_input_language"), gui::window::name::input_language);

        return l;
    }
} // namespace gui