From 92db9ad8c594488d2399959eac4b3f3f1010e683 Mon Sep 17 00:00:00 2001 From: tao wang Date: Sat, 11 Jan 2025 10:31:17 +0800 Subject: [PATCH] ENH:sync AMS does not checking version info jira:[STUDIO-9692] Change-Id: I76be87fe219ddd79cae27a7cf5c05315efb0b331 (cherry picked from commit 8f2ab037fd97ead60f8d941c90230306e9227d95) --- src/slic3r/GUI/DeviceManager.cpp | 4 ++-- src/slic3r/GUI/DeviceManager.hpp | 2 +- src/slic3r/GUI/Plater.cpp | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/slic3r/GUI/DeviceManager.cpp b/src/slic3r/GUI/DeviceManager.cpp index 426acaa5da..965fa67761 100644 --- a/src/slic3r/GUI/DeviceManager.cpp +++ b/src/slic3r/GUI/DeviceManager.cpp @@ -2885,9 +2885,9 @@ void MachineObject::set_online_state(bool on_off) if (!on_off) m_active_state = NotActive; } -bool MachineObject::is_info_ready() const +bool MachineObject::is_info_ready(bool check_version) const { - if (module_vers.empty()) + if (check_version && module_vers.empty()) return false; std::chrono::system_clock::time_point curr_time = std::chrono::system_clock::now(); diff --git a/src/slic3r/GUI/DeviceManager.hpp b/src/slic3r/GUI/DeviceManager.hpp index ae6e691d55..f00821d89d 100644 --- a/src/slic3r/GUI/DeviceManager.hpp +++ b/src/slic3r/GUI/DeviceManager.hpp @@ -1178,7 +1178,7 @@ public: bool is_connecting(); void set_online_state(bool on_off); bool is_online() { return m_is_online; } - bool is_info_ready() const; + bool is_info_ready(bool check_version = true) const; bool is_camera_busy_off(); std::vector get_resolution_supported(); diff --git a/src/slic3r/GUI/Plater.cpp b/src/slic3r/GUI/Plater.cpp index d598adba79..f7be0c521f 100644 --- a/src/slic3r/GUI/Plater.cpp +++ b/src/slic3r/GUI/Plater.cpp @@ -1093,7 +1093,7 @@ bool Sidebar::priv::sync_extruder_list() printer_tab->set_extruder_volume_type(0, NozzleVolumeType::nvtHighFlow); printer_tab->set_extruder_volume_type(1, NozzleVolumeType::nvtStandard); MachineObject *obj = wxGetApp().getDeviceManager()->get_selected_machine(); - if (obj == nullptr || !obj->is_info_ready()) { + if (obj == nullptr || !obj->is_info_ready(false)) { MessageDialog dlg(this->plater, _L("Please select a printer in 'Device' page first."), _L("Sync extruder infomation"), wxOK); dlg.ShowModal(); return false;