Fix chamber_temperature crash

This commit is contained in:
Noisyfox
2025-10-01 12:29:30 +08:00
parent 8a6a7a0d7d
commit 6757906ad3
3 changed files with 5 additions and 5 deletions

View File

@@ -156,11 +156,11 @@ void ConfigManipulation::check_chamber_temperature(DynamicPrintConfig* config)
{"PETG-CF",55}
};
bool support_chamber_temp_control=GUI::wxGetApp().preset_bundle->printers.get_selected_preset().config.opt_bool("support_chamber_temp_control");
if (support_chamber_temp_control&&config->has("chamber_temperatures")) {
if (support_chamber_temp_control&&config->has("chamber_temperature")) {
std::string filament_type = config->option<ConfigOptionStrings>("filament_type")->get_at(0);
auto iter = recommend_temp_map.find(filament_type);
if (iter!=recommend_temp_map.end()) {
if (iter->second < config->option<ConfigOptionInts>("chamber_temperatures")->get_at(0)) {
if (iter->second < config->option<ConfigOptionInts>("chamber_temperature")->get_at(0)) {
wxString msg_text = wxString::Format(_L("Current chamber temperature is higher than the material's safe temperature, this may result in material softening and clogging. "
"The maximum safe temperature for the material is %d"), iter->second);
MessageDialog dialog(m_msg_dlg_parent, msg_text, "", wxICON_WARNING | wxOK);

View File

@@ -3508,7 +3508,7 @@ void SelectMachineDialog::update_show_status(MachineObject* obj_)
std::unordered_set<int> known_fila_soften_extruders;
std::unordered_set<int> unknown_fila_soften_extruders;
auto preset_full_config = wxGetApp().preset_bundle->full_config();
auto chamber_temperatures = preset_full_config.option<ConfigOptionInts>("chamber_temperatures");
auto chamber_temperatures = preset_full_config.option<ConfigOptionInts>("chamber_temperature");
for (const FilamentInfo& item : m_ams_mapping_result) {
try
{

View File

@@ -3787,7 +3787,7 @@ 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_temperatures") {
else if (opt_key == "chamber_temperature") {
m_config_manipulation.check_chamber_temperature(&filament_config);
}
@@ -4066,7 +4066,7 @@ void TabFilament::toggle_options()
toggle_line("filament_diameter", !is_pellet_printer);
bool support_chamber_temp_control = this->m_preset_bundle->printers.get_edited_preset().config.opt_bool("support_chamber_temp_control");
toggle_line("chamber_temperatures", support_chamber_temp_control);
toggle_line("chamber_temperature", support_chamber_temp_control);
}
if (m_active_page->title() == L("Setting Overrides"))