Fix build

This commit is contained in:
Noisyfox
2025-08-19 10:20:08 +08:00
parent 7834f468d1
commit cd321f1711
3 changed files with 26 additions and 4 deletions

View File

@@ -782,7 +782,7 @@ void CalibrationPresetPage::create_multi_extruder_filament_list_panel(wxWindow *
m_main_ams_preview_list.push_back(preview_ams_item);
size_t index = m_main_ams_preview_list.size() - 1;
preview_ams_item->Bind(wxEVT_LEFT_DOWN, [this, index](wxMouseEvent &e) {
update_multi_extruder_filament_combobox(m_main_ams_preview_list[index]->m_amsinfo.ams_id, 0);
update_multi_extruder_filament_combobox(m_main_ams_preview_list[index]->get_ams_id(), 0);
e.Skip();
});
ams_items_sizer->Add(preview_ams_item, 0, wxALIGN_CENTER | wxRIGHT, FromDIP(6));
@@ -841,7 +841,7 @@ void CalibrationPresetPage::create_multi_extruder_filament_list_panel(wxWindow *
m_deputy_ams_preview_list.push_back(preview_ams_item);
size_t index = m_deputy_ams_preview_list.size() - 1;
preview_ams_item->Bind(wxEVT_LEFT_DOWN, [this, index](wxMouseEvent &e) {
update_multi_extruder_filament_combobox(m_deputy_ams_preview_list[index]->m_amsinfo.ams_id, 1);
update_multi_extruder_filament_combobox(m_deputy_ams_preview_list[index]->get_ams_id(), 1);
e.Skip();
});
ams_items_sizer->Add(preview_ams_item, 0, wxALIGN_CENTER | wxRIGHT, FromDIP(6));
@@ -1780,7 +1780,7 @@ void CalibrationPresetPage::init_with_machine(MachineObject* obj)
if (obj->is_multi_extruders()) {
for (int i = 0; i < m_comboBox_nozzle_volume_types.size(); ++i) {
m_comboBox_nozzle_volume_types[i]->Show();
m_comboBox_nozzle_volume_types[i]->SetSelection(obj->m_nozzle_data.nozzles[i].flow_type);
m_comboBox_nozzle_volume_types[i]->SetSelection(0);
}
if (obj->printer_type.find("O1D") != std::string::npos && m_main_extruder_on_left) {

View File

@@ -55,6 +55,7 @@ bool AMSinfo::parse_ams_info(MachineObject *obj, Ams *ams, bool remain_flag, boo
this->current_temperature = ams->current_temperature;
this->ams_type = AMSModel(ams->type);
nozzle_id = ams->nozzle;
cans.clear();
for (int i = 0; i < ams->trayList.size(); i++) {
auto it = ams->trayList.find(std::to_string(i));
@@ -119,6 +120,25 @@ bool AMSinfo::parse_ams_info(MachineObject *obj, Ams *ams, bool remain_flag, boo
return true;
}
void AMSinfo::ReadExtInfo(AmsTray tray) {
this->ams_id = tray.id;
this->ams_type = AMSModel::EXT_AMS;
Caninfo can;
can.can_id = std::to_string(0);
can.material_name = tray.filament_setting_id;
this->cans.push_back(can);
if (tray.id == std::to_string(VIRTUAL_TRAY_MAIN_ID)) {
this->nozzle_id = 0;
}
else {
this->nozzle_id = 1;
}
this->cans[0].material_state = AMSCanType::AMS_CAN_TYPE_VIRTUAL;
this->cans[0].material_colour = tray.decode_color(tray.color);
this->cans[0].material_remain = tray.remain;
this->cans[0].material_name = tray.type;
}
/*************************************************
Description:AMSrefresh
**************************************************/

View File

@@ -176,6 +176,7 @@ struct AMSinfo
public:
std::string ams_id;
std::vector<Caninfo> cans;
int nozzle_id = 0;
std::string current_can_id;
AMSPassRoadSTEP current_step;
AMSAction current_action;
@@ -191,6 +192,7 @@ public:
{
if (ams_id == other.ams_id &&
cans == other.cans &&
nozzle_id == other.nozzle_id &&
current_can_id == other.current_can_id &&
current_step == other.current_step &&
current_action == other.current_action &&
@@ -217,7 +219,7 @@ public:
};
bool parse_ams_info(MachineObject* obj, Ams *ams, bool remain_flag = false, bool humidity_flag = false);
void ReadExtInfo(AmsTray tray);
bool support_drying() const { return (ams_type == AMSModel::N3S_AMS) || (ams_type == AMSModel::N3F_AMS); };
};