FIX: fix crash
jira: NONE Change-Id: I95ef9a8aefbbb8de7caa9c9b46de7cb3f60e0989
This commit is contained in:
parent
fe1d241a16
commit
93a9b16494
|
@ -3825,6 +3825,15 @@ void AMSControl::UpdateAms(std::vector<AMSinfo> ams_info, std::vector<AMSinfo>ex
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
for (auto ams_prv : m_ams_preview_list) {
|
||||||
|
std::string id = ams_prv.second->m_amsinfo.ams_id;
|
||||||
|
auto item = m_ams_item_list.find(id);
|
||||||
|
if (item != m_ams_item_list.end())
|
||||||
|
{
|
||||||
|
ams_prv.second->Update(item->second->m_info);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/*if (m_current_show_ams.empty() && !is_reset) {
|
/*if (m_current_show_ams.empty() && !is_reset) {
|
||||||
if (ext_info.size() > 0) {
|
if (ext_info.size() > 0) {
|
||||||
SwitchAms(ext_info[0].ams_id);
|
SwitchAms(ext_info[0].ams_id);
|
||||||
|
|
|
@ -111,7 +111,8 @@ bool AMSinfo::parse_ams_info(MachineObject *obj, Ams *ams, bool remain_flag, boo
|
||||||
info.n = it->second->n;
|
info.n = it->second->n;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
info.can_id = i;
|
//info.can_id = i;
|
||||||
|
info.can_id = std::to_string(i);
|
||||||
info.material_state = AMSCanType::AMS_CAN_TYPE_EMPTY;
|
info.material_state = AMSCanType::AMS_CAN_TYPE_EMPTY;
|
||||||
}
|
}
|
||||||
cans.push_back(info);
|
cans.push_back(info);
|
||||||
|
@ -1997,7 +1998,7 @@ void AMSRoadUpPart::doRender(wxDC& dc)
|
||||||
dc.SetPen(wxPen(AMS_CONTROL_GRAY500, 2, wxSOLID));
|
dc.SetPen(wxPen(AMS_CONTROL_GRAY500, 2, wxSOLID));
|
||||||
dc.SetBrush(wxBrush(*wxTRANSPARENT_BRUSH));
|
dc.SetBrush(wxBrush(*wxTRANSPARENT_BRUSH));
|
||||||
|
|
||||||
if (m_ams_model == SINGLE_AMS || m_ams_model == NO_AMS){
|
if ((m_ams_model == SINGLE_AMS || m_ams_model == NO_AMS) && m_amsinfo.cans.size() != 4){
|
||||||
dc.DrawLine(FromDIP(size.x / 2), FromDIP(0), FromDIP(size.x / 2), FromDIP(size.y));
|
dc.DrawLine(FromDIP(size.x / 2), FromDIP(0), FromDIP(size.x / 2), FromDIP(size.y));
|
||||||
if (m_load_step == AMSPassRoadSTEP::AMS_ROAD_STEP_2 || m_load_step == AMSPassRoadSTEP::AMS_ROAD_STEP_3){
|
if (m_load_step == AMSPassRoadSTEP::AMS_ROAD_STEP_2 || m_load_step == AMSPassRoadSTEP::AMS_ROAD_STEP_3){
|
||||||
dc.SetPen(wxPen(m_amsinfo.cans[m_load_slot_index].material_colour, 4, wxSOLID));
|
dc.SetPen(wxPen(m_amsinfo.cans[m_load_slot_index].material_colour, 4, wxSOLID));
|
||||||
|
@ -2868,8 +2869,9 @@ void AmsItem::Update(AMSinfo info)
|
||||||
m_info = info;
|
m_info = info;
|
||||||
m_can_count = info.cans.size();
|
m_can_count = info.cans.size();
|
||||||
|
|
||||||
int i = 0;
|
|
||||||
for (auto refresh_it : m_can_refresh_list) {
|
for (auto refresh_it : m_can_refresh_list) {
|
||||||
|
int i = 0;
|
||||||
AMSrefresh *refresh = refresh_it.second;
|
AMSrefresh *refresh = refresh_it.second;
|
||||||
if (i < m_can_count) {
|
if (i < m_can_count) {
|
||||||
refresh->Update(info.ams_id, info.cans[i]);
|
refresh->Update(info.ams_id, info.cans[i]);
|
||||||
|
@ -2882,14 +2884,15 @@ void AmsItem::Update(AMSinfo info)
|
||||||
|
|
||||||
for (int i = 0; i < m_can_lib_list.size(); i++) {
|
for (int i = 0; i < m_can_lib_list.size(); i++) {
|
||||||
AMSLib* lib = m_can_lib_list[std::to_string(i)];
|
AMSLib* lib = m_can_lib_list[std::to_string(i)];
|
||||||
if (i < m_can_count && lib != nullptr) {
|
if (lib != nullptr){
|
||||||
|
if (i < m_can_count){
|
||||||
lib->Update(info.cans[i], info.ams_id);
|
lib->Update(info.cans[i], info.ams_id);
|
||||||
lib->Show();
|
lib->Show();
|
||||||
}
|
}
|
||||||
else {
|
else{
|
||||||
lib->Hide();
|
lib->Hide();
|
||||||
}
|
}
|
||||||
i++;
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (true || m_ams_model == AMSModel::GENERIC_AMS) {
|
if (true || m_ams_model == AMSModel::GENERIC_AMS) {
|
||||||
|
|
Loading…
Reference in New Issue