diff --git a/main/displays/menus/wifiapclientsmenu.cpp b/main/displays/menus/wifiapclientsmenu.cpp index 500231f..f10bd40 100644 --- a/main/displays/menus/wifiapclientsmenu.cpp +++ b/main/displays/menus/wifiapclientsmenu.cpp @@ -23,7 +23,7 @@ using namespace std::string_literals; using namespace espgui; namespace { -constexpr const char * const TAG = "GOE"; +constexpr const char * const TAG = "BOBBY"; constexpr char TEXT_BACK[] = "Back"; diff --git a/main/displays/menus/wifiapsettingsmenu.cpp b/main/displays/menus/wifiapsettingsmenu.cpp index fb49f8d..f68cc13 100644 --- a/main/displays/menus/wifiapsettingsmenu.cpp +++ b/main/displays/menus/wifiapsettingsmenu.cpp @@ -22,7 +22,7 @@ using namespace espgui; namespace { -constexpr const char * const TAG = "GOE"; +constexpr const char * const TAG = "BOBBY"; constexpr char TEXT_ENABLED[] = "Enabled"; constexpr char TEXT_DISABLEWHENONLINE[] = "Disable when online"; diff --git a/main/displays/menus/wifistaconfigentrymenu.cpp b/main/displays/menus/wifistaconfigentrymenu.cpp index 1135d9a..2c821c2 100644 --- a/main/displays/menus/wifistaconfigentrymenu.cpp +++ b/main/displays/menus/wifistaconfigentrymenu.cpp @@ -13,13 +13,26 @@ #include "texthelpers/wifistaconfigtexthelpers.h" #include "accessors/wifistaconfigaccessors.h" #include "wifistaconfigsmenu.h" +#include "newsettings.h" using namespace espgui; namespace { constexpr char TEXT_USESTATICIP[] = "Use Static Ip"; constexpr char TEXT_USESTATICDNS[] = "Use Static Dns"; +constexpr char TEXT_DELETECONFIG[] = "Delete config"; constexpr char TEXT_BACK[] = "Back"; + +class ClearConfigAction : public virtual espgui::ActionInterface +{ +public: + explicit ClearConfigAction(int index) : m_index{index} {} + + void triggered() override; + +private: + const int m_index; +}; } // namespace WifiStaConfigEntryMenu::WifiStaConfigEntryMenu(int index) : @@ -35,6 +48,7 @@ WifiStaConfigEntryMenu::WifiStaConfigEntryMenu(int index) : constructMenuItem>(index); constructMenuItem>(index); constructMenuItem>(index); + constructMenuItem>>(index); constructMenuItem, SwitchScreenAction, StaticMenuItemIcon<&icons::back>>>(); } @@ -47,3 +61,20 @@ void WifiStaConfigEntryMenu::back() { switchScreen(); } + +namespace { +void ClearConfigAction::triggered() +{ + auto &config = configs.wifi_configs[m_index]; + configs.reset_config(config.ssid); + configs.reset_config(config.key); + configs.reset_config(config.useStaticIp); + configs.reset_config(config.staticIp); + configs.reset_config(config.staticSubnet); + configs.reset_config(config.staticGateway); + configs.reset_config(config.useStaticDns); + configs.reset_config(config.staticDns0); + configs.reset_config(config.staticDns1); + configs.reset_config(config.staticDns2); +} +} // namespace