make Fuzzy skin options only available when Fuzzy skin is not disabled (#10312)

Mimicking the behavior of Ironing.

![demo](https://github.com/user-attachments/assets/443aa8c3-8b7c-4ab1-8445-4796185273d4)
This commit is contained in:
discip
2026-01-15 12:40:15 +01:00
committed by GitHub
parent c1f609f27a
commit 621409678d
6 changed files with 60 additions and 13 deletions

View File

@@ -173,7 +173,8 @@ static t_config_enum_values s_keys_map_FuzzySkinType {
{ "none", int(FuzzySkinType::None) },
{ "external", int(FuzzySkinType::External) },
{ "all", int(FuzzySkinType::All) },
{ "allwalls", int(FuzzySkinType::AllWalls)}
{ "allwalls", int(FuzzySkinType::AllWalls)},
{ "disabled_fuzzy", int(FuzzySkinType::Disabled_fuzzy)}
};
CONFIG_OPTION_ENUM_DEFINE_STATIC_MAPS(FuzzySkinType)
@@ -3223,12 +3224,14 @@ void PrintConfigDef::init_fff_params()
def->enum_values.push_back("external");
def->enum_values.push_back("all");
def->enum_values.push_back("allwalls");
def->enum_labels.push_back(L("None"));
def->enum_values.push_back("disabled_fuzzy");
def->enum_labels.push_back(L("None (allow paint)"));
def->enum_labels.push_back(L("Contour"));
def->enum_labels.push_back(L("Contour and hole"));
def->enum_labels.push_back(L("All walls"));
def->enum_labels.push_back(L("Disabled"));
def->mode = comSimple;
def->set_default_value(new ConfigOptionEnum<FuzzySkinType>(FuzzySkinType::None));
def->set_default_value(new ConfigOptionEnum<FuzzySkinType>(FuzzySkinType::Disabled_fuzzy));
def = this->add("fuzzy_skin_thickness", coFloat);
def->label = L("Fuzzy skin thickness");