FIX: crash when select filament in device
jira: STUDIO-7972 Change-Id: Ice9e7360fbfe0c07bd49bbd696bb3cfb662e94e4
This commit is contained in:
parent
56ed912c3e
commit
4c644d4715
|
@ -1191,29 +1191,33 @@ void AMSMaterialsSetting::on_select_filament(wxCommandEvent &evt)
|
|||
}
|
||||
|
||||
m_comboBox_cali_result->Set(items);
|
||||
if (ams_id == VIRTUAL_TRAY_MAIN_ID) {
|
||||
cali_select_idx = CalibUtils::get_selected_calib_idx(m_pa_profile_items,this->obj->vt_slot[0].cali_idx);
|
||||
if (cali_select_idx >= 0) {
|
||||
if (ams_id == VIRTUAL_TRAY_MAIN_ID || ams_id == VIRTUAL_TRAY_DEPUTY_ID) {
|
||||
for (auto slot : obj->vt_slot) {
|
||||
if (slot.id == std::to_string(ams_id))
|
||||
cali_select_idx = CalibUtils::get_selected_calib_idx(m_pa_profile_items, slot.cali_idx);
|
||||
}
|
||||
|
||||
if (cali_select_idx >= 0)
|
||||
m_comboBox_cali_result->SetSelection(cali_select_idx);
|
||||
}
|
||||
else {
|
||||
else
|
||||
m_comboBox_cali_result->SetSelection(0);
|
||||
}
|
||||
}
|
||||
else {
|
||||
Ams* selected_ams = this->obj->amsList[std::to_string(ams_id)];
|
||||
if(!selected_ams)
|
||||
return;
|
||||
AmsTray* selected_tray = selected_ams->trayList[std::to_string(slot_id)];
|
||||
if(!selected_tray)
|
||||
return;
|
||||
cali_select_idx = CalibUtils::get_selected_calib_idx(m_pa_profile_items, selected_tray->cali_idx);
|
||||
if (cali_select_idx < 0) {
|
||||
BOOST_LOG_TRIVIAL(info) << "extrusion_cali_status_error: cannot find pa profile, ams_id = " << ams_id
|
||||
<< ", slot_id = " << slot_id << ", cali_idx = " << selected_tray->cali_idx;
|
||||
cali_select_idx = 0;
|
||||
if (this->obj->amsList.find(std::to_string(ams_id)) != this->obj->amsList.end()) {
|
||||
Ams* selected_ams = this->obj->amsList[std::to_string(ams_id)];
|
||||
if (!selected_ams)
|
||||
return;
|
||||
AmsTray* selected_tray = selected_ams->trayList[std::to_string(slot_id)];
|
||||
if (!selected_tray)
|
||||
return;
|
||||
cali_select_idx = CalibUtils::get_selected_calib_idx(m_pa_profile_items, selected_tray->cali_idx);
|
||||
if (cali_select_idx < 0) {
|
||||
BOOST_LOG_TRIVIAL(info) << "extrusion_cali_status_error: cannot find pa profile, ams_id = " << ams_id
|
||||
<< ", slot_id = " << slot_id << ", cali_idx = " << selected_tray->cali_idx;
|
||||
cali_select_idx = 0;
|
||||
}
|
||||
m_comboBox_cali_result->SetSelection(cali_select_idx);
|
||||
}
|
||||
m_comboBox_cali_result->SetSelection(cali_select_idx);
|
||||
}
|
||||
|
||||
if (cali_select_idx >= 0) {
|
||||
|
|
Loading…
Reference in New Issue