Add screen for configuring vehicle parameters

This commit is contained in:
2023-04-04 20:58:34 +02:00
parent 09f65fcf22
commit a5f10be4fd
35 changed files with 1976 additions and 104 deletions

View File

@ -0,0 +1,38 @@
#include <gui/containers/ConfigItem.hpp>
#include "texts/TextKeysAndLanguages.hpp"
#include "touchgfx/Color.hpp"
ConfigItem::ConfigItem() : NamedField(paramFieldDescs) {}
void ConfigItem::initialize() { ConfigItemBase::initialize(); }
void ConfigItem::setSelected(int selected) {
uint8_t v = selected ? 0x44 : 0x00;
bg.setColor(touchgfx::Color::getColorFromRGB(v, v, v));
bg.invalidate();
}
void ConfigItem::typeUpdated() {
switch (desc->kind) {
case NamedFieldKind::Float:
case NamedFieldKind::Int:
value.setTypedText(T_NUMBERWILDCARD);
break;
case NamedFieldKind::Bool:
case NamedFieldKind::Text:
value.setTypedText(T_DEFAULTWILDCARD_CENTERED);
break;
}
value.invalidate();
}
void ConfigItem::titleBufferUpdated() {
title.setWildcard(titleBuffer);
title.invalidate();
}
void ConfigItem::valueBufferUpdated() {
value.setWildcard(valueBuffer);
value.invalidate();
}