From 0431ae4e17d369f6c21c17a16ce985ba9e88b238 Mon Sep 17 00:00:00 2001 From: "zhimin.zeng" Date: Tue, 24 Jun 2025 17:06:31 +0800 Subject: [PATCH] FIX: update edited preset when delete filament jira: STUDIO-12198 Change-Id: Ie1eedf1a8b0acda8fb4292eb970f4aa416fa9181 (cherry picked from commit 9c8530946d888030061cc87b8a35c24ed583506e) --- src/libslic3r/PresetBundle.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/libslic3r/PresetBundle.cpp b/src/libslic3r/PresetBundle.cpp index bdefe9bacc..a2681cbaf0 100644 --- a/src/libslic3r/PresetBundle.cpp +++ b/src/libslic3r/PresetBundle.cpp @@ -1985,6 +1985,20 @@ void PresetBundle::update_num_filaments(unsigned int to_del_flament_id) assert(to_del_flament_id < old_filament_count); filament_presets.erase(filament_presets.begin() + to_del_flament_id); + // update edited_preset + { + Preset& edited_preset = filaments.get_edited_preset(); + bool edited_preset_deleted = true; + for (std::string filament_preset_name : filament_presets) { + if (filament_preset_name == edited_preset.name) { + edited_preset_deleted = false; + } + } + if (edited_preset_deleted) { + filaments.select_preset_by_name(filament_presets.front(), false); + } + } + ConfigOptionStrings *filament_color = project_config.option("filament_colour"); ConfigOptionInts* filament_map = project_config.option("filament_map");