From 3d0b24f94db0698f5b38f824e65bf56e18a26d2a Mon Sep 17 00:00:00 2001 From: SoftFever Date: Fri, 1 May 2026 21:25:58 +0800 Subject: [PATCH] Tweak UI 1. Move ZAA options to comExpert 2. Expose zaa_dont_alternate_fill_direction to the UI 3. Remove ironing_expansion from UI as it's not implemented --- src/libslic3r/PrintConfig.cpp | 10 +++++----- src/slic3r/GUI/ConfigManipulation.cpp | 4 ++++ src/slic3r/GUI/Tab.cpp | 4 +++- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/src/libslic3r/PrintConfig.cpp b/src/libslic3r/PrintConfig.cpp index 0239590a6e..a36489cccb 100644 --- a/src/libslic3r/PrintConfig.cpp +++ b/src/libslic3r/PrintConfig.cpp @@ -4118,14 +4118,14 @@ void PrintConfigDef::init_fff_params() def->sidetext = L("mm"); def->min = -100; def->max = 100; - def->mode = comAdvanced; + def->mode = comExpert; def->set_default_value(new ConfigOptionFloat(0)); def = this->add("zaa_enabled", coBool); def->label = L("Z contouring enabled"); def->category = L("Quality"); def->tooltip = L("Enable Z-layer contouring (aka Z-layer anti-aliasing)"); - def->mode = comAdvanced; + def->mode = comExpert; def->set_default_value(new ConfigOptionBool(false)); def = this->add("zaa_minimize_perimeter_height", coFloat); @@ -4136,14 +4136,14 @@ void PrintConfigDef::init_fff_params() def->sidetext = L("°"); def->min = 0; def->max = 90; - def->mode = comAdvanced; + def->mode = comExpert; def->set_default_value(new ConfigOptionFloat(0)); def = this->add("zaa_dont_alternate_fill_direction", coBool); def->label = L("Don't alternate fill direction"); def->category = L("Quality"); def->tooltip = L("Disable alternating fill direction when using Z contouring"); - def->mode = comAdvanced; + def->mode = comExpert; def->set_default_value(new ConfigOptionBool(false)); def = this->add("zaa_min_z", coFloat); @@ -4153,7 +4153,7 @@ void PrintConfigDef::init_fff_params() def->sidetext = L("mm"); def->min = 0; def->max = 100; - def->mode = comAdvanced; + def->mode = comExpert; def->set_default_value(new ConfigOptionFloat(0.05)); def = this->add("layer_change_gcode", coString); diff --git a/src/slic3r/GUI/ConfigManipulation.cpp b/src/slic3r/GUI/ConfigManipulation.cpp index 0a67c841ec..238b6ac690 100644 --- a/src/slic3r/GUI/ConfigManipulation.cpp +++ b/src/slic3r/GUI/ConfigManipulation.cpp @@ -801,6 +801,10 @@ void ConfigManipulation::toggle_print_fff_options(DynamicPrintConfig *config, co toggle_line("ironing_speed", has_ironing || has_support_ironing); + bool has_zaa = config->opt_bool("zaa_enabled"); + for (auto el : {"zaa_minimize_perimeter_height", "zaa_min_z", "zaa_dont_alternate_fill_direction", "ironing_expansion"}) + toggle_line(el, has_zaa); + bool have_sequential_printing = (config->opt_enum("print_sequence") == PrintSequence::ByObject); // for (auto el : { "extruder_clearance_radius", "extruder_clearance_height_to_rod", "extruder_clearance_height_to_lid" }) // toggle_field(el, have_sequential_printing); diff --git a/src/slic3r/GUI/Tab.cpp b/src/slic3r/GUI/Tab.cpp index d94bb35d2d..868b537879 100644 --- a/src/slic3r/GUI/Tab.cpp +++ b/src/slic3r/GUI/Tab.cpp @@ -2324,7 +2324,9 @@ void TabPrint::build() optgroup->append_single_option_line("zaa_enabled"); optgroup->append_single_option_line("zaa_minimize_perimeter_height"); optgroup->append_single_option_line("zaa_min_z"); - optgroup->append_single_option_line("ironing_expansion"); + optgroup->append_single_option_line("zaa_dont_alternate_fill_direction"); + // Orca: it's not used yet, so hide it in UI for now + // optgroup->append_single_option_line("ironing_expansion"); optgroup = page->new_optgroup(L("Wall generator"), L"param_wall_generator"); optgroup->append_single_option_line("wall_generator", "quality_settings_wall_generator");