~aleteoryx/muditaos

ref: d528cac7df03906e67d64987e7c0b2ca5cfe6361 muditaos/module-apps/application-settings/windows/network/SimCardsWindow.hpp -rw-r--r-- 1.5 KiB
d528cac7 — Maciej-Mudita [MOS-641] Fix SIM cards window 3 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
// Copyright (c) 2017-2022, Mudita Sp. z.o.o. All rights reserved.
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md

#pragma once

#include <application-settings/windows/BaseSettingsWindow.hpp>
#include <application-settings/ApplicationSettings.hpp>

namespace app::settingsInterface
{
    class SimParams;
}; // namespace app::settingsInterface

namespace gui
{
    class SimCardsWindow : public BaseSettingsWindow
    {
      private:
        auto buildOptionsList() -> std::list<Option> override;
        app::settingsInterface::SimParams *simParams;

        std::list<gui::Option> createListWithNoConnectedSim(const Store::GSM::SelectedSIM sim,
                                                            const std::string &simStr);
        std::list<gui::Option> createListWithBlockedSim(const Store::GSM::SelectedSIM sim, const std::string &simStr);
        std::list<gui::Option> createListWithActiveSim(const Store::GSM::SelectedSIM sim,
                                                       const std::string &simStr,
                                                       const std::string &phoneNumber);
        bool createSwitchSimAction(const Store::GSM::SelectedSIM selectedSim) const;
        bool createNavBarText(const gui::Item &item);

      public:
        SimCardsWindow(app::ApplicationCommon *app, app::settingsInterface::SimParams *simParams);

        void onBeforeShow(ShowMode mode, SwitchData *data) override;
        OptionWindowDestroyer rai_destroyer = OptionWindowDestroyer(*this);
    };
} // namespace gui