Added an option to enable multiple bed type support for printers

This commit is contained in:
SoftFever 2024-01-04 23:12:36 +08:00
parent c4538ae0a4
commit c02d2c4db3
6 changed files with 36 additions and 33 deletions

View file

@ -3029,6 +3029,7 @@ void TabFilament::build()
line.append_option(optgroup->get_option("nozzle_temperature"));
optgroup->append_line(line);
optgroup = page->new_optgroup(L("Bed temperature"), L"param_temperature");
line = { L("Cool plate"), L("Bed temperature when cool plate is installed. Value 0 means the filament does not support to print on the Cool Plate") };
line.append_option(optgroup->get_option("cool_plate_temp_initial_layer"));
line.append_option(optgroup->get_option("cool_plate_temp"));
@ -3278,23 +3279,22 @@ void TabFilament::toggle_options()
wxGetApp().preset_bundle->is_bbl_vendor();
}
auto cfg = m_preset_bundle->printers.get_edited_preset().config;
if (m_active_page->title() == L("Cooling")) {
bool has_enable_overhang_bridge_fan = m_config->opt_bool("enable_overhang_bridge_fan", 0);
for (auto el : {"overhang_fan_speed", "overhang_fan_threshold"})
toggle_option(el, has_enable_overhang_bridge_fan);
toggle_option(
"additional_cooling_fan_speed",
m_preset_bundle->printers.get_edited_preset().config.option<ConfigOptionBool>("auxiliary_fan")->value);
toggle_option("additional_cooling_fan_speed", cfg.opt_bool("auxiliary_fan"));
}
if (m_active_page->title() == L("Filament"))
{
bool pa = m_config->opt_bool("enable_pressure_advance", 0);
toggle_option("pressure_advance", pa);
toggle_line("cool_plate_temp_initial_layer", is_BBL_printer);
toggle_line("eng_plate_temp_initial_layer", is_BBL_printer);
toggle_line("textured_plate_temp_initial_layer", is_BBL_printer);
auto support_multi_bed_types = is_BBL_printer || cfg.opt_bool("support_multi_bed_types");
toggle_line("cool_plate_temp_initial_layer", support_multi_bed_types );
toggle_line("eng_plate_temp_initial_layer", support_multi_bed_types);
toggle_line("textured_plate_temp_initial_layer", support_multi_bed_types);
}
if (m_active_page->title() == L("Setting Overrides"))
@ -3407,6 +3407,7 @@ void TabPrinter::build_fff()
optgroup->append_single_option_line(option);
// optgroup->append_single_option_line("printable_area");
optgroup->append_single_option_line("printable_height");
optgroup->append_single_option_line("support_multi_bed_types");
optgroup->append_single_option_line("nozzle_volume");
optgroup->append_single_option_line("best_object_pos");
optgroup->append_single_option_line("z_offset");
@ -4058,7 +4059,7 @@ void TabPrinter::toggle_options()
toggle_line(el, is_BBL_printer);
// SoftFever: hide non-BBL settings
for (auto el : {"use_firmware_retraction", "use_relative_e_distances"})
for (auto el : {"use_firmware_retraction", "use_relative_e_distances", "support_multi_bed_types"})
toggle_line(el, !is_BBL_printer);
}