ESPHome 2026.10.2
Loading...
Searching...
No Matches
automation.h
Go to the documentation of this file.
1#pragma once
2
4#include "display_menu_base.h"
5
7
8class DisplayMenuOnEnterTrigger final : public Trigger<const MenuItem *> {
9 public:
10 explicit DisplayMenuOnEnterTrigger(MenuItem *parent) : parent_(parent) {
11 parent->add_on_enter_callback([this]() { this->trigger(this->parent_); });
12 }
13
14 protected:
16};
17
18class DisplayMenuOnLeaveTrigger final : public Trigger<const MenuItem *> {
19 public:
20 explicit DisplayMenuOnLeaveTrigger(MenuItem *parent) : parent_(parent) {
21 parent->add_on_leave_callback([this]() { this->trigger(this->parent_); });
22 }
23
24 protected:
26};
27
28class DisplayMenuOnValueTrigger final : public Trigger<const MenuItem *> {
29 public:
30 explicit DisplayMenuOnValueTrigger(MenuItem *parent) : parent_(parent) {
31 parent->add_on_value_callback([this]() { this->trigger(this->parent_); });
32 }
33
34 protected:
36};
37
38class DisplayMenuOnNextTrigger final : public Trigger<const MenuItem *> {
39 public:
40 explicit DisplayMenuOnNextTrigger(MenuItemCustom *parent) : parent_(parent) {
41 parent->add_on_next_callback([this]() { this->trigger(this->parent_); });
42 }
43
44 protected:
46};
47
48class DisplayMenuOnPrevTrigger final : public Trigger<const MenuItem *> {
49 public:
50 explicit DisplayMenuOnPrevTrigger(MenuItemCustom *parent) : parent_(parent) {
51 parent->add_on_prev_callback([this]() { this->trigger(this->parent_); });
52 }
53
54 protected:
56};
57
58} // namespace esphome::display_menu_base
void trigger(const Ts &...x) ESPHOME_ALWAYS_INLINE
Definition automation.h:528