From 22f3a2f8bd0142f59a8d87de663ac3de0357e8f3 Mon Sep 17 00:00:00 2001 From: "zhou.xu" Date: Tue, 27 May 2025 15:34:38 +0800 Subject: [PATCH] FIX:Switching printer requires that cleared status of synchronization button jira: STUDIO-12413 Change-Id: I86ad8125cd2b0b4c870cedd3b9b54c20c91dd9af (cherry picked from commit b8d2657515ca616e4e8577ed26e6ccfc4d849587) --- src/slic3r/GUI/Plater.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/slic3r/GUI/Plater.cpp b/src/slic3r/GUI/Plater.cpp index b1c906c1c5..b34d6ada38 100644 --- a/src/slic3r/GUI/Plater.cpp +++ b/src/slic3r/GUI/Plater.cpp @@ -1330,7 +1330,8 @@ bool Sidebar::priv::sync_extruder_list(bool &only_external_material) void Sidebar::priv::update_sync_status(const MachineObject *obj) { - auto clear_all_sync_status = [this]() { + StateColor not_synced_colour(std::pair(wxColour("#00AE42"), StateColor::Normal)); + auto clear_all_sync_status = [this, ¬_synced_colour]() { panel_printer_preset->ShowBadge(false); panel_printer_bed->ShowBadge(false); left_extruder->ShowBadge(false); @@ -1339,6 +1340,8 @@ void Sidebar::priv::update_sync_status(const MachineObject *obj) right_extruder->sync_ams(nullptr, {}, {}); single_extruder->ShowBadge(false); single_extruder->sync_ams(nullptr, {}, {}); + btn_sync_printer->SetBorderColor(not_synced_colour); + btn_sync_printer->SetIcon("printer_sync"); }; if (!obj || !obj->is_info_ready()) { @@ -1485,7 +1488,6 @@ void Sidebar::priv::update_sync_status(const MachineObject *obj) } StateColor synced_colour(std::pair(wxColour("#CECECE"), StateColor::Normal)); - StateColor not_synced_colour(std::pair(wxColour("#00AE42"), StateColor::Normal)); bool all_extruder_synced = std::all_of(extruder_synced.begin(), extruder_synced.end(), [](bool value) { return value; }); if (printer_synced && all_extruder_synced) { btn_sync_printer->SetBorderColor(synced_colour);