Some more fixes / tweaking
This commit is contained in:
@@ -58,6 +58,9 @@ class FlightModeGroup: public FormGroup
|
||||
if (index == getFlightMode()) {
|
||||
dc->drawSolidFilledRect(0, 0, width(), height(), HIGHLIGHT_COLOR);
|
||||
}
|
||||
else {
|
||||
dc->drawSolidFilledRect(0, 0, width(), height(), FIELD_BGCOLOR);
|
||||
}
|
||||
FormGroup::paint(dc);
|
||||
}
|
||||
|
||||
|
||||
@@ -64,7 +64,7 @@ void GVarButton::paint(BitmapBuffer * dc)
|
||||
currentFlightMode = getFlightMode();
|
||||
gvarSum = 0;
|
||||
|
||||
dc->drawSolidFilledRect(0, 0, nameRectW, rect.h, CURVE_AXIS_COLOR);
|
||||
dc->drawSolidFilledRect(0, 0, rect.w, rect.h, FIELD_BGCOLOR);
|
||||
dc->drawText(FIELD_PADDING_LEFT, FIELD_PADDING_TOP, getGVarString(gvarIdx), 0);
|
||||
dc->drawSizedText(x, y, gvar->name, LEN_GVAR_NAME, 0);
|
||||
|
||||
@@ -91,7 +91,8 @@ void GVarButton::paint(BitmapBuffer * dc)
|
||||
}
|
||||
|
||||
if (!bgFilled) {
|
||||
dc->drawSolidFilledRect(startX, y, width() - startX, PAGE_LINE_HEIGHT, CURVE_AXIS_COLOR);
|
||||
dc->drawSolidFilledRect(startX, y, width() - startX, PAGE_LINE_HEIGHT,
|
||||
FIELD_FRAME_COLOR);
|
||||
bgFilled = true;
|
||||
}
|
||||
|
||||
@@ -116,7 +117,10 @@ void GVarButton::paint(BitmapBuffer * dc)
|
||||
}
|
||||
}
|
||||
|
||||
dc->drawSolidRect(0, 0, rect.w, rect.h, 2, hasFocus() ? FOCUS_BGCOLOR : DISABLE_COLOR);
|
||||
if (hasFocus())
|
||||
dc->drawSolidRect(0, 0, rect.w, rect.h, 2, FOCUS_BGCOLOR);
|
||||
else
|
||||
dc->drawSolidRect(0, 0, rect.w, rect.h, 2, FIELD_FRAME_COLOR);
|
||||
}
|
||||
|
||||
void GVarButton::drawFlightMode(BitmapBuffer * dc, coord_t x, coord_t y, int fm, LcdFlags attr)
|
||||
@@ -131,17 +135,17 @@ void GVarRenderer::paint(BitmapBuffer * dc)
|
||||
lastFlightMode = getFlightMode();
|
||||
FlightModeData * fmData = &g_model.flightModeData[lastFlightMode];
|
||||
lastGVar = fmData->gvars[index];
|
||||
coord_t x = drawStringWithIndex(dc, 0, FIELD_PADDING_TOP, STR_GV, index + 1, MENU_COLOR, nullptr, "=");
|
||||
coord_t x = drawStringWithIndex(dc, 0, FIELD_PADDING_TOP, STR_GV, index + 1,
|
||||
DEFAULT_COLOR, nullptr, "=");
|
||||
if (lastGVar > GVAR_MAX) {
|
||||
uint8_t fm = lastGVar - GVAR_MAX - 1;
|
||||
if (fm >= lastFlightMode)
|
||||
fm++;
|
||||
char label[16];
|
||||
getFlightModeString(label, fm + 1);
|
||||
dc->drawSizedText(x, FIELD_PADDING_TOP, label, strlen(label), MENU_COLOR);
|
||||
}
|
||||
else {
|
||||
drawGVarValue(dc, x, FIELD_PADDING_TOP, index, lastGVar, MENU_COLOR);
|
||||
dc->drawSizedText(x, FIELD_PADDING_TOP, label, strlen(label), DEFAULT_COLOR);
|
||||
} else {
|
||||
drawGVarValue(dc, x, FIELD_PADDING_TOP, index, lastGVar, DEFAULT_COLOR);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -167,8 +171,15 @@ bool GVarRenderer::isUpdated()
|
||||
|
||||
void GVarEditWindow::buildHeader(Window * window)
|
||||
{
|
||||
new StaticText(window, {PAGE_TITLE_LEFT, PAGE_TITLE_TOP, LCD_W - PAGE_TITLE_LEFT, PAGE_LINE_HEIGHT}, STR_GLOBAL_VAR, 0, MENU_COLOR);
|
||||
gVarInHeader = new GVarRenderer(window, {PAGE_TITLE_LEFT, PAGE_TITLE_TOP + PAGE_LINE_HEIGHT, LCD_W - PAGE_TITLE_LEFT, PAGE_LINE_HEIGHT}, index);
|
||||
new StaticText(window,
|
||||
{PAGE_TITLE_LEFT, PAGE_TITLE_TOP, LCD_W - PAGE_TITLE_LEFT,
|
||||
PAGE_LINE_HEIGHT},
|
||||
STR_GLOBAL_VAR, 0, DEFAULT_COLOR);
|
||||
gVarInHeader =
|
||||
new GVarRenderer(window,
|
||||
{PAGE_TITLE_LEFT, PAGE_TITLE_TOP + PAGE_LINE_HEIGHT,
|
||||
LCD_W - PAGE_TITLE_LEFT, PAGE_LINE_HEIGHT},
|
||||
index);
|
||||
}
|
||||
|
||||
void GVarEditWindow::checkEvents()
|
||||
@@ -357,4 +368,4 @@ void ModelGVarsPage::build(FormWindow * window)
|
||||
grid.nextLine(button->height());
|
||||
}
|
||||
window->setInnerHeight(grid.getWindowHeight());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -73,8 +73,15 @@ class LogicalSwitchEditPage: public Page
|
||||
|
||||
void buildHeader(Window * window)
|
||||
{
|
||||
new StaticText(window, { PAGE_TITLE_LEFT, PAGE_TITLE_TOP, LCD_W - PAGE_TITLE_LEFT, PAGE_LINE_HEIGHT }, STR_MENULOGICALSWITCHES, 0, MENU_COLOR);
|
||||
headerSwitchName = new StaticText(window, { PAGE_TITLE_LEFT, PAGE_TITLE_TOP + PAGE_LINE_HEIGHT, LCD_W - PAGE_TITLE_LEFT, PAGE_LINE_HEIGHT }, getSwitchPositionName(SWSRC_SW1 + index), 0, MENU_COLOR);
|
||||
new StaticText(window,
|
||||
{PAGE_TITLE_LEFT, PAGE_TITLE_TOP, LCD_W - PAGE_TITLE_LEFT,
|
||||
PAGE_LINE_HEIGHT},
|
||||
STR_MENULOGICALSWITCHES, 0, MENU_COLOR);
|
||||
headerSwitchName = new StaticText(
|
||||
window,
|
||||
{PAGE_TITLE_LEFT, PAGE_TITLE_TOP + PAGE_LINE_HEIGHT,
|
||||
LCD_W - PAGE_TITLE_LEFT, PAGE_LINE_HEIGHT},
|
||||
getSwitchPositionName(SWSRC_SW1 + index), 0, MENU_COLOR);
|
||||
}
|
||||
|
||||
void updateLogicalSwitchOneWindow()
|
||||
@@ -311,6 +318,8 @@ class LogicalSwitchButton : public Button {
|
||||
{
|
||||
if (active)
|
||||
dc->drawSolidFilledRect(2, 2, rect.w-4, rect.h-4, HIGHLIGHT_COLOR);
|
||||
else
|
||||
dc->drawSolidFilledRect(2, 2, rect.w-4, rect.h-4, FIELD_BGCOLOR);
|
||||
|
||||
paintLogicalSwitchLine(dc);
|
||||
|
||||
|
||||
@@ -125,10 +125,6 @@ class ModelButton : public Button
|
||||
buffer->drawText(width() / 2, 2, "(Invalid Model)",
|
||||
DEFAULT_COLOR | CENTERED);
|
||||
} else {
|
||||
buffer->drawSizedText(width() / 2, 2, modelCell->modelName,
|
||||
LEN_MODEL_NAME,
|
||||
DEFAULT_COLOR | CENTERED);
|
||||
|
||||
GET_FILENAME(filename, BITMAPS_PATH, partialModel.header.bitmap, "");
|
||||
const BitmapBuffer *bitmap = BitmapBuffer::loadBitmap(filename);
|
||||
if (bitmap) {
|
||||
@@ -150,11 +146,20 @@ class ModelButton : public Button
|
||||
dc->drawSizedText(width() / 2, 2, modelCell->modelName,
|
||||
LEN_MODEL_NAME,
|
||||
DEFAULT_COLOR | CENTERED);
|
||||
} else if (hasFocus()) {
|
||||
dc->drawFilledRect(0, 0, width(), 20, SOLID, FOCUS_BGCOLOR, 5);
|
||||
} else {
|
||||
LcdFlags textColor;
|
||||
if (hasFocus()) {
|
||||
dc->drawFilledRect(0, 0, width(), 20, SOLID, FOCUS_BGCOLOR, 5);
|
||||
textColor = FOCUS_COLOR;
|
||||
}
|
||||
else {
|
||||
dc->drawFilledRect(0, 0, width(), 20, SOLID, COLOR2FLAGS(WHITE)/*FIELD_BGCOLOR*/, 5);
|
||||
textColor = DEFAULT_COLOR;
|
||||
}
|
||||
|
||||
dc->drawSizedText(width() / 2, 2, modelCell->modelName,
|
||||
LEN_MODEL_NAME,
|
||||
FOCUS_COLOR | CENTERED);
|
||||
textColor | CENTERED);
|
||||
}
|
||||
|
||||
if (!hasFocus()) {
|
||||
|
||||
Reference in New Issue
Block a user