FIX:update_all_preset_comboboxes shoulld not return

jira: STUDIO-12045
Change-Id: Ie507a87f9be6b95350603231a4ef7ee5596f5fdf
(cherry picked from commit 1541e256f9c858d3e33d5d31d4881e6ebf38e5b7)
This commit is contained in:
zhou.xu
2025-05-15 21:01:44 +08:00
committed by Noisyfox
parent d8f86e85ef
commit e13e6c7897

View File

@@ -2238,21 +2238,23 @@ void Sidebar::update_all_preset_comboboxes()
// Orca: don't update bed type if loading project // Orca: don't update bed type if loading project
if (!p->plater->is_loading_project()) { if (!p->plater->is_loading_project()) {
bool has_changed = reset_bed_type_combox_choices(); bool has_changed = reset_bed_type_combox_choices();
if (m_begin_sync_printer_status && !has_changed) { bool flag = m_begin_sync_printer_status && !has_changed;
return; if (!(flag)) {
} auto str_bed_type = wxGetApp().app_config->get_printer_setting(wxGetApp().preset_bundle->printers.get_selected_preset_name(),
auto str_bed_type = wxGetApp().app_config->get_printer_setting(wxGetApp().preset_bundle->printers.get_selected_preset_name(), "curr_bed_type");
"curr_bed_type"); if (!str_bed_type.empty()) {
if (!str_bed_type.empty()) { int bed_type_value = atoi(str_bed_type.c_str());
int bed_type_value = atoi(str_bed_type.c_str()); if (bed_type_value <= 0 || bed_type_value >= btCount) {
if (bed_type_value <= 0 || bed_type_value >= btCount) { bed_type_value = preset_bundle.printers.get_edited_preset().get_default_bed_type(&preset_bundle);
bed_type_value = preset_bundle.printers.get_edited_preset().get_default_bed_type(&preset_bundle); }
}
p->combo_printer_bed->SelectAndNotify(bed_type_value - 1); p->combo_printer_bed->SelectAndNotify(bed_type_value - 1);
} else {
BedType bed_type = preset_bundle.printers.get_edited_preset().get_default_bed_type(&preset_bundle);
p->combo_printer_bed->SelectAndNotify((int) bed_type - 1);
}
} else { } else {
BedType bed_type = preset_bundle.printers.get_edited_preset().get_default_bed_type(&preset_bundle); BOOST_LOG_TRIVIAL(debug) << __FUNCTION__ << ":no need reset_bed_type_combox_choices";
p->combo_printer_bed->SelectAndNotify((int) bed_type - 1);
} }
} }
} else { } else {