Basic Menu for managing profiles

This commit is contained in:
CommanderRedYT
2022-01-27 18:02:25 +01:00
parent bc8cc945e3
commit cfa278a4b1
4 changed files with 50 additions and 0 deletions

View File

@ -111,6 +111,7 @@ set(headers
displays/menus/limitssettingsmenu.h
displays/menus/lockscreensettingsmenu.h
displays/menus/mainmenu.h
displays/menus/manageprofilesmenu.h
displays/menus/modessettingsmenu.h
displays/menus/mosfetsmenu.h
displays/menus/motorfeedbackdebugmenu.h
@ -341,6 +342,7 @@ set(sources
displays/menus/limitssettingsmenu.cpp
displays/menus/lockscreensettingsmenu.cpp
displays/menus/mainmenu.cpp
displays/menus/manageprofilesmenu.cpp
displays/menus/modessettingsmenu.cpp
displays/menus/mosfetsmenu.cpp
displays/menus/motorfeedbackdebugmenu.cpp

View File

@ -16,6 +16,7 @@
#include "displays/powersupplydisplay.h"
#include "displays/menus/bmsmenu.h"
#include "displays/menus/settingsmenu.h"
#include "displays/menus/manageprofilesmenu.h"
#include "displays/menus/mosfetsmenu.h"
#include "displays/menus/demosmenu.h"
#include "displays/menus/greenpassmenu.h"
@ -78,6 +79,7 @@ constexpr char TEXT_DEBUG[] = "Debug";
constexpr char TEXT_BATTERY[] = "Battery";
constexpr char TEXT_BATTERYDEBUG[] = "Bat Debug Menu";
constexpr char TEXT_TOGGLECLOUDDEBUG[] = "Cloud Debug";
constexpr char TEXT_MANAGEPROFILESMENU[] = "Manage Profile Settings";
} // namespace
@ -115,6 +117,7 @@ MainMenu::MainMenu()
#endif
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_DEMOS>, SwitchScreenAction<DemosMenu>, StaticMenuItemIcon<&bobbyicons::demos>>>();
if (SHOWITEM) { constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_PROFILES>, SwitchScreenAction<ProfilesMenu>>>(); }
if (SHOWITEM) { constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_MANAGEPROFILESMENU>,SwitchScreenAction<ManageProfilesMenu>>>(); }
if (SHOWITEM) { constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_DEBUG>, SwitchScreenAction<DebugMenu>>>(); }
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_POWEROFF>, SwitchScreenAction<PoweroffDisplay>, StaticMenuItemIcon<&bobbyicons::poweroff>>>();
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_REBOOT>, RebootAction, StaticMenuItemIcon<&bobbyicons::reboot>>>();

View File

@ -0,0 +1,31 @@
#include "manageprofilesmenu.h"
// 3rdparty lib includes
#include <icons/back.h>
// local includes
#include "actions/switchscreenaction.h"
#include "mainmenu.h"
namespace {
constexpr char TEXT_MANAGEPROFILESMENU[] = "Manage Profiles Menu";
constexpr char TEXT_BACK[] = "Back";
}
using namespace espgui;
ManageProfilesMenu::ManageProfilesMenu()
{
constructMenuItem<makeComponent<MenuItem, StaticText<TEXT_BACK>, SwitchScreenAction<MainMenu>, StaticMenuItemIcon<&espgui::icons::back>>>();
}
void ManageProfilesMenu::back()
{
switchScreen<MainMenu>();
}
std::string ManageProfilesMenu::text() const
{
return TEXT_MANAGEPROFILESMENU;
}
// functions: clear profile, copy profile, move profile

View File

@ -0,0 +1,14 @@
#pragma once
// local includes
#include <displays/bobbymenudisplay.h>
class ManageProfilesMenu : public BobbyMenuDisplay
{
public:
ManageProfilesMenu();
std::string text() const override;
void back() override;
};