From 6e09e68046edcb35282768ad120d232d08563295 Mon Sep 17 00:00:00 2001 From: "zhou.xu" Date: Fri, 18 Apr 2025 09:53:34 +0800 Subject: [PATCH] FIX:The filament color after "merge" is incorrect jira: STUDIO-11642 Change-Id: I24aaf3e5fcbf5263d8d1c5240e8edfa38123b269 --- src/slic3r/GUI/GUI_ObjectList.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/slic3r/GUI/GUI_ObjectList.cpp b/src/slic3r/GUI/GUI_ObjectList.cpp index 83ab04286..ee1127db5 100644 --- a/src/slic3r/GUI/GUI_ObjectList.cpp +++ b/src/slic3r/GUI/GUI_ObjectList.cpp @@ -2859,6 +2859,7 @@ void ObjectList::split() void ObjectList::merge(bool to_multipart_object) { + wxBusyCursor wait; // merge selected objects to the multipart object if (to_multipart_object) { auto get_object_idxs = [this](std::vector& obj_idxs, wxDataViewItemArray& sels) @@ -3003,11 +3004,14 @@ void ObjectList::merge(bool to_multipart_object) //for volume config, it only has settings of PrintRegionConfig //so we can not copy settings from object to volume //but we can copy settings from volume to object - if (object->volumes.size() > 1) - { + if (object->volumes.size() > 1){ new_volume->config.assign_config(volume->config); } - + auto option = new_volume->config.option("extruder"); + if (!option) { + auto opt = object->config.option("extruder"); + if (opt) { new_volume->config.set_key_value("extruder", new ConfigOptionInt(opt->getInt())); } + } new_volume->mmu_segmentation_facets.assign(std::move(volume->mmu_segmentation_facets)); } new_object->sort_volumes(true);