fix(color): crash when changing 'Mode' for 'Adjust' SF (#5219)

This commit is contained in:
philmoz
2024-06-27 09:03:44 +10:00
committed by GitHub
parent 22114a67fa
commit cc42517646
2 changed files with 9 additions and 9 deletions
+7 -8
View File
@@ -517,7 +517,13 @@ void FunctionEditPage::updateSpecialFunctionOneWindow()
new StaticText(line, rect_t{}, STR_MODE);
auto modechoice = new Choice(line, rect_t{}, FUNC_ADJUST_GVAR_CONSTANT,
FUNC_ADJUST_GVAR_INCDEC,
GET_DEFAULT(CFN_GVAR_MODE(cfn)), nullptr);
GET_DEFAULT(CFN_GVAR_MODE(cfn)),
[=](int32_t newValue) {
CFN_GVAR_MODE(cfn) = newValue;
CFN_PARAM(cfn) = 0;
SET_DIRTY();
updateSpecialFunctionOneWindow();
});
line = specialFunctionOneWindow->newLine(grid);
modechoice->setTextHandler([](int32_t value) {
@@ -534,13 +540,6 @@ void FunctionEditPage::updateSpecialFunctionOneWindow()
return std::string("---");
});
modechoice->setSetValueHandler([=](int32_t newValue) {
CFN_GVAR_MODE(cfn) = newValue;
CFN_PARAM(cfn) = 0;
SET_DIRTY();
updateSpecialFunctionOneWindow();
});
switch (CFN_GVAR_MODE(cfn)) {
case FUNC_ADJUST_GVAR_CONSTANT: {
int16_t val_min, val_max;
+2 -1
View File
@@ -90,7 +90,8 @@ std::string Choice::getLabelText()
void ChoiceBase::update()
{
lv_label_set_text(label, getLabelText().c_str());
if (!deleted())
lv_label_set_text(label, getLabelText().c_str());
}
Choice::Choice(Window* parent, const rect_t& rect, int vmin, int vmax,