Added scrolling to adjustmenu

This commit is contained in:
Brian Hrebec 2023-08-27 11:58:51 -05:00
parent 01d193c9b3
commit cfc2390b8b

View file

@ -70,7 +70,19 @@ class AdjustMenuScreen : public MenuScreen {
}
private:
void draw(bool redrawIndicators, bool redraw) {
for (size_t i = 0; i < N; i++) {
size_t scrollPos = 0;
if (_entries.size() >= ADJUST_NUM_ROWS) {
if ((_selectedEntry - scrollPos) > (ADJUST_NUM_ROWS-2) ) {
scrollPos = _selectedEntry - (ADJUST_NUM_ROWS-2);
} else if( (_selectedEntry - scrollPos) < 1) {
scrollPos = _selectedEntry - 1;
}
scrollPos = constrain(scrollPos, 0, _entries.size() - ADJUST_NUM_ROWS);
}
int end = constrain(scrollPos + ADJUST_NUM_ROWS, 0, N);
for (size_t i = scrollPos; i < end; i++) {
if (redraw) {
drawAdjustRow(_entries[i], _rowDrawings[i], i == _selectedEntry);
} else if (redrawIndicators && i == _selectedEntry) {