ENH: add sync button for cali preset page

and modify some UI part
jira: none

Change-Id: I9462a10adb7017a7038e5cd7e30cf393b63ae77b
(cherry picked from commit da68a52247c3a963b9d5df339da8f80ead617839)
This commit is contained in:
zhimin.zeng
2024-12-24 16:34:48 +08:00
committed by Noisyfox
parent c043f73a98
commit d35350cf14
4 changed files with 281 additions and 78 deletions

View File

@@ -1071,7 +1071,21 @@ bool CalibUtils::check_printable_status_before_cali(const MachineObject *obj, co
return false;
}
float diameter = obj->m_extder_data.extders[0].current_nozzle_diameter;
float cali_diameter = cali_infos.calib_datas[0].nozzle_diameter;
int extruder_id = cali_infos.calib_datas[0].extruder_id;
for (const auto& cali_info : cali_infos.calib_datas) {
if (!is_approx(cali_diameter, cali_info.nozzle_diameter)) {
error_message = _L("Calibration using nozzles of different diameters is not supported.");
return false;
}
}
if (extruder_id >= obj->m_extder_data.extders.size()) {
error_message = _L("The number of printer extruders and the printer selected for calibration does not match.");
return false;
}
float diameter = obj->m_extder_data.extders[extruder_id].current_nozzle_diameter;
bool is_multi_extruder = obj->is_multi_extruders();
std::vector<NozzleFlowType> nozzle_volume_types;
if (is_multi_extruder) {