pull purge tower into its own files, make purge tower semi-transparent like other purge towers

This commit is contained in:
harrierpigeon
2026-08-08 16:35:55 -05:00
parent c80f1ab312
commit bcfb09481c
11 changed files with 443 additions and 327 deletions
+13 -1
View File
@@ -5699,6 +5699,12 @@ if (is_marlin_flavor)
optgroup->append_single_option_line("enable_filament_ramming", "printer_multimaterial_wipe_tower#enable-filament-ramming");
optgroup->append_single_option_line("tool_change_on_wipe_tower", "printer_multimaterial_wipe_tower#tool-change-on-wipe-tower");
// Orca-Belt: belt printers replace the classic wipe tower with an
// auto-generated purge prism; this is its enable (gated to belt printers
// in toggle_options()).
optgroup = page->new_optgroup(L("Belt purge tower"), "param_tower");
optgroup->append_single_option_line("enable_belt_purge_tower", "printer_multimaterial_wipe_tower");
optgroup = page->new_optgroup(L("Single extruder multi-material parameters"), "param_settings");
optgroup->append_single_option_line("cooling_tube_retraction", "printer_multimaterial_semm_parameters#cooling-tube-position");
@@ -6233,8 +6239,14 @@ void TabPrinter::toggle_options()
}
if (m_active_page->title() == L("Multimaterial")) {
// Orca-Belt: belt printers use the belt purge tower instead of the classic
// wipe tower — show its enable only on belt printers, and hide the classic
// wipe-tower fields there (the classic tower's G-code bypasses the belt transform).
const bool is_belt_printer = m_config->opt_bool("belt_printer");
toggle_line("enable_belt_purge_tower", is_belt_printer);
const bool supports_wipe_tower_2 = !is_BBL_printer && m_config->opt_enum<WipeTowerType>("wipe_tower_type") == WipeTowerType::Type2;
toggle_line("wipe_tower_type", !is_BBL_printer);
toggle_line("wipe_tower_type", !is_BBL_printer && !is_belt_printer);
// SoftFever: hide specific settings for BBL printer
for (auto el : {
"enable_filament_ramming",