Introduce minimal chamber temperature field (gcode chamber_min_temperature (#14340)

Introduce minimal chamber temperature field (gcode chamber_min_temperature)
This commit is contained in:
Ioannis Giannakas
2026-06-27 13:27:01 +01:00
committed by GitHub
parent 8cb2e4e01e
commit 0e4928f200
8 changed files with 69 additions and 6 deletions

View File

@@ -3969,7 +3969,29 @@ void TabFilament::build()
optgroup = page->new_optgroup(L("Print chamber temperature"), L"param_chamber_temp");
optgroup->append_single_option_line("activate_chamber_temp_control", "material_temperatures#print-chamber-temperature");
optgroup->append_single_option_line("chamber_temperature", "material_temperatures#print-chamber-temperature");
line = { L("Chamber temperature"), L("Target chamber temperature, and the minimal chamber temperature at which printing should start") };
line.label_path = "material_temperatures#print-chamber-temperature";
Option chamber_temp_target_opt = optgroup->get_option("chamber_temperature");
chamber_temp_target_opt.opt.label = L("Target");
line.append_option(chamber_temp_target_opt);
Option chamber_min_temp_opt = optgroup->get_option("chamber_minimal_temperature");
chamber_min_temp_opt.opt.label = L("Minimal");
line.append_option(chamber_min_temp_opt);
optgroup->append_line(line);
optgroup->m_on_change = [this](t_config_option_key opt_key, boost::any value) {
DynamicPrintConfig& filament_config = m_preset_bundle->filaments.get_edited_preset().config;
update_dirty();
if (opt_key == "chamber_temperature") {
m_config_manipulation.check_chamber_temperature(&filament_config);
m_config_manipulation.check_chamber_minimal_temperature(&filament_config);
}
else if (opt_key == "chamber_minimal_temperature") {
m_config_manipulation.check_chamber_minimal_temperature(&filament_config);
}
on_value_change(opt_key, value);
};
optgroup = page->new_optgroup(L("Print temperature"), L"param_extruder_temp");
line = { L("Nozzle"), L("Nozzle temperature when printing") };
@@ -4044,9 +4066,6 @@ void TabFilament::build()
else if (opt_key == "nozzle_temperature_initial_layer") {
m_config_manipulation.check_nozzle_temperature_initial_layer_range(&filament_config);
}
else if (opt_key == "chamber_temperature") {
m_config_manipulation.check_chamber_temperature(&filament_config);
}
on_value_change(opt_key, value);
};