Deluge Firmware
1.3.0
Build date: 2025.06.05
Loading...
Searching...
No Matches
enumeration.h
1
#pragma once
2
#include "gui/menu_item/value.h"
3
4
namespace
deluge::gui::menu_item {
5
9
class
Enumeration
:
public
Value
<int32_t> {
10
public
:
11
using
Value::Value;
12
void
beginSession
(MenuItem* navigatedBackwardFrom)
override
;
13
void
selectEncoderAction
(int32_t offset)
override
;
14
virtual
size_t
size() = 0;
16
virtual
bool
wrapAround
();
17
void
renderInHorizontalMenu(int32_t startX, int32_t width, int32_t startY, int32_t height)
override
;
18
19
protected
:
20
void
drawPixelsForOled
()
override
= 0;
21
void
drawValue()
override
;
25
virtual
void
getShortOption
(
StringBuf
&);
26
};
27
28
}
// namespace deluge::gui::menu_item
StringBuf
Definition
d_stringbuf.h:16
deluge::gui::menu_item::Enumeration
An enumeration has a fixed number of items, with values from 1 to n (exclusive)
Definition
enumeration.h:9
deluge::gui::menu_item::Enumeration::getShortOption
virtual void getShortOption(StringBuf &)
Definition
enumeration.cpp:47
deluge::gui::menu_item::Enumeration::beginSession
void beginSession(MenuItem *navigatedBackwardFrom) override
Begin an editing session with this menu item.
Definition
enumeration.cpp:7
deluge::gui::menu_item::Enumeration::wrapAround
virtual bool wrapAround()
Should this menu wrap around?
Definition
enumeration.cpp:12
deluge::gui::menu_item::Enumeration::drawPixelsForOled
void drawPixelsForOled() override=0
Paints the pixels below the standard title block.
deluge::gui::menu_item::Enumeration::selectEncoderAction
void selectEncoderAction(int32_t offset) override
Handle select encoder movement.
Definition
enumeration.cpp:18
deluge::gui::menu_item::Value
Definition
value.h:27