ENH: config: add extrudrer variant check logic

when load config from 3mf

Change-Id: I946ba777853e479418fcd1b49209f75ed41f33f3
(cherry picked from commit 5defd2b7c315d658be52caf8eb97e80b41458f31)
This commit is contained in:
lane.wei
2024-07-02 19:33:15 +08:00
committed by Noisyfox
parent 508c5d5bc9
commit 082c213dcf
6 changed files with 157 additions and 24 deletions

View File

@@ -946,6 +946,19 @@ boost::any ConfigOptionsGroup::get_config_value(const DynamicPrintConfig& config
ret = double_to_string(val); }
}
break;
case coFloatsOrPercents: {
if (config.option(opt_key)->is_nil())
ret = _(L("N/A"));
else {
const auto& value = config.option<ConfigOptionFloatsOrPercentsNullable>(opt_key)->get_at(idx);
text_value = double_to_string(value.value);
if (value.percent)
text_value += "%";
ret = text_value;
}
break;
}
case coBools:
ret = config.option<ConfigOptionBoolsNullable>(opt_key)->values[idx];
break;
@@ -1091,7 +1104,20 @@ boost::any ConfigOptionsGroup::get_config_value2(const DynamicPrintConfig& confi
config.option<ConfigOptionPercentsNullable>(opt_key)->get_at(idx);
ret = val; }
}
break;
break;
case coFloatsOrPercents: {
if (config.option(opt_key)->is_nil())
ret = ConfigOptionFloatsOrPercentsNullable::nil_value();
else {
const auto& value = config.option<ConfigOptionFloatsOrPercentsNullable>(opt_key)->get_at(idx);
wxString text_value = double_to_string(value.value);
if (value.percent)
text_value += "%";
ret = text_value;
}
break;
}
case coBools:
ret = config.option<ConfigOptionBoolsNullable>(opt_key)->values[idx];
break;