// Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "CoreMinimal.h" #include "IPropertyTypeCustomization.h" class IBlendProfileProviderInterface; class UBlendProfile; class FBlendProfileInterfaceWrapperCustomization : public IPropertyTypeCustomization { public: static TSharedRef MakeInstance(); virtual void CustomizeHeader(TSharedRef StructPropertyHandle, class FDetailWidgetRow& HeaderRow, IPropertyTypeCustomizationUtils& StructCustomizationUtils) override; virtual void CustomizeChildren(TSharedRef InStructPropertyHandle, class IDetailChildrenBuilder& ChildBuilder, IPropertyTypeCustomizationUtils& StructCustomizationUtils) override {} private: void OnBlendProfileChanged(UBlendProfile* NewProfile, TWeakPtr WeakPropertyHandle, UObject* Outer); void OnBlendProfileProviderChanged(TObjectPtr NewProfile, IBlendProfileProviderInterface* Interface, TWeakPtr WeakPropertyHandle, UObject* Outer); class USkeleton* GetSkeletonFromOuter(const UObject* Outer); };