20 void onEvent(Button::CALLBACK_EVENT event, uint8_t
id) {
23 ButtonState &state(
btnState[
id - 1]);
25 if(event == Button::BEGIN_EVENT) {
26 Serial << F(
"Event BEGIN_EVENT (") <<
event << F(
") for id ") <<
id <<
endl;
31 }
else if(event == Button::PRESSED_EVENT) {
32 Serial << F(
"Event PRESSED_EVENT (") <<
event << F(
") for id ") <<
id <<
endl;
38 state.wasPressed =
true;
39 }
else if(event == Button::RELEASED_EVENT) {
40 Serial << F(
"Event RELEASED_EVENT (") <<
event << F(
") for id ") <<
id <<
endl;
47 state.wasReleased =
true;
48 }
else if(event == Button::HELD_EVENT) {
49 Serial << F(
"Event HELD_EVENT (") <<
event << F(
") for id ") <<
id <<
endl;
57 }
else if(event == Button::IDLE_EVENT) {
58 Serial << F(
"Event IDLE_EVENT (") <<
event << F(
") for id ") <<
id <<
endl;
66 }
else if(event == Button::SINGLE_CLICKED_EVENT) {
67 Serial << F(
"Event SINGLE_CLICKED_EVENT (") <<
event << F(
") for id ") <<
id <<
endl;
74# if TESTABLE_CLASS >= TESTABLE_DOUBLECLICKER
75 state.wasSingleClicked =
true;
76 state.resetSingleClicked =
true;
78 }
else if(event == Button::DOUBLE_CLICKED_EVENT) {
79 Serial << F(
"Event DOUBLE_CLICKED_EVENT (") <<
event << F(
") for id ") <<
id <<
endl;
86# if TESTABLE_CLASS >= TESTABLE_DOUBLECLICKER
87 state.wasDoubleClicked =
true;
88 state.resetDoubleClicked =
true;
91 Serial << F(
"ERROR: Event UNKNOWN (") <<
event << F(
") for id ") <<
id <<
endl;
void onEvent(Button::CALLBACK_EVENT event, uint8_t id)
Callback function for button events.
Declarations for Callback module.
void checkButtonJustSingleClicked(Button *btn)
Check button that has just been single-clicked.
void checkButtonJustReleased(Button *btn)
Check button that has just been released.
void checkButtonJustHeld(Button *btn)
Check button that has just been held.
void checkButtonJustIdle(Button *btn)
Check button that has just become or remains idle.
struct ButtonState btnState[NUM_BUTTONS]
Previous state for each button.
void checkButtonJustDoubleClicked(Button *btn)
Check button that has just been double-clicked.
void checkButtonJustPressed(Button *btn)
Check state of a pressed button just pressed.
Declarations for the Checks module.
#define NUM_BUTTONS
The number of buttons to connect for testing.
Utility function declarations.
#define assert(e)
Macro to assert using FlashStringHelper to reduce memory usage.
endl
Special type to allow Serial << endl to print a line and flush the stream.