diff --git a/resources/images/fd_calibration_auto_i3.png b/resources/images/fd_calibration_auto_i3.png new file mode 100644 index 0000000000..c344af6350 Binary files /dev/null and b/resources/images/fd_calibration_auto_i3.png differ diff --git a/resources/images/fd_calibration_auto_multi_extruders.png b/resources/images/fd_calibration_auto_multi_extruders.png new file mode 100644 index 0000000000..c344af6350 Binary files /dev/null and b/resources/images/fd_calibration_auto_multi_extruders.png differ diff --git a/src/slic3r/GUI/CaliHistoryDialog.cpp b/src/slic3r/GUI/CaliHistoryDialog.cpp index 6b4f6b9c52..1271e2d0d2 100644 --- a/src/slic3r/GUI/CaliHistoryDialog.cpp +++ b/src/slic3r/GUI/CaliHistoryDialog.cpp @@ -311,7 +311,7 @@ void HistoryWindow::sync_history_data() { gbSizer->Add(title_preset_name, { 0, get_colume_idx(CaliColumnType::Cali_Filament, curr_obj) }, { 1, 1 }, wxBOTTOM, FromDIP(15)); if (curr_obj && curr_obj->is_multi_extruders()) { - auto nozzle_name = new Label(m_history_data_panel, _L("Nozzle")); + auto nozzle_name = new Label(m_history_data_panel, _L("Nozzle Flow")); nozzle_name->SetFont(Label::Head_14); gbSizer->Add(nozzle_name, {0, get_colume_idx(CaliColumnType::Cali_Nozzle, curr_obj)}, {1, 1}, wxBOTTOM, FromDIP(15)); } @@ -876,11 +876,14 @@ void NewCalibrationHistoryDialog::on_ok(wxCommandEvent &event) }); if (iter != m_history_results.end()) { - MessageDialog msg_dlg(nullptr, - wxString::Format(_L("There is already a historical calibration result with the same name: %s. Only one of the results with the same name " - "is saved. Are you sure you want to override the historical result?"), - m_new_result.name), - wxEmptyString, wxICON_WARNING | wxYES_NO); + + wxString duplicate_name_info = wxString::Format(_L("There is already a historical calibration result with the same name: %s. Only one of the results with the same name " + "is saved. Are you sure you want to override the historical result?"), m_new_result.name); + + duplicate_name_info = wxString::Format(_L("Within the same extruder, the name(%s) must be unique when the filament type, nozzle diameter, and nozzle flow are the same.\n" + "Are you sure you want to override the historical result?"), m_new_result.name); + + MessageDialog msg_dlg(nullptr, duplicate_name_info, wxEmptyString, wxICON_WARNING | wxYES_NO); if (msg_dlg.ShowModal() != wxID_YES) return; } diff --git a/src/slic3r/GUI/CalibrationWizard.cpp b/src/slic3r/GUI/CalibrationWizard.cpp index 5d0474b12b..95a7487489 100644 --- a/src/slic3r/GUI/CalibrationWizard.cpp +++ b/src/slic3r/GUI/CalibrationWizard.cpp @@ -887,8 +887,14 @@ bool PressureAdvanceWizard::can_save_cali_result(const std::vectoris_multi_extruders()) + duplicate_name_info = wxString::Format(_L("Within the same extruder, the name(%s) must be unique when the filament type, nozzle diameter, and nozzle flow are the same.\n" + "Are you sure you want to override the historical result?"), same_pa_names); + + MessageDialog msg_dlg(nullptr, duplicate_name_info, wxEmptyString, wxICON_WARNING | wxYES_NO); if (msg_dlg.ShowModal() != wxID_YES) return false; } diff --git a/src/slic3r/GUI/CalibrationWizardCaliPage.cpp b/src/slic3r/GUI/CalibrationWizardCaliPage.cpp index 927285c149..1dfdef48a4 100644 --- a/src/slic3r/GUI/CalibrationWizardCaliPage.cpp +++ b/src/slic3r/GUI/CalibrationWizardCaliPage.cpp @@ -103,7 +103,20 @@ void CalibrationCaliPage::set_cali_img() m_picture_panel->set_bmp(ScalableBitmap(this, "fd_calibration_manual", 400)); } else if (m_cali_method == CalibrationMethod::CALI_METHOD_AUTO) { - m_picture_panel->set_bmp(ScalableBitmap(this, "fd_calibration_auto", 400)); + if (curr_obj) { + if (curr_obj->is_multi_extruders()) { + m_picture_panel->set_bmp(ScalableBitmap(this, "fd_calibration_auto_multi_extruders", 400)); + } + else if (curr_obj->get_printer_arch() == PrinterArch::ARCH_I3) { + m_picture_panel->set_bmp(ScalableBitmap(this, "fd_calibration_auto_i3", 400)); + } + else { + m_picture_panel->set_bmp(ScalableBitmap(this, "fd_calibration_auto", 400)); + } + } + else { + m_picture_panel->set_bmp(ScalableBitmap(this, "fd_calibration_auto", 400)); + } } } else if (m_cali_mode == CalibMode::Calib_Flow_Rate) { diff --git a/src/slic3r/GUI/CalibrationWizardPresetPage.cpp b/src/slic3r/GUI/CalibrationWizardPresetPage.cpp index 49145fd436..20ebe6f5cd 100644 --- a/src/slic3r/GUI/CalibrationWizardPresetPage.cpp +++ b/src/slic3r/GUI/CalibrationWizardPresetPage.cpp @@ -616,7 +616,7 @@ void CalibrationPresetPage::create_selection_panel(wxWindow* parent) m_left_nozzle_volume_type_sizer->AddSpacer(FromDIP(5)); //wxBoxSizer *nozzle_volume_sizer = new wxBoxSizer(wxHORIZONTAL); - auto nozzle_volume_type_text = new Label(m_multi_nozzle_info_panel, _L("Nozzle Volume Type"), 0, CALIBRATION_LABEL_SIZE); + auto nozzle_volume_type_text = new Label(m_multi_nozzle_info_panel, _L("Nozzle Flow"), 0, CALIBRATION_LABEL_SIZE); nozzle_volume_type_text->SetFont(Label::Head_14); nozzle_volume_type_text->Wrap(-1); @@ -650,7 +650,7 @@ void CalibrationPresetPage::create_selection_panel(wxWindow* parent) m_right_nozzle_volume_type_sizer->AddSpacer(FromDIP(5)); //wxBoxSizer *nozzle_volume_sizer = new wxBoxSizer(wxHORIZONTAL); - auto nozzle_volume_type_text = new Label(m_multi_nozzle_info_panel, _L("Nozzle Volume Type"), 0, CALIBRATION_LABEL_SIZE); + auto nozzle_volume_type_text = new Label(m_multi_nozzle_info_panel, _L("Nozzle Flow"), 0, CALIBRATION_LABEL_SIZE); nozzle_volume_type_text->SetFont(Label::Head_14); nozzle_volume_type_text->Wrap(-1); diff --git a/src/slic3r/GUI/StatusPanel.cpp b/src/slic3r/GUI/StatusPanel.cpp index 813350348b..d7e0da2709 100644 --- a/src/slic3r/GUI/StatusPanel.cpp +++ b/src/slic3r/GUI/StatusPanel.cpp @@ -3529,7 +3529,12 @@ void StatusPanel::update_subtask(MachineObject *obj) int height = m_project_task_panel->get_bitmap_thumbnail()->GetSize().y; if (m_calib_method == CALI_METHOD_AUTO) { if (m_calib_mode == CalibMode::Calib_PA_Line) { - png_path = (boost::format("%1%/images/fd_calibration_auto.png") % resources_dir()).str(); + if (obj->is_multi_extruders()) + png_path = (boost::format("%1%/images/fd_calibration_auto_multi_extruders.png") % resources_dir()).str(); + else if (obj->get_printer_arch() == PrinterArch::ARCH_I3) + png_path = (boost::format("%1%/images/fd_calibration_auto_i3.png") % resources_dir()).str(); + else + png_path = (boost::format("%1%/images/fd_calibration_auto.png") % resources_dir()).str(); } else if (m_calib_mode == CalibMode::Calib_Flow_Rate) { png_path = (boost::format("%1%/images/flow_rate_calibration_auto.png") % resources_dir()).str();