More refactorings
This commit is contained in:
Submodule components/esp-gui-lib updated: 4871df0898...4cb29d1d3b
@ -0,0 +1,70 @@
|
||||
#include "bobbychangevaluedisplay.h"
|
||||
|
||||
template<typename Tvalue>
|
||||
void BobbyChangeValueDisplay<Tvalue>::rawButtonPressed(uint8_t button)
|
||||
{
|
||||
Base::rawButtonPressed(button);
|
||||
switch (button)
|
||||
{
|
||||
using espgui::Button;
|
||||
case 0: buttonPressed(Button::Left); break;
|
||||
case 1: buttonPressed(Button::Right); break;
|
||||
case 2: buttonPressed(Button::Up); break;
|
||||
case 3: buttonPressed(Button::Down); break;
|
||||
case 4: buttonPressed(Button(BobbyButton::Profile0)); break;
|
||||
case 5: buttonPressed(Button(BobbyButton::Profile1)); break;
|
||||
case 6: buttonPressed(Button(BobbyButton::Profile2)); break;
|
||||
case 7: buttonPressed(Button(BobbyButton::Profile3)); break;
|
||||
case 8: buttonPressed(Button(BobbyButton::Left2)); break;
|
||||
case 9: buttonPressed(Button(BobbyButton::Right2)); break;
|
||||
case 10: buttonPressed(Button(BobbyButton::Up2)); break;
|
||||
case 11: buttonPressed(Button(BobbyButton::Down2)); break;
|
||||
}
|
||||
}
|
||||
|
||||
template<typename Tvalue>
|
||||
void BobbyChangeValueDisplay<Tvalue>::rawButtonReleased(uint8_t button)
|
||||
{
|
||||
Base::rawButtonReleased(button);
|
||||
switch (button)
|
||||
{
|
||||
using espgui::Button;
|
||||
case 0: buttonReleased(Button::Left); break;
|
||||
case 1: buttonReleased(Button::Right); break;
|
||||
case 2: buttonReleased(Button::Up); break;
|
||||
case 3: buttonReleased(Button::Down); break;
|
||||
case 4: buttonReleased(Button(BobbyButton::Profile0)); break;
|
||||
case 5: buttonReleased(Button(BobbyButton::Profile1)); break;
|
||||
case 6: buttonReleased(Button(BobbyButton::Profile2)); break;
|
||||
case 7: buttonReleased(Button(BobbyButton::Profile3)); break;
|
||||
case 8: buttonReleased(Button(BobbyButton::Left2)); break;
|
||||
case 9: buttonReleased(Button(BobbyButton::Right2)); break;
|
||||
case 10: buttonReleased(Button(BobbyButton::Up2)); break;
|
||||
case 11: buttonReleased(Button(BobbyButton::Down2)); break;
|
||||
}
|
||||
}
|
||||
|
||||
template<typename Tvalue>
|
||||
void BobbyChangeValueDisplay<Tvalue>::buttonPressed(espgui::Button button)
|
||||
{
|
||||
Base::buttonPressed(button);
|
||||
|
||||
switch (BobbyButton(button))
|
||||
{
|
||||
case BobbyButton::Profile0: /* TODO */ break;
|
||||
case BobbyButton::Profile1: /* TODO */ break;
|
||||
case BobbyButton::Profile2: /* TODO */ break;
|
||||
case BobbyButton::Profile3: /* TODO */ break;
|
||||
case BobbyButton::Left2: /* TODO */ break;
|
||||
case BobbyButton::Right2: /* TODO */ break;
|
||||
case BobbyButton::Up2: /* TODO */ break;
|
||||
case BobbyButton::Down2: /* TODO */ break;
|
||||
default:;
|
||||
}
|
||||
}
|
||||
|
||||
template<typename Tvalue>
|
||||
void BobbyChangeValueDisplay<Tvalue>::buttonReleased(espgui::Button button)
|
||||
{
|
||||
Base::buttonReleased(button);
|
||||
}
|
||||
|
@ -0,0 +1,23 @@
|
||||
#pragma once
|
||||
|
||||
// system includes
|
||||
#include <type_traits>
|
||||
|
||||
// 3rdparty lib includes
|
||||
#include <changevaluedisplay.h>
|
||||
|
||||
// local includes
|
||||
#include "bobbydisplay.h"
|
||||
|
||||
template<typename Tvalue>
|
||||
class BobbyChangeValueDisplay : public espgui::ChangeValueDisplay<Tvalue>
|
||||
{
|
||||
using Base = espgui::ChangeValueDisplay<Tvalue>;
|
||||
|
||||
public:
|
||||
void rawButtonPressed(uint8_t button) override;
|
||||
void rawButtonReleased(uint8_t button) override;
|
||||
|
||||
void buttonPressed(espgui::Button button) override;
|
||||
void buttonReleased(espgui::Button button) override;
|
||||
};
|
||||
|
@ -1,32 +1,34 @@
|
||||
#include "timersmenu.h"
|
||||
|
||||
// local includes
|
||||
#include "accessors/settingsaccessors.h"
|
||||
// 3rdparty lib includes
|
||||
#include "actions/switchscreenaction.h"
|
||||
#include "changevaluedisplay.h"
|
||||
#include "displays/menus/boardcomputerhardwaresettingsmenu.h"
|
||||
#include "icons/back.h"
|
||||
|
||||
// local includes
|
||||
#include "displays/bobbychangevaluedisplay.h"
|
||||
#include "accessors/settingsaccessors.h"
|
||||
#include "displays/menus/boardcomputerhardwaresettingsmenu.h"
|
||||
#include "texts.h"
|
||||
|
||||
using namespace espgui;
|
||||
|
||||
namespace {
|
||||
using StatsUpdateRateChangeDisplay = makeComponent<
|
||||
ChangeValueDisplay<int16_t>,
|
||||
StaticText<TEXT_STATSUPDATERATE>,
|
||||
using StatsUpdateRateChangeDisplay = espgui::makeComponent<
|
||||
BobbyChangeValueDisplay<int16_t>,
|
||||
espgui::StaticText<TEXT_STATSUPDATERATE>,
|
||||
StatsUpdateRateAccessor,
|
||||
BackActionInterface<SwitchScreenAction<TimersMenu>>,
|
||||
SwitchScreenAction<TimersMenu>
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<TimersMenu>>,
|
||||
espgui::SwitchScreenAction<TimersMenu>
|
||||
>;
|
||||
}
|
||||
|
||||
TimersMenu::TimersMenu()
|
||||
{
|
||||
using namespace espgui;
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_STATSUPDATERATE>, SwitchScreenAction<StatsUpdateRateChangeDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<BoardcomputerHardwareSettingsMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
|
||||
void TimersMenu::back()
|
||||
{
|
||||
switchScreen<BoardcomputerHardwareSettingsMenu>();
|
||||
espgui::switchScreen<BoardcomputerHardwareSettingsMenu>();
|
||||
}
|
||||
|
Reference in New Issue
Block a user