ESPHome
2026.5.0b1
Loading...
Searching...
No Matches
esphome
components
display_menu_base
automation.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
esphome/core/automation.h
"
4
#include "
display_menu_base.h
"
5
6
namespace
esphome::display_menu_base
{
7
8
template
<
typename
... Ts>
class
UpAction
:
public
Action
<Ts...> {
9
public
:
10
explicit
UpAction
(
DisplayMenuComponent
*menu) :
menu_
(menu) {}
11
12
void
play
(
const
Ts &...
x
)
override
{ this->
menu_
->
up
(); }
13
14
protected
:
15
DisplayMenuComponent
*
menu_
;
16
};
17
18
template
<
typename
... Ts>
class
DownAction
:
public
Action
<Ts...> {
19
public
:
20
explicit
DownAction
(
DisplayMenuComponent
*menu) :
menu_
(menu) {}
21
22
void
play
(
const
Ts &...
x
)
override
{ this->
menu_
->
down
(); }
23
24
protected
:
25
DisplayMenuComponent
*
menu_
;
26
};
27
28
template
<
typename
... Ts>
class
LeftAction
:
public
Action
<Ts...> {
29
public
:
30
explicit
LeftAction
(
DisplayMenuComponent
*menu) :
menu_
(menu) {}
31
32
void
play
(
const
Ts &...
x
)
override
{ this->
menu_
->
left
(); }
33
34
protected
:
35
DisplayMenuComponent
*
menu_
;
36
};
37
38
template
<
typename
... Ts>
class
RightAction
:
public
Action
<Ts...> {
39
public
:
40
explicit
RightAction
(
DisplayMenuComponent
*menu) :
menu_
(menu) {}
41
42
void
play
(
const
Ts &...
x
)
override
{ this->
menu_
->
right
(); }
43
44
protected
:
45
DisplayMenuComponent
*
menu_
;
46
};
47
48
template
<
typename
... Ts>
class
EnterAction
:
public
Action
<Ts...> {
49
public
:
50
explicit
EnterAction
(
DisplayMenuComponent
*menu) :
menu_
(menu) {}
51
52
void
play
(
const
Ts &...
x
)
override
{ this->
menu_
->
enter
(); }
53
54
protected
:
55
DisplayMenuComponent
*
menu_
;
56
};
57
58
template
<
typename
... Ts>
class
ShowAction
:
public
Action
<Ts...> {
59
public
:
60
explicit
ShowAction
(
DisplayMenuComponent
*menu) :
menu_
(menu) {}
61
62
void
play
(
const
Ts &...
x
)
override
{ this->
menu_
->
show
(); }
63
64
protected
:
65
DisplayMenuComponent
*
menu_
;
66
};
67
68
template
<
typename
... Ts>
class
HideAction
:
public
Action
<Ts...> {
69
public
:
70
explicit
HideAction
(
DisplayMenuComponent
*menu) :
menu_
(menu) {}
71
72
void
play
(
const
Ts &...
x
)
override
{ this->
menu_
->
hide
(); }
73
74
protected
:
75
DisplayMenuComponent
*
menu_
;
76
};
77
78
template
<
typename
... Ts>
class
ShowMainAction
:
public
Action
<Ts...> {
79
public
:
80
explicit
ShowMainAction
(
DisplayMenuComponent
*menu) :
menu_
(menu) {}
81
82
void
play
(
const
Ts &...
x
)
override
{ this->
menu_
->
show_main
(); }
83
84
protected
:
85
DisplayMenuComponent
*
menu_
;
86
};
87
template
<
typename
... Ts>
class
IsActiveCondition
:
public
Condition
<Ts...> {
88
public
:
89
explicit
IsActiveCondition
(
DisplayMenuComponent
*menu) :
menu_
(menu) {}
90
bool
check
(
const
Ts &...
x
)
override
{
return
this->
menu_
->
is_active
(); }
91
92
protected
:
93
DisplayMenuComponent
*
menu_
;
94
};
95
96
class
DisplayMenuOnEnterTrigger
:
public
Trigger
<const MenuItem *> {
97
public
:
98
explicit
DisplayMenuOnEnterTrigger
(
MenuItem
*parent) :
parent_
(parent) {
99
parent->
add_on_enter_callback
([
this
]() { this->
trigger
(this->
parent_
); });
100
}
101
102
protected
:
103
MenuItem
*
parent_
;
104
};
105
106
class
DisplayMenuOnLeaveTrigger
:
public
Trigger
<const MenuItem *> {
107
public
:
108
explicit
DisplayMenuOnLeaveTrigger
(
MenuItem
*parent) :
parent_
(parent) {
109
parent->
add_on_leave_callback
([
this
]() { this->
trigger
(this->
parent_
); });
110
}
111
112
protected
:
113
MenuItem
*
parent_
;
114
};
115
116
class
DisplayMenuOnValueTrigger
:
public
Trigger
<const MenuItem *> {
117
public
:
118
explicit
DisplayMenuOnValueTrigger
(
MenuItem
*parent) :
parent_
(parent) {
119
parent->
add_on_value_callback
([
this
]() { this->
trigger
(this->
parent_
); });
120
}
121
122
protected
:
123
MenuItem
*
parent_
;
124
};
125
126
class
DisplayMenuOnNextTrigger
:
public
Trigger
<const MenuItem *> {
127
public
:
128
explicit
DisplayMenuOnNextTrigger
(
MenuItemCustom
*parent) :
parent_
(parent) {
129
parent->
add_on_next_callback
([
this
]() { this->
trigger
(this->
parent_
); });
130
}
131
132
protected
:
133
MenuItemCustom
*
parent_
;
134
};
135
136
class
DisplayMenuOnPrevTrigger
:
public
Trigger
<const MenuItem *> {
137
public
:
138
explicit
DisplayMenuOnPrevTrigger
(
MenuItemCustom
*parent) :
parent_
(parent) {
139
parent->
add_on_prev_callback
([
this
]() { this->
trigger
(this->
parent_
); });
140
}
141
142
protected
:
143
MenuItemCustom
*
parent_
;
144
};
145
146
}
// namespace esphome::display_menu_base
esphome::Action
Definition
automation.h:508
esphome::Condition
Base class for all automation conditions.
Definition
automation.h:459
esphome::Trigger
Definition
automation.h:477
esphome::Trigger< const MenuItem * >::trigger
void trigger(const Ts &...x) ESPHOME_ALWAYS_INLINE
Definition
automation.h:482
esphome::display_menu_base::DisplayMenuComponent
Class to display a hierarchical menu.
Definition
display_menu_base.h:21
esphome::display_menu_base::DisplayMenuComponent::show_main
void show_main()
Definition
display_menu_base.cpp:168
esphome::display_menu_base::DisplayMenuComponent::enter
void enter()
Definition
display_menu_base.cpp:115
esphome::display_menu_base::DisplayMenuComponent::left
void left()
Definition
display_menu_base.cpp:48
esphome::display_menu_base::DisplayMenuComponent::show
void show()
Definition
display_menu_base.cpp:198
esphome::display_menu_base::DisplayMenuComponent::is_active
bool is_active() const
Definition
display_menu_base.h:42
esphome::display_menu_base::DisplayMenuComponent::right
void right()
Definition
display_menu_base.cpp:86
esphome::display_menu_base::DisplayMenuComponent::up
void up()
Definition
display_menu_base.cpp:6
esphome::display_menu_base::DisplayMenuComponent::down
void down()
Definition
display_menu_base.cpp:27
esphome::display_menu_base::DisplayMenuComponent::hide
void hide()
Definition
display_menu_base.cpp:214
esphome::display_menu_base::DisplayMenuOnEnterTrigger
Definition
automation.h:96
esphome::display_menu_base::DisplayMenuOnEnterTrigger::parent_
MenuItem * parent_
Definition
automation.h:103
esphome::display_menu_base::DisplayMenuOnEnterTrigger::DisplayMenuOnEnterTrigger
DisplayMenuOnEnterTrigger(MenuItem *parent)
Definition
automation.h:98
esphome::display_menu_base::DisplayMenuOnLeaveTrigger
Definition
automation.h:106
esphome::display_menu_base::DisplayMenuOnLeaveTrigger::DisplayMenuOnLeaveTrigger
DisplayMenuOnLeaveTrigger(MenuItem *parent)
Definition
automation.h:108
esphome::display_menu_base::DisplayMenuOnLeaveTrigger::parent_
MenuItem * parent_
Definition
automation.h:113
esphome::display_menu_base::DisplayMenuOnNextTrigger
Definition
automation.h:126
esphome::display_menu_base::DisplayMenuOnNextTrigger::DisplayMenuOnNextTrigger
DisplayMenuOnNextTrigger(MenuItemCustom *parent)
Definition
automation.h:128
esphome::display_menu_base::DisplayMenuOnNextTrigger::parent_
MenuItemCustom * parent_
Definition
automation.h:133
esphome::display_menu_base::DisplayMenuOnPrevTrigger
Definition
automation.h:136
esphome::display_menu_base::DisplayMenuOnPrevTrigger::parent_
MenuItemCustom * parent_
Definition
automation.h:143
esphome::display_menu_base::DisplayMenuOnPrevTrigger::DisplayMenuOnPrevTrigger
DisplayMenuOnPrevTrigger(MenuItemCustom *parent)
Definition
automation.h:138
esphome::display_menu_base::DisplayMenuOnValueTrigger
Definition
automation.h:116
esphome::display_menu_base::DisplayMenuOnValueTrigger::parent_
MenuItem * parent_
Definition
automation.h:123
esphome::display_menu_base::DisplayMenuOnValueTrigger::DisplayMenuOnValueTrigger
DisplayMenuOnValueTrigger(MenuItem *parent)
Definition
automation.h:118
esphome::display_menu_base::DownAction
Definition
automation.h:18
esphome::display_menu_base::DownAction::play
void play(const Ts &...x) override
Definition
automation.h:22
esphome::display_menu_base::DownAction::DownAction
DownAction(DisplayMenuComponent *menu)
Definition
automation.h:20
esphome::display_menu_base::DownAction::menu_
DisplayMenuComponent * menu_
Definition
automation.h:25
esphome::display_menu_base::EnterAction
Definition
automation.h:48
esphome::display_menu_base::EnterAction::EnterAction
EnterAction(DisplayMenuComponent *menu)
Definition
automation.h:50
esphome::display_menu_base::EnterAction::menu_
DisplayMenuComponent * menu_
Definition
automation.h:55
esphome::display_menu_base::EnterAction::play
void play(const Ts &...x) override
Definition
automation.h:52
esphome::display_menu_base::HideAction
Definition
automation.h:68
esphome::display_menu_base::HideAction::HideAction
HideAction(DisplayMenuComponent *menu)
Definition
automation.h:70
esphome::display_menu_base::HideAction::menu_
DisplayMenuComponent * menu_
Definition
automation.h:75
esphome::display_menu_base::HideAction::play
void play(const Ts &...x) override
Definition
automation.h:72
esphome::display_menu_base::IsActiveCondition
Definition
automation.h:87
esphome::display_menu_base::IsActiveCondition::check
bool check(const Ts &...x) override
Definition
automation.h:90
esphome::display_menu_base::IsActiveCondition::menu_
DisplayMenuComponent * menu_
Definition
automation.h:93
esphome::display_menu_base::IsActiveCondition::IsActiveCondition
IsActiveCondition(DisplayMenuComponent *menu)
Definition
automation.h:89
esphome::display_menu_base::LeftAction
Definition
automation.h:28
esphome::display_menu_base::LeftAction::play
void play(const Ts &...x) override
Definition
automation.h:32
esphome::display_menu_base::LeftAction::LeftAction
LeftAction(DisplayMenuComponent *menu)
Definition
automation.h:30
esphome::display_menu_base::LeftAction::menu_
DisplayMenuComponent * menu_
Definition
automation.h:35
esphome::display_menu_base::MenuItemCustom
Definition
menu_item.h:169
esphome::display_menu_base::MenuItemCustom::add_on_prev_callback
void add_on_prev_callback(F &&cb)
Definition
menu_item.h:173
esphome::display_menu_base::MenuItemCustom::add_on_next_callback
void add_on_next_callback(F &&cb)
Definition
menu_item.h:172
esphome::display_menu_base::MenuItem
Definition
menu_item.h:39
esphome::display_menu_base::MenuItem::add_on_value_callback
void add_on_value_callback(F &&cb)
Definition
menu_item.h:48
esphome::display_menu_base::MenuItem::add_on_leave_callback
void add_on_leave_callback(F &&cb)
Definition
menu_item.h:47
esphome::display_menu_base::MenuItem::add_on_enter_callback
void add_on_enter_callback(F &&cb)
Definition
menu_item.h:46
esphome::display_menu_base::RightAction
Definition
automation.h:38
esphome::display_menu_base::RightAction::menu_
DisplayMenuComponent * menu_
Definition
automation.h:45
esphome::display_menu_base::RightAction::play
void play(const Ts &...x) override
Definition
automation.h:42
esphome::display_menu_base::RightAction::RightAction
RightAction(DisplayMenuComponent *menu)
Definition
automation.h:40
esphome::display_menu_base::ShowAction
Definition
automation.h:58
esphome::display_menu_base::ShowAction::ShowAction
ShowAction(DisplayMenuComponent *menu)
Definition
automation.h:60
esphome::display_menu_base::ShowAction::menu_
DisplayMenuComponent * menu_
Definition
automation.h:65
esphome::display_menu_base::ShowAction::play
void play(const Ts &...x) override
Definition
automation.h:62
esphome::display_menu_base::ShowMainAction
Definition
automation.h:78
esphome::display_menu_base::ShowMainAction::menu_
DisplayMenuComponent * menu_
Definition
automation.h:85
esphome::display_menu_base::ShowMainAction::play
void play(const Ts &...x) override
Definition
automation.h:82
esphome::display_menu_base::ShowMainAction::ShowMainAction
ShowMainAction(DisplayMenuComponent *menu)
Definition
automation.h:80
esphome::display_menu_base::UpAction
Definition
automation.h:8
esphome::display_menu_base::UpAction::menu_
DisplayMenuComponent * menu_
Definition
automation.h:15
esphome::display_menu_base::UpAction::play
void play(const Ts &...x) override
Definition
automation.h:12
esphome::display_menu_base::UpAction::UpAction
UpAction(DisplayMenuComponent *menu)
Definition
automation.h:10
automation.h
display_menu_base.h
esphome::display_menu_base
Definition
automation.h:6
x
uint16_t x
Definition
tt21100.cpp:5
Generated by
1.12.0