// Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "CoreMinimal.h" #include "IPropertyTypeCustomization.h" #include "Templates/SharedPointer.h" class FDetailWidgetRow; class IDetailChildrenBuilder; class IPropertyHandle; class SMyBlueprint; // Property type customization for FMemberReference class KISMET_API FBlueprintMemberReferenceDetails : public IPropertyTypeCustomization { public: static TSharedRef MakeInstance() { return MakeShareable(new FBlueprintMemberReferenceDetails(TWeakPtr())); } static TSharedRef MakeInstance(TWeakPtr InMyBlueprint) { return MakeShareable(new FBlueprintMemberReferenceDetails(InMyBlueprint)); } private: FBlueprintMemberReferenceDetails(TWeakPtr InMyBlueprint) : MyBlueprint(InMyBlueprint) { } // IPropertyTypeCustomization interface virtual void CustomizeHeader(TSharedRef InStructPropertyHandle, FDetailWidgetRow& InHeaderRow, IPropertyTypeCustomizationUtils& InStructCustomizationUtils) override; virtual void CustomizeChildren(TSharedRef InStructPropertyHandle, IDetailChildrenBuilder& InChildBuilder, IPropertyTypeCustomizationUtils& InStructCustomizationUtils) override {}; private: TWeakPtr MyBlueprint; };