Skip to content

Commit

Permalink
fix lvgl gvar window
Browse files Browse the repository at this point in the history
  • Loading branch information
gagarinlg committed Jan 9, 2023
1 parent a770160 commit c4a27b1
Showing 1 changed file with 24 additions and 7 deletions.
31 changes: 24 additions & 7 deletions radio/src/gui/colorlcd/model_gvars.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -229,19 +229,28 @@ void GVarEditWindow::setProperties(int onlyForFlightMode)
int32_t maxValue = GVAR_MAX - gvar->max;
const char * suffix = gvar->unit ? "%" : "";

// TODO needed? LcdFlags prec = gvar->prec ? PREC1 : 0;
LcdFlags prec = gvar->prec ? PREC1 : 0;
if (min && max) {
min->setMax(maxValue);
max->setMin(minValue);

min->setSuffix(suffix);
max->setSuffix(suffix);

// TODO min->setLcdFlags(prec);
// TODO max->setLcdFlags(prec);
LcdFlags minFlags = min->getTextFlags();
LcdFlags maxFlags = max->getTextFlags();
if(gvar->prec) {
minFlags |= PREC1;
maxFlags |= PREC1;
} else {
minFlags &= ~PREC1;
maxFlags &= ~PREC1;
}
min->setTextFlags(minFlags);
max->setTextFlags(maxFlags);

min->invalidate();
max->invalidate();
min->update();
max->update();
}
FlightModeData * fmData;
for (int fm = 0; fm < MAX_FLIGHT_MODES; fm++) {
Expand All @@ -256,6 +265,14 @@ void GVarEditWindow::setProperties(int onlyForFlightMode)
if (fmData->gvars[index] <= GVAR_MAX || fm == 0) {
values[fm]->setMin(GVAR_MIN + gvar->min);
values[fm]->setMax(GVAR_MAX - gvar->max);

LcdFlags flags = values[fm]->getTextFlags();
if(gvar->prec)
flags |= PREC1;
else
flags &= ~PREC1;
values[fm]->setTextFlags(flags);

values[fm]->setDisplayHandler(nullptr);
}
else {
Expand All @@ -272,7 +289,6 @@ void GVarEditWindow::setProperties(int onlyForFlightMode)
}

values[fm]->setSuffix(suffix);
// TODO valueTexts[fm]->setLcdFlags(prec);
values[fm]->invalidate();
}
if (gVarInHeader) gVarInHeader->invalidate();
Expand Down Expand Up @@ -388,7 +404,8 @@ void GVarEditWindow::buildBody(FormWindow * window)
}

setProperties();

lv_obj_set_height(window->getLvObj(), LCD_H - lv_obj_get_height(header.getLvObj()));
lv_obj_set_height(lvobj, LCD_H);
}

void ModelGVarsPage::rebuild(FormWindow * window)
Expand Down

0 comments on commit c4a27b1

Please sign in to comment.