More push pops again
This commit is contained in:
@ -103,7 +103,7 @@ set(headers
|
||||
displays/menus/featureflagsmenu.h
|
||||
displays/menus/feedbackdebugmenu.h
|
||||
displays/menus/gametrakmodesettingsmenu.h
|
||||
displays/menus/garagenmenu.h
|
||||
displays/menus/garagemenu.h
|
||||
displays/menus/graphsmenu.h
|
||||
displays/menus/greenpassmenu.h
|
||||
displays/menus/handbremssettingsmenu.h
|
||||
@ -340,7 +340,7 @@ set(sources
|
||||
displays/menus/featureflagsmenu.cpp
|
||||
displays/menus/feedbackdebugmenu.cpp
|
||||
displays/menus/gametrakmodesettingsmenu.cpp
|
||||
displays/menus/garagenmenu.cpp
|
||||
displays/menus/garagemenu.cpp
|
||||
displays/menus/graphsmenu.cpp
|
||||
displays/menus/greenpassmenu.cpp
|
||||
displays/menus/handbremssettingsmenu.cpp
|
||||
|
@ -10,7 +10,6 @@
|
||||
// local includes
|
||||
#include "globals.h"
|
||||
#include "utils.h"
|
||||
#include "displays/menus/mainmenu.h"
|
||||
#include "displays/potiscalibratedisplay.h"
|
||||
#include "bobbybuttons.h"
|
||||
|
||||
@ -109,7 +108,7 @@ void Lockscreen::redraw()
|
||||
if (!gas || !brems || *gas > 200.f || *brems > 200.f)
|
||||
espgui::switchScreen<PotisCalibrateDisplay>(true);
|
||||
else
|
||||
espgui::switchScreen<MainMenu>();
|
||||
espgui::popScreen();
|
||||
#ifdef LOCKSCREEN_PLUGIN
|
||||
#include LOCKSCREEN_PLUGIN
|
||||
LOCKSCREEN_PLUGIN_FIXES_1
|
||||
|
@ -4,7 +4,8 @@
|
||||
#include <menuitem.h>
|
||||
#include <icons/back.h>
|
||||
#include <actions/dummyaction.h>
|
||||
#include <actions/switchscreenaction.h>
|
||||
#include <actions/pushscreenaction.h>
|
||||
#include <actions/popscreenaction.h>
|
||||
#include <changevaluedisplay.h>
|
||||
#include <textwithvaluehelper.h>
|
||||
#include <fmt/core.h>
|
||||
@ -12,6 +13,11 @@
|
||||
#include <tftinstance.h>
|
||||
|
||||
// Local includes
|
||||
#include "utils.h"
|
||||
#include "icons/settings.h"
|
||||
#include "battery.h"
|
||||
#include "displays/bobbychangevaluedisplay.h"
|
||||
#include "displays/calibratevoltagedisplay.h"
|
||||
#include "accessors/settingsaccessors.h"
|
||||
#include "battery.h"
|
||||
#include "displays/batterygraphdisplay.h"
|
||||
@ -50,24 +56,24 @@ using BatteryCellSeriesChangeScreen = espgui::makeComponent<
|
||||
BobbyChangeValueDisplay<uint8_t>,
|
||||
espgui::StaticText<TEXT_CELL_SERIES>,
|
||||
BatterySeriesCellsAccessor,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<BatteryMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<BatteryMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
|
||||
using BatteryCellParallelChangeScreen = espgui::makeComponent<
|
||||
BobbyChangeValueDisplay<uint8_t>,
|
||||
espgui::StaticText<TEXT_CELL_PARALLEL>,
|
||||
BatteryParallelCellsAccessor,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<BatteryMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<BatteryMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
|
||||
using BatteryWHperKMChangeScreen = espgui::makeComponent<
|
||||
BobbyChangeValueDisplay<uint16_t>,
|
||||
espgui::StaticText<TEXT_BATTERY_WHKM>,
|
||||
BatteryWHperKMAccessor,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<BatteryMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<BatteryMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
} // namespace
|
||||
|
||||
@ -77,15 +83,15 @@ BatteryMenu::BatteryMenu()
|
||||
{
|
||||
constructMenuItem<makeComponent<MenuItem, CurrentBatteryStatusText, DisabledColor, DummyAction>>();
|
||||
constructMenuItem<makeComponent<MenuItem, EmptyText, DummyAction>>();
|
||||
constructMenuItem<makeComponent<MenuItem, TextWithValueHelper<TEXT_CELL_SERIES, BatterySeriesCellsAccessor>, SwitchScreenAction<BatteryCellSeriesChangeScreen>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, TextWithValueHelper<TEXT_CELL_PARALLEL, BatteryParallelCellsAccessor>, SwitchScreenAction<BatteryCellParallelChangeScreen>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, TextWithValueHelper<TEXT_BATTERY_WHKM, BatteryWHperKMAccessor>, SwitchScreenAction<BatteryWHperKMChangeScreen>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, TextWithValueHelper<TEXT_CELL_SERIES, BatterySeriesCellsAccessor>, PushScreenAction<BatteryCellSeriesChangeScreen>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, TextWithValueHelper<TEXT_CELL_PARALLEL, BatteryParallelCellsAccessor>, PushScreenAction<BatteryCellParallelChangeScreen>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, TextWithValueHelper<TEXT_BATTERY_WHKM, BatteryWHperKMAccessor>, PushScreenAction<BatteryWHperKMChangeScreen>>>();
|
||||
constructMenuItem<PopScreenTypeSafeChangeMenuItem<BatteryCellType, TEXT_SELECT_CELL_TYPE>>(&configs.battery.cellType);
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SHOW_BATTERY_GRAPH>, SwitchScreenAction<BatteryGraphDisplay>, StaticMenuItemIcon<&bobbyicons::graph>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SHOW_BATTERY_GRAPH>, PushScreenAction<BatteryGraphDisplay>, StaticMenuItemIcon<&bobbyicons::graph>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, EmptyText, DummyAction>>();
|
||||
constructMenuItem<makeComponent<MenuItem, WhStatisticsText, DummyAction>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BATTERY_CALIBRATE>, SwitchScreenAction<CalibrateVoltageDisplay>, StaticMenuItemIcon<&bobbyicons::settings>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<MainMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BATTERY_CALIBRATE>, PushScreenAction<CalibrateVoltageDisplay>, StaticMenuItemIcon<&bobbyicons::settings>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
|
||||
std::string BatteryMenu::text() const
|
||||
@ -129,5 +135,5 @@ void BatteryMenu::redraw()
|
||||
|
||||
void BatteryMenu::back()
|
||||
{
|
||||
espgui::switchScreen<MainMenu>();
|
||||
espgui::popScreen();
|
||||
}
|
||||
|
@ -10,10 +10,9 @@
|
||||
#include "actions/bmsturnoffchargeaction.h"
|
||||
#include "actions/bmsturnondischargeaction.h"
|
||||
#include "actions/bmsturnoffdischargeaction.h"
|
||||
#include "actions/switchscreenaction.h"
|
||||
#include "actions/popscreenaction.h"
|
||||
#include "bluetoothtexthelpers.h"
|
||||
#include "icons/back.h"
|
||||
#include "displays/menus/mainmenu.h"
|
||||
|
||||
using namespace espgui;
|
||||
using namespace bluetoothtexthelpers;
|
||||
@ -27,11 +26,11 @@ BmsMenu::BmsMenu()
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_TURNOFFCHARGE>, BmsTurnOffChargeAction>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_TURNONDISCHARGE>, BmsTurnOnDischargeAction>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_TURNOFFDISCHARGE>, BmsTurnOffDischargeAction>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<MainMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
|
||||
void BmsMenu::back()
|
||||
{
|
||||
switchSreen<MainMenu>();
|
||||
popSreen();
|
||||
}
|
||||
#endif
|
||||
|
@ -1,4 +1,4 @@
|
||||
#include "garagenmenu.h"
|
||||
#include "garagemenu.h"
|
||||
|
||||
// 3rd party libs
|
||||
#include <icons/back.h>
|
||||
@ -8,8 +8,7 @@
|
||||
#include <menuitem.h>
|
||||
|
||||
// local includes
|
||||
#include "actions/switchscreenaction.h"
|
||||
#include "displays/menus/mainmenu.h"
|
||||
#include "actions/popscreenaction.h"
|
||||
#include "espnowfunctions.h"
|
||||
#include "globals.h"
|
||||
#include "newsettings.h"
|
||||
@ -42,7 +41,7 @@ GarageMenu::GarageMenu()
|
||||
menuitem.setTitle(wirelessDoor.doorId.value);
|
||||
}
|
||||
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<MainMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
|
||||
std::string GarageMenu::text() const
|
||||
@ -52,7 +51,7 @@ std::string GarageMenu::text() const
|
||||
|
||||
void GarageMenu::back()
|
||||
{
|
||||
espgui::switchScreen<MainMenu>();
|
||||
espgui::popScreen();
|
||||
}
|
||||
|
||||
namespace {
|
@ -1,7 +1,8 @@
|
||||
#include "graphsmenu.h"
|
||||
|
||||
// 3rdparty lib includes
|
||||
#include "actions/switchscreenaction.h"
|
||||
#include "actions/pushscreenaction.h"
|
||||
#include "actions/popscreenaction.h"
|
||||
#include "icons/back.h"
|
||||
#include "graphdisplay.h"
|
||||
#include "splitgraphdisplay.h"
|
||||
@ -11,7 +12,6 @@
|
||||
#include "displays/bobbysplitgraphdisplay.h"
|
||||
#include "utils.h"
|
||||
#include "statistics.h"
|
||||
#include "displays/menus/mainmenu.h"
|
||||
|
||||
namespace {
|
||||
constexpr char TEXT_GRAPHS[] = "Graphs";
|
||||
@ -36,83 +36,83 @@ using GasGraphDisplay = espgui::makeComponent<
|
||||
BobbyGraphDisplay<1>,
|
||||
espgui::StaticText<TEXT_GAS>,
|
||||
espgui::SingleGraphAccessor<GasStatistics>,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<GraphsMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<GraphsMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
using BremsGraphDisplay = espgui::makeComponent<
|
||||
BobbyGraphDisplay<1>,
|
||||
espgui::StaticText<TEXT_BREMS>,
|
||||
espgui::SingleGraphAccessor<BremsStatistics>,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<GraphsMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<GraphsMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
using PotisGraphDisplay = espgui::makeComponent<
|
||||
BobbyGraphDisplay<2>,
|
||||
espgui::StaticText<TEXT_POTIS>,
|
||||
espgui::DualGraphAccessor<GasStatistics, BremsStatistics>,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<GraphsMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<GraphsMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
using PotisSplitGraphDisplay = espgui::makeComponent<
|
||||
BobbySplitGraphDisplay<1, 1>,
|
||||
espgui::StaticText<TEXT_POTIS>,
|
||||
espgui::SingleTopGraphAccessor<GasStatistics>,
|
||||
espgui::SingleBottomGraphAccessor<BremsStatistics>,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<GraphsMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<GraphsMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
|
||||
using AvgSpeedGraphDisplay = espgui::makeComponent<
|
||||
BobbyGraphDisplay<1>,
|
||||
espgui::StaticText<TEXT_AVGSPEED>,
|
||||
espgui::SingleGraphAccessor<AvgSpeedStatistics>,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<GraphsMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<GraphsMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
using AvgSpeedKmhGraphDisplay = espgui::makeComponent<
|
||||
BobbyGraphDisplay<1>,
|
||||
espgui::StaticText<TEXT_AVGSPEEDKMH>,
|
||||
espgui::SingleGraphAccessor<AvgSpeedKmhStatistics>,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<GraphsMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<GraphsMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
|
||||
using SumCurrentGraphDisplay = espgui::makeComponent<
|
||||
BobbyGraphDisplay<1>,
|
||||
espgui::StaticText<TEXT_SUMCURRENT>,
|
||||
espgui::SingleGraphAccessor<SumCurrentStatistics>,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<GraphsMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<GraphsMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
|
||||
using FrontVoltageGraphDisplay = espgui::makeComponent<
|
||||
BobbyGraphDisplay<1>,
|
||||
espgui::StaticText<TEXT_FRONTVOLTAGE>,
|
||||
espgui::SingleGraphAccessor<FrontVoltageStatistics>,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<GraphsMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<GraphsMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
using BackVoltageGraphDisplay = espgui::makeComponent<
|
||||
BobbyGraphDisplay<1>,
|
||||
espgui::StaticText<TEXT_BACKVOLTAGE>,
|
||||
espgui::SingleGraphAccessor<BackVoltageStatistics>,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<GraphsMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<GraphsMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
using VoltagesGraphDisplay = espgui::makeComponent<
|
||||
BobbyGraphDisplay<2>,
|
||||
espgui::StaticText<TEXT_VOLTAGES>,
|
||||
espgui::DualGraphAccessor<FrontVoltageStatistics, BackVoltageStatistics>,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<GraphsMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<GraphsMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
using VoltagesSplitGraphDisplay = espgui::makeComponent<
|
||||
BobbySplitGraphDisplay<1, 1>,
|
||||
espgui::StaticText<TEXT_VOLTAGES>,
|
||||
espgui::SingleTopGraphAccessor<FrontVoltageStatistics>,
|
||||
espgui::SingleBottomGraphAccessor<BackVoltageStatistics>,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<GraphsMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<GraphsMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
|
||||
#ifdef FEATURE_BMS
|
||||
@ -120,29 +120,29 @@ using BmsVoltageGraphDisplay = espgui::makeComponent<
|
||||
BobbyGraphDisplay<1>,
|
||||
espgui::StaticText<TEXT_BMSVOLTAGE>,
|
||||
espgui::SingleGraphAccessor<BmsVoltageStatistics>,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<GraphsMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<GraphsMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
using BmsCurrentGraphDisplay = espgui::makeComponent<
|
||||
BobbyGraphDisplay<1>,
|
||||
espgui::StaticText<TEXT_BMSCURRENT>,
|
||||
espgui::SingleGraphAccessor<BmsCurrentStatistics>,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<GraphsMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<GraphsMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
using BmsPowerGraphDisplay = espgui::makeComponent<
|
||||
BobbyGraphDisplay<1>,
|
||||
espgui::StaticText<TEXT_BMSPOWER>,
|
||||
espgui::SingleGraphAccessor<BmsPowerStatistics>,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<GraphsMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<GraphsMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
using SumCurrentsComparisonGraphDisplay = espgui::makeComponent<
|
||||
BobbyGraphDisplay<2>,
|
||||
espgui::StaticText<TEXT_SUMCURRENTSCOMPARISON>,
|
||||
DualGraphAccessor<SumCurrentStatistics, BmsCurrentStatistics>,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<GraphsMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<GraphsMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
#endif
|
||||
|
||||
@ -157,42 +157,42 @@ using MotorCurrentsGraphDisplay = espgui::makeComponent<
|
||||
BobbyGraphDisplay<4>,
|
||||
espgui::StaticText<TEXT_MOTORCURRENTS>,
|
||||
MotorCurrentsStatistics,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<GraphsMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<GraphsMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
|
||||
using RssiGraphDisplay = espgui::makeComponent<
|
||||
BobbyGraphDisplay<1>,
|
||||
espgui::StaticText<TEXT_RSSI>,
|
||||
espgui::SingleGraphAccessor<RssiStatistics>,
|
||||
espgui::ConfirmActionInterface<espgui::SwitchScreenAction<GraphsMenu>>,
|
||||
espgui::BackActionInterface<espgui::SwitchScreenAction<GraphsMenu>>
|
||||
espgui::ConfirmActionInterface<espgui::PopScreenAction>,
|
||||
espgui::BackActionInterface<espgui::PopScreenAction>
|
||||
>;
|
||||
} // namespace
|
||||
|
||||
GraphsMenu::GraphsMenu()
|
||||
{
|
||||
using namespace espgui;
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_GAS>, SwitchScreenAction<GasGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BREMS>, SwitchScreenAction<BremsGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_POTIS>, SwitchScreenAction<PotisGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_POTIS>, SwitchScreenAction<PotisSplitGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_AVGSPEED>, SwitchScreenAction<AvgSpeedGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_AVGSPEEDKMH>, SwitchScreenAction<AvgSpeedKmhGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SUMCURRENT>, SwitchScreenAction<SumCurrentGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_FRONTVOLTAGE>, SwitchScreenAction<FrontVoltageGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACKVOLTAGE>, SwitchScreenAction<BackVoltageGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_VOLTAGES>, SwitchScreenAction<VoltagesGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_VOLTAGES>, SwitchScreenAction<VoltagesSplitGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_GAS>, PushScreenAction<GasGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BREMS>, PushScreenAction<BremsGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_POTIS>, PushScreenAction<PotisGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_POTIS>, PushScreenAction<PotisSplitGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_AVGSPEED>, PushScreenAction<AvgSpeedGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_AVGSPEEDKMH>, PushScreenAction<AvgSpeedKmhGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SUMCURRENT>, PushScreenAction<SumCurrentGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_FRONTVOLTAGE>, PushScreenAction<FrontVoltageGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACKVOLTAGE>, PushScreenAction<BackVoltageGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_VOLTAGES>, PushScreenAction<VoltagesGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_VOLTAGES>, PushScreenAction<VoltagesSplitGraphDisplay>>>();
|
||||
#ifdef FEATURE_BMS
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BMSVOLTAGE>, SwitchScreenAction<BmsVoltageGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BMSCURRENT>, SwitchScreenAction<BmsCurrentGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BMSPOWER>, SwitchScreenAction<BmsPowerGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SUMCURRENTSCOMPARISON>, SwitchScreenAction<SumCurrentsComparisonGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BMSVOLTAGE>, PushScreenAction<BmsVoltageGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BMSCURRENT>, PushScreenAction<BmsCurrentGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BMSPOWER>, PushScreenAction<BmsPowerGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SUMCURRENTSCOMPARISON>, PushScreenAction<SumCurrentsComparisonGraphDisplay>>>();
|
||||
#endif
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_MOTORCURRENTS>, SwitchScreenAction<MotorCurrentsGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_RSSI>, SwitchScreenAction<RssiGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<MainMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_MOTORCURRENTS>, PushScreenAction<MotorCurrentsGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_RSSI>, PushScreenAction<RssiGraphDisplay>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
|
||||
std::string GraphsMenu::text() const
|
||||
@ -202,5 +202,5 @@ std::string GraphsMenu::text() const
|
||||
|
||||
void GraphsMenu::back()
|
||||
{
|
||||
espgui::switchScreen<MainMenu>();
|
||||
espgui::popScreen();
|
||||
}
|
||||
|
@ -6,13 +6,13 @@
|
||||
|
||||
// 3rdparty lib includes
|
||||
#include <fmt/core.h>
|
||||
#include "actions/switchscreenaction.h"
|
||||
#include "actions/pushscreenaction.h"
|
||||
#include "actions/popscreenaction.h"
|
||||
#include "actions/dummyaction.h"
|
||||
#include "icons/back.h"
|
||||
|
||||
// local includes
|
||||
#include "actions/qraction.h"
|
||||
#include "displays/menus/mainmenu.h"
|
||||
#include "displays/qrdisplay.h"
|
||||
#include "displays/qrimportdisplay.h"
|
||||
#include "qrimport.h"
|
||||
@ -49,11 +49,11 @@ public:
|
||||
if (deleteMode)
|
||||
{
|
||||
qrimport::delete_qr_code(m_qrmenu.text);
|
||||
espgui::switchScreen<GreenPassMenu>();
|
||||
espgui::popScreen();
|
||||
}
|
||||
else
|
||||
{
|
||||
espgui::switchScreen<QrDisplay<GreenPassMenu>>(m_qrmenu.message);
|
||||
espgui::pushScreen<QrDisplay<GreenPassMenu>>(m_qrmenu.message);
|
||||
}
|
||||
}
|
||||
private:
|
||||
@ -87,8 +87,9 @@ GreenPassMenu::GreenPassMenu()
|
||||
constructMenuItem<makeComponentArgs<MenuItem, SwitchQrImportDisplayAction<GreenPassMenu>, StaticText<TEXT_ADDCERT>>>(std::move(nvs_key));
|
||||
}
|
||||
}
|
||||
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_DELCERT>, BobbyCheckbox, DeleteModeAccessor>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<MainMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
|
||||
std::string GreenPassMenu::text() const
|
||||
@ -98,5 +99,5 @@ std::string GreenPassMenu::text() const
|
||||
|
||||
void GreenPassMenu::back()
|
||||
{
|
||||
espgui::switchScreen<MainMenu>();
|
||||
espgui::popScreen();
|
||||
}
|
||||
|
@ -22,7 +22,7 @@
|
||||
#include "displays/menus/demosmenu.h"
|
||||
#include "displays/menus/greenpassmenu.h"
|
||||
#include "displays/lockscreen.h"
|
||||
#include "displays/menus/garagenmenu.h"
|
||||
#include "displays/menus/garagemenu.h"
|
||||
#include "displays/menus/otamenu.h"
|
||||
#include "displays/poweroffdisplay.h"
|
||||
#include "displays/menus/statisticsmenu.h"
|
||||
|
@ -3,11 +3,10 @@
|
||||
#ifdef FEATURE_MOSFETS
|
||||
// 3rdparty lib includes
|
||||
#include "accessorinterface.h"
|
||||
#include "actions/switchscreenaction.h"
|
||||
#include "actions/popscreenaction.h"
|
||||
#include "icons/back.h"
|
||||
|
||||
// local includes
|
||||
#include "displays/menus/mainmenu.h"
|
||||
#include "bobbycheckbox.h"
|
||||
#include "types.h"
|
||||
|
||||
@ -37,7 +36,7 @@ MosfetsMenu::MosfetsMenu()
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_MOSFET0>, BobbyCheckbox, Mosfet0Accessor>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_MOSFET1>, BobbyCheckbox, Mosfet1Accessor>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_MOSFET2>, BobbyCheckbox, Mosfet2Accessor>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<MainMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
|
||||
std::string MosfetsMenu::text() const
|
||||
@ -47,7 +46,7 @@ std::string MosfetsMenu::text() const
|
||||
|
||||
void MosfetsMenu::back()
|
||||
{
|
||||
espgui::switchScreen<MainMenu>();
|
||||
espgui::popScreen();
|
||||
}
|
||||
|
||||
#endif
|
||||
|
@ -3,7 +3,8 @@
|
||||
// 3rdparty lib includes
|
||||
#include "actioninterface.h"
|
||||
#include "actions/dummyaction.h"
|
||||
#include "actions/switchscreenaction.h"
|
||||
#include "actions/pushscreenaction.h"
|
||||
#include "actions/popscreenaction.h"
|
||||
|
||||
// local includes
|
||||
#include "icons/back.h"
|
||||
@ -12,7 +13,6 @@
|
||||
#include "displays/menus/selectotabuildmenu.h"
|
||||
#include "displays/menus/selectbuildserverbranch.h"
|
||||
#include "displays/menus/selectbuildservermenu.h"
|
||||
#include "displays/menus/mainmenu.h"
|
||||
#include "displays/updatedisplay.h"
|
||||
|
||||
namespace {
|
||||
@ -27,11 +27,11 @@ constexpr char TEXT_BACK[] = "Back";
|
||||
OtaMenu::OtaMenu()
|
||||
{
|
||||
using namespace espgui;
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SELECTBUILD>, SwitchScreenAction<SelectBuildMenu>, StaticMenuItemIcon<&bobbyicons::presets>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SELECT_BRANCH>, SwitchScreenAction<SelectBuildserverBranchMenu>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_UPDATENOW>, SwitchScreenAction<UpdateDisplay>, StaticMenuItemIcon<&bobbyicons::update>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SELECTBUILDSERVERMENU>, SwitchScreenAction<SelectBuildServerMenu>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<MainMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SELECTBUILD>, PushScreenAction<SelectBuildMenu>, StaticMenuItemIcon<&bobbyicons::presets>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SELECT_BRANCH>, PushScreenAction<SelectBuildserverBranchMenu>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_UPDATENOW>, PushScreenAction<UpdateDisplay>, StaticMenuItemIcon<&bobbyicons::update>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SELECTBUILDSERVERMENU>, PushScreenAction<SelectBuildServerMenu>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
|
||||
std::string OtaMenu::text() const
|
||||
@ -41,5 +41,5 @@ std::string OtaMenu::text() const
|
||||
|
||||
void OtaMenu::back()
|
||||
{
|
||||
espgui::switchScreen<MainMenu>();
|
||||
espgui::popScreen();
|
||||
}
|
||||
|
71
main/displays/menus/selectbatterytypemenu.cpp
Normal file
71
main/displays/menus/selectbatterytypemenu.cpp
Normal file
@ -0,0 +1,71 @@
|
||||
#include "selectbatterytypemenu.h"
|
||||
|
||||
// 3rdparty lib includes
|
||||
#include <menuitem.h>
|
||||
#include <icons/back.h>
|
||||
#include <actions/popscreenaction.h>
|
||||
#include <actioninterface.h>
|
||||
#include <actions/dummyaction.h>
|
||||
|
||||
// local includes
|
||||
#include "battery.h"
|
||||
#include "newsettings.h"
|
||||
#include "utils.h"
|
||||
#include "displays/menus/batterymenu.h"
|
||||
#include "batterymenu.h"
|
||||
#include "displays/menus/mainmenu.h"
|
||||
|
||||
namespace {
|
||||
constexpr char TEXT_CELL_SERIES[] = "Cells (Series)";
|
||||
constexpr char TEXT_CELL_PARALLEL[] = "Cells (Parallel)";
|
||||
constexpr char TEXT_SELECT_CELL_TYPE[] = "Select Cell Type";
|
||||
constexpr char TEXT_CELL_TYPE[] = "Cell Type";
|
||||
constexpr char TEXT_BATTERY_CALIBRATE[] = "Calibrate Voltages";
|
||||
constexpr char TEXT_BATTERY_TYPE_22P[] = "22P cells";
|
||||
constexpr char TEXT_BATTERY_TYPE_HG2[] = "HG2 cells";
|
||||
constexpr char TEXT_BATTERY_TYPE_MH1[] = "MH1 cells";
|
||||
constexpr char TEXT_BATTERY_TYPE_VTC5[] = "VTC5 cells";
|
||||
constexpr char TEXT_BATTERY_TYPE_BAK_25R[] = "BAK / 25R cells";
|
||||
constexpr char TEXT_BATTERY_WHKM[] = "Wh per km";
|
||||
constexpr char TEXT_BATTERY_APPLYCALIB[] = "Apply calibration";
|
||||
constexpr char TEXT_VOLTAGECALIBRATION_RESET[] = "Reset calibration";
|
||||
constexpr char TEXT_BACK[] = "Back";
|
||||
|
||||
class CurrentBatteryTypeText : public virtual espgui::TextInterface
|
||||
{
|
||||
public:
|
||||
std::string text() const override
|
||||
{
|
||||
return getBatteryCellTypeString();
|
||||
}
|
||||
};
|
||||
|
||||
template<BatteryCellType T>
|
||||
class BatterySelectTypeAction : public virtual espgui::ActionInterface
|
||||
{
|
||||
public:
|
||||
void triggered() override { configs.write_config(configs.battery.cellType, uint8_t(T)); }
|
||||
};
|
||||
} // namespace
|
||||
|
||||
BatteryTypeMenu::BatteryTypeMenu()
|
||||
{
|
||||
using namespace espgui;
|
||||
constructMenuItem<makeComponent<MenuItem, CurrentBatteryTypeText, DisabledColor, DummyAction>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BATTERY_TYPE_22P>, BatterySelectTypeAction<BatteryCellType::_22P>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BATTERY_TYPE_HG2>, BatterySelectTypeAction<BatteryCellType::HG2>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BATTERY_TYPE_MH1>, BatterySelectTypeAction<BatteryCellType::MH1>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BATTERY_TYPE_VTC5>, BatterySelectTypeAction<BatteryCellType::VTC5>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BATTERY_TYPE_BAK_25R>, BatterySelectTypeAction<BatteryCellType::BAK_25R>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
|
||||
std::string BatteryTypeMenu::text() const
|
||||
{
|
||||
return TEXT_SELECT_CELL_TYPE;
|
||||
}
|
||||
|
||||
void BatteryTypeMenu::back()
|
||||
{
|
||||
espgui::popScreen();
|
||||
}
|
@ -2,6 +2,9 @@
|
||||
|
||||
// 3rd party includes
|
||||
#include <espwifistack.h>
|
||||
#include "actions/dummyaction.h"
|
||||
#include "actions/popscreenaction.h"
|
||||
#include "icons/back.h"
|
||||
|
||||
// local includes
|
||||
#include "actions/dummyaction.h"
|
||||
@ -10,6 +13,8 @@
|
||||
#include "buildserver.h"
|
||||
#include "displays/menus/otamenu.h"
|
||||
#include "icons/back.h"
|
||||
#include "buildserver.h"
|
||||
#include "globals.h"
|
||||
#include "icons/reboot.h"
|
||||
#include "newsettings.h"
|
||||
|
||||
@ -85,7 +90,7 @@ SelectBuildserverBranchMenu::SelectBuildserverBranchMenu()
|
||||
|
||||
#define ERR_MESSAGE(text) \
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<text>, DefaultFont, StaticColor<TFT_RED>, DummyAction>>(); \
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<OtaMenu>, StaticMenuItemIcon<&espgui::icons::back>>>(); \
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>(); \
|
||||
return;
|
||||
|
||||
if (count_available_buildserver() < 1)
|
||||
@ -144,12 +149,12 @@ void SelectBuildserverBranchMenu::update()
|
||||
|
||||
constructMenuItem<makeComponent<MenuItem, EmptyText, DummyAction>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SELECT_BRANCH_CLEAR>, ClearBranchAction, StaticMenuItemIcon<&bobbyicons::reboot>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<OtaMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
Base::update();
|
||||
}
|
||||
|
||||
void SelectBuildserverBranchMenu::back()
|
||||
{
|
||||
espgui::switchScreen<OtaMenu>();
|
||||
espgui::popScreen();
|
||||
}
|
||||
|
@ -4,14 +4,13 @@
|
||||
#include <esp_log.h>
|
||||
|
||||
// 3rdparty lib includes
|
||||
#include <actions/switchscreenaction.h>
|
||||
#include <actions/popscreenaction.h>
|
||||
#include <fmt/core.h>
|
||||
#include <icons/back.h>
|
||||
#include <actions/dummyaction.h>
|
||||
|
||||
// local includes
|
||||
#include "buildserver.h"
|
||||
#include "displays/menus/otamenu.h"
|
||||
#include "utils.h"
|
||||
#include "newsettings.h"
|
||||
|
||||
@ -69,7 +68,7 @@ SelectBuildServerMenu::SelectBuildServerMenu()
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_NOBUILDSERVERCONFIGURED>, DefaultFont, StaticColor<TFT_RED>, DummyAction>>();
|
||||
}
|
||||
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<OtaMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
|
||||
std::string SelectBuildServerMenu::text() const
|
||||
@ -79,5 +78,5 @@ std::string SelectBuildServerMenu::text() const
|
||||
|
||||
void SelectBuildServerMenu::back()
|
||||
{
|
||||
espgui::switchScreen<OtaMenu>();
|
||||
espgui::popScreen();
|
||||
}
|
||||
|
@ -4,6 +4,9 @@
|
||||
#include <TFT_eSPI.h>
|
||||
#include "esp_log.h"
|
||||
#include "fmt/core.h"
|
||||
#include "actions/popscreenaction.h"
|
||||
#include "actions/dummyaction.h"
|
||||
#include "icons/back.h"
|
||||
|
||||
// local includes
|
||||
#include "actions/dummyaction.h"
|
||||
@ -12,6 +15,9 @@
|
||||
#include "buildserver.h"
|
||||
#include "displays/menus/otamenu.h"
|
||||
#include "icons/back.h"
|
||||
#include "buildserver.h"
|
||||
#include "utils.h"
|
||||
#include "globals.h"
|
||||
#include "newsettings.h"
|
||||
|
||||
#define MESSAGE(text) constructMenuItem<makeComponent<MenuItem, StaticText<text>, DefaultFont, StaticColor<TFT_RED>, DummyAction>>()
|
||||
@ -58,12 +64,12 @@ SelectBuildMenu::SelectBuildMenu()
|
||||
if (buildserver::count_available_buildserver() < 1)
|
||||
{
|
||||
MESSAGE(TEXT_OTA_NOBUILDSERVERAVAILABLE);
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<OtaMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
else if (configs.otaServerUrl.value.empty())
|
||||
{
|
||||
MESSAGE(TEXT_OTA_NOBUILDSERVERSELECTED);
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<OtaMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -71,7 +77,7 @@ SelectBuildMenu::SelectBuildMenu()
|
||||
if (staStatus != wifi_stack::WiFiStaStatus::CONNECTED)
|
||||
{
|
||||
MESSAGE(TEXT_OTA_NOCONNECTION);
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<OtaMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -84,7 +90,7 @@ SelectBuildMenu::SelectBuildMenu()
|
||||
auto hash = filename.substr(0, filename.length() - 4);
|
||||
menuitem.setHash(hash);
|
||||
menuitem.setUrl(serverUrl);
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<OtaMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -135,10 +141,10 @@ void SelectBuildMenu::buildMenuFromJson()
|
||||
menuitem.setHash(hash);
|
||||
menuitem.setUrl(fmt::format(url_for_hashes, hash));
|
||||
}
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<OtaMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
|
||||
void SelectBuildMenu::back()
|
||||
{
|
||||
switchScreen<OtaMenu>();
|
||||
popScreen();
|
||||
}
|
||||
|
@ -4,7 +4,8 @@
|
||||
#include <Arduino.h>
|
||||
|
||||
// 3rdparty lib includes
|
||||
#include "actions/switchscreenaction.h"
|
||||
#include "actions/pushscreenaction.h"
|
||||
#include "actions/popscreenaction.h"
|
||||
#include "icons/back.h"
|
||||
|
||||
// local includes
|
||||
@ -81,39 +82,39 @@ SettingsMenu::SettingsMenu()
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACKLIGHT>, BobbyCheckbox, BacklightAccessor>>();
|
||||
#endif
|
||||
if (!simplified)
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_LIMITSSETTINGS>, SwitchScreenAction<LimitsSettingsMenu>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_LIMITSSETTINGS>, PushScreenAction<LimitsSettingsMenu>>>();
|
||||
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_NETWORKSETTINGS>, SwitchScreenAction<NetworkSettingsMenu>, StaticMenuItemIcon<&bobbyicons::wifi>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_NETWORKSETTINGS>, PushScreenAction<NetworkSettingsMenu>, StaticMenuItemIcon<&bobbyicons::wifi>>>();
|
||||
if (configs.feature.esp_now.isEnabled.value)
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_ESPNOW>, SwitchScreenAction<EspNowMenu>, StaticMenuItemIcon<&bobbyicons::wifi>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_ESPNOW>, PushScreenAction<EspNowMenu>, StaticMenuItemIcon<&bobbyicons::wifi>>>();
|
||||
#ifdef FEATURE_BLUETOOTH
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BLUETOOTHSETTINGS>, SwitchScreenAction<BluetoothSettingsMenu>, StaticMenuItemIcon<&bobbyicons::bluetooth>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BLUETOOTHSETTINGS>, PushScreenAction<BluetoothSettingsMenu>, StaticMenuItemIcon<&bobbyicons::bluetooth>>>();
|
||||
#endif
|
||||
if (configs.feature.ble.isEnabled.value)
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BLESETTINGS>, SwitchScreenAction<BleSettingsMenu>, StaticMenuItemIcon<&bobbyicons::bluetooth>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BLESETTINGS>, PushScreenAction<BleSettingsMenu>, StaticMenuItemIcon<&bobbyicons::bluetooth>>>();
|
||||
if (configs.feature.cloud.isEnabled.value)
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_CLOUDSETTINGS>, SwitchScreenAction<CloudSettingsMenu>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_CLOUDSETTINGS>, PushScreenAction<CloudSettingsMenu>>>();
|
||||
if (configs.feature.udpcloud.isEnabled.value)
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_UDPCLOUDSETTINGS>, SwitchScreenAction<UdpCloudSettingsMenu>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_UDPCLOUDSETTINGS>, PushScreenAction<UdpCloudSettingsMenu>>>();
|
||||
if (configs.feature.ota.isEnabled.value)
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SELECTBUILDSERVERMENU>, SwitchScreenAction<SelectBuildServerMenu>, StaticMenuItemIcon<&bobbyicons::update>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_TIME>, SwitchScreenAction<TimeSettingsMenu>, StaticMenuItemIcon<&bobbyicons::time>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_SELECTBUILDSERVERMENU>, PushScreenAction<SelectBuildServerMenu>, StaticMenuItemIcon<&bobbyicons::update>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_TIME>, PushScreenAction<TimeSettingsMenu>, StaticMenuItemIcon<&bobbyicons::time>>>();
|
||||
if (!simplified)
|
||||
{
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_MODESSETTINGS>, SwitchScreenAction<ModesSettingsMenu>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_CONTROLLERHARDWARESETTINGS>, SwitchScreenAction<ControllerHardwareSettingsMenu>, StaticMenuItemIcon<&bobbyicons::hardware>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BOARDCOMPUTERHARDWARESETTINGS>, SwitchScreenAction<BoardcomputerHardwareSettingsMenu>, StaticMenuItemIcon<&bobbyicons::hardware>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_MODESSETTINGS>, PushScreenAction<ModesSettingsMenu>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_CONTROLLERHARDWARESETTINGS>, PushScreenAction<ControllerHardwareSettingsMenu>, StaticMenuItemIcon<&bobbyicons::hardware>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BOARDCOMPUTERHARDWARESETTINGS>, PushScreenAction<BoardcomputerHardwareSettingsMenu>, StaticMenuItemIcon<&bobbyicons::hardware>>>();
|
||||
}
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_FEATUREFLAGS>, SwitchScreenAction<FeatureFlagsMenu>, StaticMenuItemIcon<&bobbyicons::demos>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_FEATUREFLAGS>, PushScreenAction<FeatureFlagsMenu>, StaticMenuItemIcon<&bobbyicons::demos>>>();
|
||||
//#if defined(FEATURE_BLUETOOTH) && defined(FEATURE_BMS)
|
||||
// constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_AUTOCONNECTBMS>, BobbyCheckbox, AutoConnectBmsAccessor>>();
|
||||
//#endif
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BUZZER>, SwitchScreenAction<BuzzerMenu>, StaticMenuItemIcon<&bobbyicons::buzzer>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BUZZER>, PushScreenAction<BuzzerMenu>, StaticMenuItemIcon<&bobbyicons::buzzer>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_FRONTLED>, BobbyCheckbox, FrontLedAccessor>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACKLED>, BobbyCheckbox, BackLedAccessor>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_CRASHMENU>, SwitchScreenAction<CrashMenu>, StaticMenuItemIcon<&bobbyicons::demos>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_ABOUT>, SwitchScreenAction<AboutMenu>, StaticMenuItemIcon<&bobbyicons::info>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<MainMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_CRASHMENU>, PushScreenAction<CrashMenu>, StaticMenuItemIcon<&bobbyicons::demos>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_ABOUT>, PushScreenAction<AboutMenu>, StaticMenuItemIcon<&bobbyicons::info>>>();
|
||||
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, PopScreenAction, StaticMenuItemIcon<&espgui::icons::back>>>();
|
||||
}
|
||||
|
||||
std::string SettingsMenu::text() const
|
||||
@ -123,5 +124,5 @@ std::string SettingsMenu::text() const
|
||||
|
||||
void SettingsMenu::back()
|
||||
{
|
||||
switchScreen<MainMenu>();
|
||||
popScreen();
|
||||
}
|
||||
|
@ -3,11 +3,9 @@
|
||||
// 3rdparty lib includes
|
||||
#include <tftinstance.h>
|
||||
#include <screenmanager.h>
|
||||
#include "actions/switchscreenaction.h"
|
||||
|
||||
// local includes
|
||||
#include "globals.h"
|
||||
#include "displays/menus/mainmenu.h"
|
||||
|
||||
#if defined(FEATURE_CAN) && defined(FEATURE_POWERSUPPLY)
|
||||
void PowerSupplyDisplay::initScreen()
|
||||
@ -42,7 +40,7 @@ void PowerSupplyDisplay::buttonPressed(espgui::Button button)
|
||||
using espgui::Button;
|
||||
case Button::Left:
|
||||
case Button::Right:
|
||||
espgui::switchScreen<MainMenu>();
|
||||
espgui::popScreen();
|
||||
break;
|
||||
default:;
|
||||
}
|
||||
|
@ -16,7 +16,6 @@
|
||||
// local includes
|
||||
#include "globals.h"
|
||||
#include "ota.h"
|
||||
#include "displays/menus/otamenu.h"
|
||||
#include "newsettings.h"
|
||||
|
||||
void UpdateDisplay::initScreen()
|
||||
@ -106,7 +105,7 @@ void UpdateDisplay::buttonPressed(espgui::Button button)
|
||||
{
|
||||
using espgui::Button;
|
||||
case Button::Left:
|
||||
espgui::switchScreen<OtaMenu>();
|
||||
espgui::popScreen();
|
||||
break;
|
||||
case Button::Right:
|
||||
if (const auto result = triggerOta(configs.otaUrl.value); !result)
|
||||
|
Reference in New Issue
Block a user