FIX: complete the AMS fresh while state changed
jira: [STUDIO-10305] Change-Id: Ie6cbc359bdf9fe02f103f58e25f490105faaf381
This commit is contained in:
parent
cfeb574422
commit
9d7c9c54fc
|
@ -2707,7 +2707,7 @@ std::string AMSControl::GetCurrentCan(std::string amsid)
|
|||
if (item == nullptr){
|
||||
continue;
|
||||
}
|
||||
if (item->m_info.ams_id == amsid) {
|
||||
if (item->get_ams_id() == amsid) {
|
||||
current_can = item->GetCurrentCan();
|
||||
return current_can;
|
||||
}
|
||||
|
@ -2717,7 +2717,7 @@ std::string AMSControl::GetCurrentCan(std::string amsid)
|
|||
|
||||
bool AMSControl::IsAmsInRightPanel(std::string ams_id) {
|
||||
if (m_extder_data.total_extder_count == 2){
|
||||
if (m_ams_item_list.find(ams_id) != m_ams_item_list.end() && m_ams_item_list[ams_id]->m_info.nozzle_id == MAIN_NOZZLE_ID){
|
||||
if (m_ams_item_list.find(ams_id) != m_ams_item_list.end() && m_ams_item_list[ams_id]->get_nozzle_id() == MAIN_NOZZLE_ID) {
|
||||
return true;
|
||||
}
|
||||
else{
|
||||
|
@ -2743,7 +2743,8 @@ void AMSControl::AmsSelectedSwitch(wxCommandEvent& event) {
|
|||
auto item = m_ams_item_list[m_current_show_ams_left];
|
||||
if (!item) return;
|
||||
try{
|
||||
for (auto can : item->m_can_lib_list){
|
||||
const auto& can_lib_list = item->get_can_lib_list();
|
||||
for (auto can : can_lib_list) {
|
||||
can.second->UnSelected();
|
||||
}
|
||||
}
|
||||
|
@ -2755,7 +2756,8 @@ void AMSControl::AmsSelectedSwitch(wxCommandEvent& event) {
|
|||
auto item = m_ams_item_list[m_current_show_ams_right];
|
||||
if (!item) return;
|
||||
try {
|
||||
for (auto can : item->m_can_lib_list) {
|
||||
const auto &can_lib_list = item->get_can_lib_list();
|
||||
for (auto can : can_lib_list) {
|
||||
can.second->UnSelected();
|
||||
}
|
||||
}
|
||||
|
@ -3320,12 +3322,11 @@ void AMSControl::UpdateAms(std::vector<AMSinfo> ams_info, std::vector<AMSinfo>ex
|
|||
if (ams_item.second == nullptr){
|
||||
continue;
|
||||
}
|
||||
std::string ams_id = ams_item.second->m_info.ams_id;
|
||||
std::string ams_id = ams_item.second->get_ams_id();
|
||||
AmsItem* cans = ams_item.second;
|
||||
if (cans->m_info.ams_id == std::to_string(VIRTUAL_TRAY_MAIN_ID) || cans->m_info.ams_id == std::to_string(VIRTUAL_TRAY_DEPUTY_ID)){
|
||||
if (cans->get_ams_id() == std::to_string(VIRTUAL_TRAY_MAIN_ID) || cans->get_ams_id() == std::to_string(VIRTUAL_TRAY_DEPUTY_ID)) {
|
||||
for (auto ifo : m_ext_info) {
|
||||
if (ifo.ams_id == ams_id) {
|
||||
cans->m_info = ifo;
|
||||
cans->Update(ifo);
|
||||
cans->show_sn_value(m_ams_model == AMSModel::AMS_LITE ? false : true);
|
||||
}
|
||||
|
@ -3334,7 +3335,6 @@ void AMSControl::UpdateAms(std::vector<AMSinfo> ams_info, std::vector<AMSinfo>ex
|
|||
else{
|
||||
for (auto ifo : m_ams_info) {
|
||||
if (ifo.ams_id == ams_id) {
|
||||
cans->m_info = ifo;
|
||||
cans->Update(ifo);
|
||||
cans->show_sn_value(m_ams_model == AMSModel::AMS_LITE ? false : true);
|
||||
}
|
||||
|
@ -3346,8 +3346,7 @@ void AMSControl::UpdateAms(std::vector<AMSinfo> ams_info, std::vector<AMSinfo>ex
|
|||
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);
|
||||
{ ams_prv.second->Update(item->second->get_ams_info());
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -3402,10 +3401,9 @@ void AMSControl::UpdateAms(std::vector<AMSinfo> ams_info, std::vector<AMSinfo>ex
|
|||
for (auto ams_item : m_ams_item_list) {
|
||||
std::string ams_id = ams_item.first;
|
||||
AmsItem* cans = ams_item.second;
|
||||
if (atoi(cans->m_info.ams_id.c_str()) >= VIRTUAL_TRAY_DEPUTY_ID) {
|
||||
if (atoi(cans->get_ams_id().c_str()) >= VIRTUAL_TRAY_DEPUTY_ID) {
|
||||
for (auto ifo : m_ext_info) {
|
||||
if (ifo.ams_id == ams_id) {
|
||||
cans->m_info = ifo;
|
||||
cans->Update(ifo);
|
||||
cans->show_sn_value(m_ams_model == AMSModel::AMS_LITE ? false : true);
|
||||
}
|
||||
|
@ -3414,7 +3412,6 @@ void AMSControl::UpdateAms(std::vector<AMSinfo> ams_info, std::vector<AMSinfo>ex
|
|||
else {
|
||||
for (auto ifo : m_ams_info) {
|
||||
if (ifo.ams_id == ams_id) {
|
||||
cans->m_info = ifo;
|
||||
cans->Update(ifo);
|
||||
cans->show_sn_value(m_ams_model == AMSModel::AMS_LITE ? false : true);
|
||||
}
|
||||
|
@ -3459,7 +3456,7 @@ void AMSControl::AddAmsPreview(AMSinfo info, AMSModel type)
|
|||
void AMSControl::createAms(wxSimplebook* parent, int& idx, AMSinfo info, AMSPanelPos pos) {
|
||||
auto ams_item = new AmsItem(parent, info, info.ams_type, pos);
|
||||
parent->InsertPage(idx, ams_item, wxEmptyString, true);
|
||||
ams_item->m_selection = idx;
|
||||
ams_item->set_selection(idx);
|
||||
idx++;
|
||||
|
||||
m_ams_item_list[info.ams_id] = ams_item;
|
||||
|
@ -3478,9 +3475,9 @@ AMSRoadShowMode AMSControl::findFirstMode(AMSPanelPos pos) {
|
|||
auto item = m_ams_item_list.find(ams_id);
|
||||
if (ams_id.empty() || item == m_ams_item_list.end()) return init_mode;
|
||||
|
||||
if (item->second->m_info.cans.size() == GENERIC_AMS_SLOT_NUM){
|
||||
if (item->second->m_info.ams_type == AMSModel::AMS_LITE) return AMSRoadShowMode::AMS_ROAD_MODE_AMS_LITE;
|
||||
if (item->second->m_info.ams_type == AMSModel::EXT_AMS && item->second->m_info.ext_type == AMSModelOriginType::LITE_EXT) return AMSRoadShowMode::AMS_ROAD_MODE_AMS_LITE;
|
||||
if (item->second->get_can_count() == GENERIC_AMS_SLOT_NUM) {
|
||||
if (item->second->get_ams_model() == AMSModel::AMS_LITE) return AMSRoadShowMode::AMS_ROAD_MODE_AMS_LITE;
|
||||
if (item->second->get_ams_model() == AMSModel::EXT_AMS && item->second->get_ext_type() == AMSModelOriginType::LITE_EXT) return AMSRoadShowMode::AMS_ROAD_MODE_AMS_LITE;
|
||||
return AMSRoadShowMode::AMS_ROAD_MODE_FOUR;
|
||||
}
|
||||
else{
|
||||
|
@ -3489,7 +3486,7 @@ AMSRoadShowMode AMSControl::findFirstMode(AMSPanelPos pos) {
|
|||
return AMSRoadShowMode::AMS_ROAD_MODE_DOUBLE;
|
||||
}
|
||||
}
|
||||
if (item->second->m_info.ams_type == AMSModel::EXT_AMS && item->second->m_info.ext_type == AMSModelOriginType::LITE_EXT) return AMSRoadShowMode::AMS_ROAD_MODE_AMS_LITE;
|
||||
if (item->second->get_ams_model() == AMSModel::EXT_AMS && item->second->get_ext_type() == AMSModelOriginType::LITE_EXT) return AMSRoadShowMode::AMS_ROAD_MODE_AMS_LITE;
|
||||
return AMSRoadShowMode::AMS_ROAD_MODE_SINGLE;
|
||||
}
|
||||
}
|
||||
|
@ -3517,11 +3514,10 @@ void AMSControl::createAmsPanel(wxSimplebook* parent, int& idx, std::vector<AMSi
|
|||
}
|
||||
}
|
||||
else { //only an ext in a panel
|
||||
if (ams1->m_ext_image) {
|
||||
ams1->m_ext_image->setShowState(false);
|
||||
if (ams1->get_ext_image()) { ams1->get_ext_image()->setShowState(false);
|
||||
}
|
||||
if (ams1->m_info.ams_type == AMSModel::EXT_AMS){
|
||||
if (ams1->m_info.ext_type == LITE_EXT){
|
||||
if (ams1->get_ams_model() == AMSModel::EXT_AMS) {
|
||||
if (ams1->get_ext_type() == LITE_EXT) {
|
||||
//book_sizer->Add(ams1, 0, wxALIGN_CENTER_HORIZONTAL, 0);
|
||||
book_sizer->Add(ams1, 0, wxLEFT, (book_panel->GetSize().x - ams1->GetSize().x) / 2);
|
||||
}
|
||||
|
@ -3540,11 +3536,11 @@ void AMSControl::createAmsPanel(wxSimplebook* parent, int& idx, std::vector<AMSi
|
|||
|
||||
parent->InsertPage(idx, book_panel, wxEmptyString, true);
|
||||
ams1->SetBackgroundColour(StateColor::darkModeColorFor(AMS_CONTROL_DEF_LIB_BK_COLOUR));
|
||||
ams1->m_selection = idx;
|
||||
ams1->set_selection(idx);
|
||||
m_ams_item_list[infos[0].ams_id] = ams1;
|
||||
if (ams2) {
|
||||
ams2->SetBackgroundColour(StateColor::darkModeColorFor(AMS_CONTROL_DEF_LIB_BK_COLOUR));
|
||||
ams2->m_selection = idx;
|
||||
ams2->set_selection(idx);
|
||||
m_ams_item_list[infos[1].ams_id] = ams2;
|
||||
}
|
||||
idx++;
|
||||
|
@ -3707,8 +3703,8 @@ void AMSControl::SwitchAms(std::string ams_id)
|
|||
bool ready_selected = false;
|
||||
for (auto item_it : m_ams_item_list) {
|
||||
AmsItem* item = item_it.second;
|
||||
if (item->m_info.ams_id == ams_id) {
|
||||
for (auto lib_it : item->m_can_lib_list) {
|
||||
if (item->get_ams_id() == ams_id) {
|
||||
for (auto lib_it : item->get_can_lib_list()) {
|
||||
AMSLib* lib = lib_it.second;
|
||||
if (lib->is_selected()) {
|
||||
ready_selected = true;
|
||||
|
@ -3738,14 +3734,14 @@ void AMSControl::SwitchAms(std::string ams_id)
|
|||
|
||||
for (auto ams_item : m_ams_item_list) {
|
||||
AmsItem* item = ams_item.second;
|
||||
if (item->m_info.ams_id == ams_id) {
|
||||
auto ids = item->m_panel_pos == AMSPanelPos::LEFT_PANEL ? m_item_ids[DEPUTY_NOZZLE_ID] : m_item_ids[MAIN_NOZZLE_ID];
|
||||
auto pos = item->m_panel_pos;
|
||||
if (item->get_ams_id() == ams_id) {
|
||||
auto ids = item->get_panel_pos() == AMSPanelPos::LEFT_PANEL ? m_item_ids[DEPUTY_NOZZLE_ID] : m_item_ids[MAIN_NOZZLE_ID];
|
||||
auto pos = item->get_panel_pos();
|
||||
for (auto id : ids) {
|
||||
if (id == item->m_info.ams_id) {
|
||||
pos == AMSPanelPos::LEFT_PANEL ? m_simplebook_ams_left->SetSelection(item->m_selection) : m_simplebook_ams_right->SetSelection(item->m_selection);
|
||||
if (item->m_info.cans.size() == GENERIC_AMS_SLOT_NUM) {
|
||||
if (item->m_info.ams_type == AMSModel::AMS_LITE) {
|
||||
if (id == item->get_ams_id()) {
|
||||
pos == AMSPanelPos::LEFT_PANEL ? m_simplebook_ams_left->SetSelection(item->get_selection()) : m_simplebook_ams_right->SetSelection(item->get_selection());
|
||||
if (item->get_can_count() == GENERIC_AMS_SLOT_NUM) {
|
||||
if (item->get_ams_model() == AMSModel::AMS_LITE) {
|
||||
if (pos == AMSPanelPos::LEFT_PANEL) {
|
||||
m_down_road->UpdateLeft(m_extder_data.total_extder_count, AMSRoadShowMode::AMS_ROAD_MODE_AMS_LITE);
|
||||
} else {
|
||||
|
@ -3831,10 +3827,10 @@ void AMSControl::SetExtruder(bool on_off, std::string ams_id, std::string slot_i
|
|||
return;
|
||||
}
|
||||
if (!on_off) {
|
||||
m_extruder->OnAmsLoading(false, item->m_info.nozzle_id);
|
||||
m_extruder->OnAmsLoading(false, item->get_nozzle_id());
|
||||
} else {
|
||||
auto col = item->GetTagColr(slot_id);
|
||||
m_extruder->OnAmsLoading(true, item->m_info.nozzle_id, col);
|
||||
m_extruder->OnAmsLoading(true, item->get_nozzle_id(), col);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -3883,11 +3879,10 @@ void AMSControl::SetAmsStep(std::string ams_id, std::string canid, AMSPassRoadTy
|
|||
}
|
||||
|
||||
//Set path length in different case
|
||||
if (ams->m_info.cans.size() == GENERIC_AMS_SLOT_NUM){
|
||||
if (ams->get_can_count() == GENERIC_AMS_SLOT_NUM) {
|
||||
length = left ? 129 : 145;
|
||||
model = ams->m_info.ams_type;
|
||||
}
|
||||
else if (ams->m_info.cans.size() == 1){
|
||||
model = ams->get_ams_model();
|
||||
} else if (ams->get_can_count() == 1) {
|
||||
for (auto it : pair_id){
|
||||
if (it.first == ams_id){
|
||||
length = left ? 218 : 124;
|
||||
|
@ -3900,12 +3895,12 @@ void AMSControl::SetAmsStep(std::string ams_id, std::string canid, AMSPassRoadTy
|
|||
break;
|
||||
}
|
||||
}
|
||||
model = ams->m_info.ams_type;
|
||||
model = ams->get_ams_model();
|
||||
}
|
||||
if (model == AMSModel::AMS_LITE){
|
||||
length = left ? 145 : 45;
|
||||
}
|
||||
if (model == EXT_AMS && ams->m_info.ext_type == AMSModelOriginType::LITE_EXT){
|
||||
if (model == EXT_AMS && ams->get_ext_type() == AMSModelOriginType::LITE_EXT) {
|
||||
|
||||
if (m_ams_info.size() == 0 && m_ext_info.size() == 1) {
|
||||
length = 13;
|
||||
|
@ -3914,7 +3909,7 @@ void AMSControl::SetAmsStep(std::string ams_id, std::string canid, AMSPassRoadTy
|
|||
}
|
||||
}
|
||||
|
||||
if (model == EXT_AMS && ams->m_info.ext_type == AMSModelOriginType::GENERIC_EXT){
|
||||
if (model == EXT_AMS && ams->get_ext_type() == AMSModelOriginType::GENERIC_EXT) {
|
||||
if (m_ams_info.size() == 0 && m_ext_info.size() == 1) {
|
||||
left = true;
|
||||
length = 50;
|
||||
|
@ -3944,7 +3939,7 @@ void AMSControl::SetAmsStep(std::string ams_id, std::string canid, AMSPassRoadTy
|
|||
|
||||
AMSinfo info;
|
||||
if (m_ams_item_list.find(ams_id) != m_ams_item_list.end()) {
|
||||
info = m_ams_item_list[ams_id]->m_info;
|
||||
info = m_ams_item_list[ams_id]->get_ams_info();
|
||||
}
|
||||
else{
|
||||
return;
|
||||
|
@ -3961,7 +3956,7 @@ void AMSControl::SetAmsStep(std::string ams_id, std::string canid, AMSPassRoadTy
|
|||
ams->SetAmsStep(ams_id, canid, type, AMSPassRoadSTEP::AMS_ROAD_STEP_NONE);
|
||||
if (ams_id_left == ams_id || ams_id_right == ams_id || in_same_page) {
|
||||
m_down_road->UpdatePassRoad(pos, -1, AMSPassRoadSTEP::AMS_ROAD_STEP_NONE);
|
||||
m_extruder->OnAmsLoading(false, ams->m_info.nozzle_id);
|
||||
m_extruder->OnAmsLoading(false, ams->get_nozzle_id());
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -3969,7 +3964,7 @@ void AMSControl::SetAmsStep(std::string ams_id, std::string canid, AMSPassRoadTy
|
|||
ams->SetAmsStep(ams_id, canid, type, AMSPassRoadSTEP::AMS_ROAD_STEP_1);
|
||||
if (ams_id_left == ams_id || ams_id_right == ams_id || in_same_page) {
|
||||
m_down_road->UpdatePassRoad(pos, length, AMSPassRoadSTEP::AMS_ROAD_STEP_1);
|
||||
m_extruder->OnAmsLoading(false, ams->m_info.nozzle_id);
|
||||
m_extruder->OnAmsLoading(false, ams->get_nozzle_id());
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -3981,7 +3976,7 @@ void AMSControl::SetAmsStep(std::string ams_id, std::string canid, AMSPassRoadTy
|
|||
ams->SetAmsStep(ams_id, canid, type, AMSPassRoadSTEP::AMS_ROAD_STEP_2);
|
||||
if (ams_id_left == ams_id || ams_id_right == ams_id || in_same_page) {
|
||||
m_down_road->UpdatePassRoad(pos, length, AMSPassRoadSTEP::AMS_ROAD_STEP_2);
|
||||
m_extruder->OnAmsLoading(true, ams->m_info.nozzle_id, ams->GetTagColr(canid));
|
||||
m_extruder->OnAmsLoading(true, ams->get_nozzle_id(), ams->GetTagColr(canid));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -3993,7 +3988,7 @@ void AMSControl::SetAmsStep(std::string ams_id, std::string canid, AMSPassRoadTy
|
|||
if (ams_id_left == ams_id || ams_id_right == ams_id || in_same_page)
|
||||
{
|
||||
m_down_road->UpdatePassRoad(pos, length, AMSPassRoadSTEP::AMS_ROAD_STEP_3);
|
||||
m_extruder->OnAmsLoading(true, ams->m_info.nozzle_id, ams->GetTagColr(canid));
|
||||
m_extruder->OnAmsLoading(true, ams->get_nozzle_id(), ams->GetTagColr(canid));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
|
@ -1917,8 +1917,11 @@ void AMSRoadUpPart::create(wxWindow* parent, wxWindowID id, const wxPoint& pos,
|
|||
|
||||
void AMSRoadUpPart::Update(AMSinfo amsinfo)
|
||||
{
|
||||
m_amsinfo = amsinfo;
|
||||
Refresh();
|
||||
if (m_amsinfo != amsinfo)
|
||||
{
|
||||
m_amsinfo = amsinfo;
|
||||
Refresh();
|
||||
}
|
||||
}
|
||||
|
||||
void AMSRoadUpPart::OnVamsLoading(bool load, wxColour col /*= AMS_CONTROL_GRAY500*/)
|
||||
|
@ -1928,12 +1931,22 @@ void AMSRoadUpPart::OnVamsLoading(bool load, wxColour col /*= AMS_CONTROL_GRAY50
|
|||
Refresh();*/
|
||||
}
|
||||
|
||||
void AMSRoadUpPart::SetPassRoadColour(wxColour col) { m_road_color = col; }
|
||||
void AMSRoadUpPart::SetPassRoadColour(wxColour col)
|
||||
{
|
||||
if (m_road_color != col)
|
||||
{
|
||||
m_road_color = col;
|
||||
Refresh();
|
||||
}
|
||||
}
|
||||
|
||||
void AMSRoadUpPart::SetMode(AMSRoadShowMode mode)
|
||||
{
|
||||
m_road_mode = mode;
|
||||
Refresh();
|
||||
if (m_road_mode != mode)
|
||||
{
|
||||
m_road_mode = mode;
|
||||
Refresh();
|
||||
}
|
||||
}
|
||||
|
||||
void AMSRoadUpPart::paintEvent(wxPaintEvent& evt)
|
||||
|
@ -2019,10 +2032,19 @@ void AMSRoadUpPart::doRender(wxDC& dc)
|
|||
// left mode
|
||||
}
|
||||
|
||||
void AMSRoadUpPart::UpdatePassRoad(std::string ams_index, std::string slot_index, AMSPassRoadType type, AMSPassRoadSTEP step) {
|
||||
m_load_ams_index = atoi(ams_index.c_str());
|
||||
m_load_slot_index = atoi(slot_index.c_str());
|
||||
void AMSRoadUpPart::UpdatePassRoad(std::string ams_index, std::string slot_index, AMSPassRoadType type, AMSPassRoadSTEP step)
|
||||
{
|
||||
int ams_idx = atoi(ams_index.c_str());
|
||||
int slot_idx = atoi(slot_index.c_str());
|
||||
if (m_load_ams_index == ams_idx && m_load_slot_index == slot_idx && m_load_step == step)
|
||||
{
|
||||
return;
|
||||
};
|
||||
|
||||
m_load_ams_index = ams_idx;
|
||||
m_load_slot_index = slot_idx;
|
||||
m_load_step = step;
|
||||
Refresh();
|
||||
}
|
||||
|
||||
void AMSRoadUpPart::OnPassRoad(std::vector<AMSPassRoadMode> prord_list)
|
||||
|
@ -2069,25 +2091,18 @@ AMSRoadDownPart::AMSRoadDownPart(wxWindow* parent, wxWindowID id, const wxPoint&
|
|||
|
||||
void AMSRoadDownPart::create(wxWindow* parent, wxWindowID id, const wxPoint& pos, const wxSize& size) { wxWindow::Create(parent, id, pos, size); }
|
||||
|
||||
//void AMSRoadDownPart::Update(int nozzle_num, AMSRoadShowMode left_mode, AMSRoadShowMode right_mode, int left_len, int right_len)
|
||||
//{
|
||||
// this->m_nozzle_num = nozzle_num;
|
||||
// this->m_left_rode_mode = left_mode;
|
||||
// this->m_right_rode_mode = right_mode;
|
||||
//
|
||||
// m_left_road_length = left_len;
|
||||
// m_right_road_length = right_len;
|
||||
// m_selected = false;
|
||||
//
|
||||
// Refresh();
|
||||
//}
|
||||
void AMSRoadDownPart::UpdateLeft(int nozzle_num, AMSRoadShowMode mode)
|
||||
{
|
||||
if (nozzle_num == m_nozzle_num && m_left_rode_mode == mode) { return;}
|
||||
|
||||
void AMSRoadDownPart::UpdateLeft(int nozzle_num, AMSRoadShowMode mode) {
|
||||
this->m_left_rode_mode = mode;
|
||||
m_nozzle_num = nozzle_num;
|
||||
Refresh();
|
||||
}
|
||||
void AMSRoadDownPart::UpdateRight(int nozzle_num, AMSRoadShowMode mode) {
|
||||
void AMSRoadDownPart::UpdateRight(int nozzle_num, AMSRoadShowMode mode)
|
||||
{
|
||||
if (nozzle_num == m_nozzle_num && m_right_rode_mode == mode) { return; }
|
||||
|
||||
this->m_right_rode_mode = mode;
|
||||
m_nozzle_num = nozzle_num;
|
||||
Refresh();
|
||||
|
@ -2102,20 +2117,33 @@ void AMSRoadDownPart::OnVamsLoading(bool load, wxColour col /*= AMS_CONTROL_GRAY
|
|||
|
||||
void AMSRoadDownPart::SetPassRoadColour(bool left, wxColour col)
|
||||
{
|
||||
if (left){
|
||||
if (left)
|
||||
{
|
||||
if (m_road_color[DEPUTY_NOZZLE_ID] == col)
|
||||
{
|
||||
return;
|
||||
}
|
||||
m_road_color[DEPUTY_NOZZLE_ID] = col;
|
||||
}
|
||||
else{
|
||||
else
|
||||
{
|
||||
if (m_road_color[MAIN_NOZZLE_ID] == col)
|
||||
{
|
||||
return;
|
||||
}
|
||||
m_road_color[MAIN_NOZZLE_ID] = col;
|
||||
}
|
||||
|
||||
Refresh();
|
||||
}
|
||||
|
||||
//void AMSRoadDownPart::SetMode(AMSRoadDownPartMode mode) {
|
||||
//
|
||||
//}
|
||||
void AMSRoadDownPart::SetShowMode(AMSRoadShowMode left_mode, AMSRoadShowMode right_mode) {
|
||||
void AMSRoadDownPart::SetShowMode(AMSRoadShowMode left_mode, AMSRoadShowMode right_mode)
|
||||
{
|
||||
if (m_left_rode_mode == left_mode && m_right_rode_mode == right_mode) { return; }
|
||||
|
||||
m_left_rode_mode = left_mode;
|
||||
m_right_rode_mode = right_mode;
|
||||
Refresh();
|
||||
}
|
||||
|
||||
void AMSRoadDownPart::paintEvent(wxPaintEvent& evt)
|
||||
|
|
|
@ -236,6 +236,16 @@ public:
|
|||
return false;
|
||||
};
|
||||
|
||||
bool operator!=(const AMSinfo &other) const
|
||||
{
|
||||
if (operator==(other))
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
return true;
|
||||
};
|
||||
|
||||
bool parse_ams_info(MachineObject* obj, Ams *ams, bool remain_flag = false, bool humidity_flag = false);
|
||||
void parse_ext_info(MachineObject* obj, AmsTray tray);
|
||||
};
|
||||
|
@ -530,29 +540,7 @@ public:
|
|||
void create(wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize);
|
||||
|
||||
public:
|
||||
AMSinfo m_amsinfo;
|
||||
//Caninfo m_info;
|
||||
int m_load_slot_index = { 0 };
|
||||
int m_load_ams_index = { 0 };
|
||||
//AMSRoadMode m_rode_mode = { AMSRoadMode::AMS_ROAD_MODE_LEFT_RIGHT };
|
||||
std::vector<AMSPassRoadMode> m_pass_rode_mode = { AMSPassRoadMode::AMS_ROAD_MODE_NONE };
|
||||
AMSRoadShowMode m_road_mode = { AMSRoadShowMode::AMS_ROAD_MODE_FOUR };
|
||||
AMSPassRoadSTEP m_load_step = { AMSPassRoadSTEP::AMS_ROAD_STEP_NONE };
|
||||
|
||||
bool m_selected = { false };
|
||||
int m_passroad_width = { 6 };
|
||||
double m_radius = { 4 };
|
||||
wxColour m_road_def_color;
|
||||
wxColour m_road_color;
|
||||
void Update(AMSinfo amsinfo);
|
||||
|
||||
std::vector<ScalableBitmap> ams_humidity_img;
|
||||
|
||||
|
||||
int m_humidity = { 0 };
|
||||
bool m_show_humidity = { false };
|
||||
bool m_vams_loading{ false };
|
||||
AMSModel m_ams_model;
|
||||
void Update(AMSinfo amsinfo);
|
||||
|
||||
void OnVamsLoading(bool load, wxColour col = AMS_CONTROL_GRAY500);
|
||||
void SetPassRoadColour(wxColour col);
|
||||
|
@ -565,6 +553,32 @@ public:
|
|||
void doRender(wxDC& dc);
|
||||
|
||||
void msw_rescale();
|
||||
|
||||
private:
|
||||
AMSinfo m_amsinfo;
|
||||
|
||||
// Caninfo m_info;
|
||||
|
||||
int m_load_slot_index = {0};
|
||||
int m_load_ams_index = {0};
|
||||
|
||||
// AMSRoadMode m_rode_mode = { AMSRoadMode::AMS_ROAD_MODE_LEFT_RIGHT };
|
||||
std::vector<AMSPassRoadMode> m_pass_rode_mode = {AMSPassRoadMode::AMS_ROAD_MODE_NONE};
|
||||
AMSRoadShowMode m_road_mode = {AMSRoadShowMode::AMS_ROAD_MODE_FOUR};
|
||||
AMSPassRoadSTEP m_load_step = {AMSPassRoadSTEP::AMS_ROAD_STEP_NONE};
|
||||
|
||||
bool m_selected = {false};
|
||||
int m_passroad_width = {6};
|
||||
double m_radius = {4};
|
||||
wxColour m_road_def_color;
|
||||
wxColour m_road_color;
|
||||
|
||||
std::vector<ScalableBitmap> ams_humidity_img;
|
||||
|
||||
int m_humidity = {0};
|
||||
bool m_show_humidity = {false};
|
||||
bool m_vams_loading{false};
|
||||
AMSModel m_ams_model;
|
||||
};
|
||||
|
||||
|
||||
|
@ -579,29 +593,9 @@ public:
|
|||
void create(wxWindow* parent, wxWindowID id = wxID_ANY, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxDefaultSize);
|
||||
|
||||
public:
|
||||
int m_nozzle_num = { 1 };
|
||||
AMSRoadShowMode m_single_ext_rode_mode = { AMSRoadShowMode::AMS_ROAD_MODE_FOUR };
|
||||
AMSRoadShowMode m_left_rode_mode = { AMSRoadShowMode::AMS_ROAD_MODE_FOUR };
|
||||
AMSRoadShowMode m_right_rode_mode = { AMSRoadShowMode::AMS_ROAD_MODE_FOUR };
|
||||
bool m_selected = { false };
|
||||
|
||||
int m_left_road_length = { -1 };
|
||||
int m_right_road_length = { -1 };
|
||||
int m_passroad_width = { 6 };
|
||||
double m_radius = { 4 };
|
||||
AMSPassRoadType m_pass_road_type = { AMSPassRoadType::AMS_ROAD_TYPE_NONE };
|
||||
AMSPassRoadSTEP m_pass_road_left_step = { AMSPassRoadSTEP::AMS_ROAD_STEP_NONE };
|
||||
AMSPassRoadSTEP m_pass_road_right_step = { AMSPassRoadSTEP::AMS_ROAD_STEP_NONE };
|
||||
|
||||
std::map<int, wxColour> m_road_color;
|
||||
|
||||
//void Update(AMSRoadDownPartMode nozzle, AMSRoadShowMode left_mode, AMSRoadShowMode right_mode, int left_len, int right_len);
|
||||
void UpdateLeft(int nozzle_num, AMSRoadShowMode mode);
|
||||
void UpdateRight(int nozzle_num, AMSRoadShowMode mode);
|
||||
|
||||
bool m_vams_loading{ false };
|
||||
|
||||
AMSModel m_ams_model;
|
||||
// void Update(AMSRoadDownPartMode nozzle, AMSRoadShowMode left_mode, AMSRoadShowMode right_mode, int left_len, int right_len);
|
||||
void UpdateLeft(int nozzle_num, AMSRoadShowMode mode);
|
||||
void UpdateRight(int nozzle_num, AMSRoadShowMode mode);
|
||||
|
||||
void OnVamsLoading(bool load, wxColour col = AMS_CONTROL_GRAY500);
|
||||
void SetPassRoadColour(bool left, wxColour col);
|
||||
|
@ -612,7 +606,26 @@ public:
|
|||
void render(wxDC& dc);
|
||||
void doRender(wxDC& dc);
|
||||
|
||||
void msw_rescale();
|
||||
void msw_rescale();
|
||||
|
||||
private:
|
||||
int m_nozzle_num = {1};
|
||||
AMSRoadShowMode m_single_ext_rode_mode = {AMSRoadShowMode::AMS_ROAD_MODE_FOUR};
|
||||
AMSRoadShowMode m_left_rode_mode = {AMSRoadShowMode::AMS_ROAD_MODE_FOUR};
|
||||
AMSRoadShowMode m_right_rode_mode = {AMSRoadShowMode::AMS_ROAD_MODE_FOUR};
|
||||
bool m_selected = {false};
|
||||
|
||||
int m_left_road_length = {-1};
|
||||
int m_right_road_length = {-1};
|
||||
int m_passroad_width = {6};
|
||||
double m_radius = {4};
|
||||
AMSPassRoadType m_pass_road_type = {AMSPassRoadType::AMS_ROAD_TYPE_NONE};
|
||||
AMSPassRoadSTEP m_pass_road_left_step = {AMSPassRoadSTEP::AMS_ROAD_STEP_NONE};
|
||||
AMSPassRoadSTEP m_pass_road_right_step = {AMSPassRoadSTEP::AMS_ROAD_STEP_NONE};
|
||||
|
||||
std::map<int, wxColour> m_road_color;
|
||||
bool m_vams_loading{false};
|
||||
AMSModel m_ams_model;
|
||||
};
|
||||
|
||||
/*************************************************
|
||||
|
@ -725,6 +738,24 @@ public:
|
|||
std::string GetCurrentCan();
|
||||
|
||||
public:
|
||||
AMSinfo get_ams_info() const { return m_info; };
|
||||
|
||||
std::string get_ams_id() const { return m_info.ams_id; };
|
||||
AMSModel get_ams_model() const { return m_info.ams_type; };
|
||||
|
||||
AMSModelOriginType get_ext_type() const { return m_info.ext_type; };
|
||||
AMSExtImage *get_ext_image() const { return m_ext_image; };
|
||||
|
||||
size_t get_can_count() const { return m_info.cans.size(); };
|
||||
std::map<std::string, AMSLib*> get_can_lib_list() const { return m_can_lib_list; };
|
||||
|
||||
int get_selection() const { return m_selection; };
|
||||
void set_selection(int selection) { m_selection = selection; };
|
||||
|
||||
AMSPanelPos get_panel_pos() const { return m_panel_pos; };
|
||||
int get_nozzle_id() const { return m_info.nozzle_id; };
|
||||
|
||||
private:
|
||||
ScalableBitmap m_bitmap_extra_framework;
|
||||
int m_canlib_selection = { -1 };
|
||||
int m_selection = { 0 };
|
||||
|
|
Loading…
Reference in New Issue