dynamic menu

- also component renaming

Signed-off-by: Peter Siegmund <developer@mars3142.org>
This commit is contained in:
2026-03-28 16:57:15 +01:00
parent cb5bcb070c
commit 32ea23906f
61 changed files with 2815 additions and 1885 deletions
@@ -1,11 +1,11 @@
#include "heimdall/action_manager.h"
#include <esp_log.h>
#include <string>
#include <unordered_map>
static const char *TAG = "ActionMgr";
// Hier speichern wir alle registrierten C-Funktionszeiger
static std::unordered_map<std::string, action_callback_t> s_actions;
extern "C" void action_manager_register(const char *action_name, action_callback_t callback)
@@ -13,7 +13,7 @@ extern "C" void action_manager_register(const char *action_name, action_callback
if (action_name && callback)
{
s_actions[action_name] = callback;
ESP_LOGD(TAG, "Aktion registriert: %s", action_name);
ESP_LOGD(TAG, "Action registered: %s", action_name);
}
}
@@ -25,12 +25,11 @@ extern "C" void action_manager_execute(const char *action_name, const char *valu
auto it = s_actions.find(action_name);
if (it != s_actions.end())
{
ESP_LOGI(TAG, "Führe Aktion aus: %s (Wert: %s)", action_name, value ? value : "NULL");
// Ruft den hinterlegten C-Funktionszeiger auf
ESP_LOGI(TAG, "Executing action: %s (value: %s)", action_name, value ? value : "NULL");
it->second(value ? value : "");
}
else
{
ESP_LOGW(TAG, "Aktion nicht gefunden: %s", action_name);
ESP_LOGW(TAG, "Action not found: %s", action_name);
}
}