mirror of
https://github.com/mudita/MuditaOS.git
synced 2026-04-29 11:25:27 -04:00
Reduce firmware size by refactoring global data defined in public headers. Each global variable which require runtime initialization adds initialization code to every translation unit which includes the header where the variable is defined and declared.
55 lines
1.4 KiB
C++
55 lines
1.4 KiB
C++
// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved.
|
|
// For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md
|
|
|
|
#pragma once
|
|
|
|
#include "Application.hpp"
|
|
#include "gui/widgets/Text.hpp"
|
|
#include "windows/AppWindow.hpp"
|
|
|
|
namespace gui
|
|
{
|
|
namespace name
|
|
{
|
|
namespace window
|
|
{
|
|
inline constexpr auto scan_window = "AntennaScanWindow";
|
|
}
|
|
} // namespace name
|
|
class ScanModesWindow : public AppWindow
|
|
{
|
|
protected:
|
|
std::map<uint32_t, std::string> modeButtonParams;
|
|
enum scanModes
|
|
{
|
|
Auto = 0,
|
|
GSM_only,
|
|
WCDMA_only,
|
|
LTE_only,
|
|
TD_SCDMA_only,
|
|
UTMS_only,
|
|
CDMA_only,
|
|
HDR_only,
|
|
CDMA_and_HDR_only
|
|
};
|
|
|
|
gui::VBox *modesBox = nullptr;
|
|
gui::Label *commandResult = nullptr;
|
|
|
|
gui::Label *addMode(gui::Item *parent, const UTF8 &text);
|
|
gui::Label *addSpacer(void);
|
|
|
|
public:
|
|
ScanModesWindow(app::Application *app);
|
|
|
|
// virtual methods
|
|
bool onInput(const InputEvent &inputEvent) override;
|
|
void onBeforeShow(ShowMode mode, SwitchData *data) override;
|
|
void rebuild() override;
|
|
void buildInterface() override;
|
|
void destroyInterface() override;
|
|
void updateCurrentMode(std::string &data);
|
|
};
|
|
|
|
} /* namespace gui */
|