diff --git a/Plugins/Linter/Source/Linter/Private/LinterNamingConvention.cpp b/Plugins/Linter/Source/Linter/Private/LinterNamingConvention.cpp index 8ed5a9c..bf59fd2 100644 --- a/Plugins/Linter/Source/Linter/Private/LinterNamingConvention.cpp +++ b/Plugins/Linter/Source/Linter/Private/LinterNamingConvention.cpp @@ -25,10 +25,21 @@ void FLinterNamingConventionDetails::CustomizeDetails(class IDetailLayoutBuilder void FLinterNamingConventionDetails::OnGenerateElementForDetails(TSharedRef StructProperty, int32 ElementIndex, IDetailChildrenBuilder& ChildrenBuilder, IDetailLayoutBuilder* DetailLayout) { + TSharedRef RemoveButton = PropertyCustomizationHelpers::MakeRemoveButton(FSimpleDelegate::CreateLambda([this, DetailLayout, ElementIndex] { + TSharedRef NamingConventionsProperty = DetailLayout->GetProperty(GET_MEMBER_NAME_CHECKED(ULinterNamingConvention, ClassNamingConventions), ULinterNamingConvention::StaticClass()); + TSharedPtr NamingConventionsPropertyHandle = NamingConventionsProperty->AsArray(); + NamingConventionsPropertyHandle->DeleteItem(ElementIndex); + })); + ChildrenBuilder.AddCustomRow(FText::GetEmpty()) [ SNew(SHorizontalBox) + SHorizontalBox::Slot() + .AutoWidth() + [ + RemoveButton + ] + + SHorizontalBox::Slot() .FillWidth(1.0f) [ SNew(SProperty, StructProperty->GetChildHandle("SoftClassPtr"))