EmlaLockSafe
SelectDisplayTimePassed.h
Go to the documentation of this file.
1
5#pragma once
6#include "../LockState.h"
7#include "ViewStore.h"
8
9#include <MenuView.h>
10
11namespace views {
15class SelectDisplayTimePassed : public lcd::MenuView {
16public:
25 SelectDisplayTimePassed(LiquidCrystal_PCF8574* display,
26 RotaryEncoder* encoder,
27 const int& numberOfColumns,
28 const int& numberOfRows)
29 : lcd::MenuView(display, "SelectDisplayTimePassed", encoder, "Display time passed?", numberOfColumns, numberOfRows) {}
30
31public:
36
37public:
42
43protected:
47 virtual void activate() {
48 // is this the first time activate is called?
49 if (menuItems.empty()) {
50 // create menu items
51 createMenuItem("Yes", [this](MenuItem*) {
54 });
55
56 createMenuItem("No", [this](MenuItem*) {
59 });
60
61 createMenuItem("Cancel", [this](MenuItem*) {
63 });
64 }
65
66 lcd::MenuView::activate();
67 }
68};
69} // namespace views
static void setDisplayTimePassed(const DisplayTimePassed &displayTimePassed)
Set how the time passed should be displayed.
Definition: LockState.h:265
selection menu if the time passed should be displayed or not
Definition: SelectDisplayTimePassed.h:15
SelectDisplayTimePassed(SelectDisplayTimePassed &&other) noexcept=delete
Move constructor - not available otherwise we get problems with the callbacks.
SelectDisplayTimePassed(LiquidCrystal_PCF8574 *display, RotaryEncoder *encoder, const int &numberOfColumns, const int &numberOfRows)
Construct a new menu object.
Definition: SelectDisplayTimePassed.h:25
SelectDisplayTimePassed(const SelectDisplayTimePassed &other)=delete
Copy constructor - not available.
virtual void activate()
called as soon as the view becomes active
Definition: SelectDisplayTimePassed.h:47
static bool activateView(const ViewId &id)
activates the view described by the id
Definition: ViewStore.h:98
@ SelectDisplayTimeLeft
Definition: ViewStore.h:33
@ UnlockedMainMenu
Definition: ViewStore.h:37
views::ConfigurationServerView configurationServerView & display
Definition: main.cpp:57
RotaryEncoder encoder(ENCODER_PIN_CLK, ENCODER_PIN_DT, ENCODER_SWITCH)
Definition: ConfigurationServerView.h:10