From ec18a18d10afe47b7ae5f5c12763b82ae53f3aa2 Mon Sep 17 00:00:00 2001 From: "chunmao.guo" Date: Tue, 31 Oct 2023 11:41:58 +0800 Subject: [PATCH] FIX: object list plate name edit Change-Id: I61d3dcd7d9598d759a3a0b44cc77d2af2adca25a Jira: STUDIO-4937 --- src/slic3r/GUI/GUI_ObjectList.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/src/slic3r/GUI/GUI_ObjectList.cpp b/src/slic3r/GUI/GUI_ObjectList.cpp index 8e7f7b477..58cfb8b59 100644 --- a/src/slic3r/GUI/GUI_ObjectList.cpp +++ b/src/slic3r/GUI/GUI_ObjectList.cpp @@ -977,8 +977,8 @@ void ObjectList::update_name_in_model(const wxDataViewItem& item) const auto plate = wxGetApp().plater()->get_partplate_list().get_plate(plate_idx); if (plate->get_plate_name() != name) { plate->set_plate_name(name); - m_objects_model->SetCurSelectedPlateFullName(plate_idx, name); } + m_objects_model->SetCurSelectedPlateFullName(plate_idx, name); } return; } @@ -5665,6 +5665,17 @@ void ObjectList::OnEditingDone(wxDataViewEvent &event) if (event.GetColumn() != colName) return; + if (event.IsEditCancelled()) { + if (m_objects_model->GetItemType(event.GetItem()) & itPlate) { + int plate_idx = -1; + m_objects_model->GetItemType(event.GetItem(), plate_idx); + if (plate_idx >= 0) { + auto plate = wxGetApp().plater()->get_partplate_list().get_plate(plate_idx); + m_objects_model->SetCurSelectedPlateFullName(plate_idx, plate->get_plate_name()); + } + } + } + const auto renderer = dynamic_cast(GetColumn(colName)->GetRenderer()); #if __WXOSX__ SetAcceleratorTable(m_accel);