// Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "IPropertyTypeCustomization.h" #include "Templates/SharedPointer.h" class IPropertyHandle; /** * Customizes a soft object path to look like a UObject property */ class FSoftObjectPathCustomization : public IPropertyTypeCustomization { public: static TSharedRef MakeInstance() { return MakeShareable( new FSoftObjectPathCustomization ); } /** IPropertyTypeCustomization interface */ virtual void CustomizeHeader( TSharedRef InStructPropertyHandle, class FDetailWidgetRow& HeaderRow, IPropertyTypeCustomizationUtils& StructCustomizationUtils ) override; virtual void CustomizeChildren( TSharedRef InStructPropertyHandle, class IDetailChildrenBuilder& StructBuilder, IPropertyTypeCustomizationUtils& StructCustomizationUtils ) override; private: /** Handle to the struct property being customized */ TSharedPtr StructPropertyHandle; };