ESPHome
2024.11.0
esphome
esphome
components
touchscreen
binary_sensor
touchscreen_binary_sensor.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
esphome/components/binary_sensor/binary_sensor.h
"
4
#include "
esphome/components/display/display_buffer.h
"
5
#include "
esphome/components/touchscreen/touchscreen.h
"
6
#include "
esphome/core/component.h
"
7
#include "
esphome/core/helpers.h
"
8
9
#include <vector>
10
11
namespace
esphome
{
12
namespace
touchscreen {
13
14
class
TouchscreenBinarySensor
:
public
binary_sensor::BinarySensor
,
15
public
Component
,
16
public
TouchListener
,
17
public
Parented
<Touchscreen> {
18
public
:
19
void
setup
()
override
;
20
22
void
set_area
(int16_t x_min, int16_t x_max, int16_t y_min, int16_t y_max) {
23
this->
x_min_
= x_min;
24
this->
x_max_
= x_max;
25
this->
y_min_
= y_min;
26
this->
y_max_
= y_max;
27
}
28
int16_t
get_x_min
() {
return
this->
x_min_
; }
29
int16_t
get_x_max
() {
return
this->
x_max_
; }
30
int16_t
get_y_min
() {
return
this->
y_min_
; }
31
int16_t
get_y_max
() {
return
this->
y_max_
; }
32
int16_t
get_width
() {
return
this->
x_max_
- this->
x_min_
; }
33
int16_t
get_height
() {
return
this->
y_max_
- this->
y_min_
; }
34
35
void
add_page
(
display::DisplayPage
*page) { this->
pages_
.push_back(page); }
36
37
void
touch
(
TouchPoint
tp)
override
;
38
void
release
()
override
;
39
40
protected
:
41
int16_t
x_min_
,
x_max_
,
y_min_
,
y_max_
;
42
std::vector<display::DisplayPage *>
pages_
{};
43
};
44
45
}
// namespace touchscreen
46
}
// namespace esphome
esphome::touchscreen::TouchListener
Definition:
touchscreen.h:38
esphome::touchscreen::TouchscreenBinarySensor::y_min_
int16_t y_min_
Definition:
touchscreen_binary_sensor.h:41
esphome::touchscreen::TouchscreenBinarySensor::setup
void setup() override
Definition:
touchscreen_binary_sensor.cpp:6
display_buffer.h
esphome::touchscreen::TouchscreenBinarySensor::get_y_min
int16_t get_y_min()
Definition:
touchscreen_binary_sensor.h:30
touchscreen.h
esphome::Component
Definition:
component.h:68
esphome::touchscreen::TouchscreenBinarySensor::add_page
void add_page(display::DisplayPage *page)
Definition:
touchscreen_binary_sensor.h:35
esphome::touchscreen::TouchscreenBinarySensor::x_max_
int16_t x_max_
Definition:
touchscreen_binary_sensor.h:41
esphome::touchscreen::TouchscreenBinarySensor::get_width
int16_t get_width()
Definition:
touchscreen_binary_sensor.h:32
esphome::touchscreen::TouchscreenBinarySensor::get_x_min
int16_t get_x_min()
Definition:
touchscreen_binary_sensor.h:28
binary_sensor.h
esphome::touchscreen::TouchscreenBinarySensor::y_max_
int16_t y_max_
Definition:
touchscreen_binary_sensor.h:41
esphome::touchscreen::TouchscreenBinarySensor::set_area
void set_area(int16_t x_min, int16_t x_max, int16_t y_min, int16_t y_max)
Set the touch screen area where the button will detect the touch.
Definition:
touchscreen_binary_sensor.h:22
esphome::display::DisplayPage
Definition:
display.h:676
esphome::touchscreen::TouchscreenBinarySensor::release
void release() override
Definition:
touchscreen_binary_sensor.cpp:25
esphome::touchscreen::TouchPoint
Definition:
touchscreen.h:21
esphome::touchscreen::TouchscreenBinarySensor::get_height
int16_t get_height()
Definition:
touchscreen_binary_sensor.h:33
esphome::touchscreen::TouchscreenBinarySensor::pages_
std::vector< display::DisplayPage * > pages_
Definition:
touchscreen_binary_sensor.h:42
esphome::touchscreen::TouchscreenBinarySensor
Definition:
touchscreen_binary_sensor.h:14
esphome::touchscreen::TouchscreenBinarySensor::get_y_max
int16_t get_y_max()
Definition:
touchscreen_binary_sensor.h:31
esphome::touchscreen::TouchscreenBinarySensor::touch
void touch(TouchPoint tp) override
Definition:
touchscreen_binary_sensor.cpp:11
esphome
Implementation of SPI Controller mode.
Definition:
a01nyub.cpp:7
component.h
esphome::binary_sensor::BinarySensor
Base class for all binary_sensor-type classes.
Definition:
binary_sensor.h:37
helpers.h
esphome::touchscreen::TouchscreenBinarySensor::x_min_
int16_t x_min_
Definition:
touchscreen_binary_sensor.h:41
esphome::touchscreen::TouchscreenBinarySensor::get_x_max
int16_t get_x_max()
Definition:
touchscreen_binary_sensor.h:29
esphome::Parented
Helper class to easily give an object a parent of type T.
Definition:
helpers.h:522
Generated by
1.8.13