// Copyright Epic Games, Inc. All Rights Reserved. #pragma once #include "IPropertyTypeCustomization.h" #include "Templates/SharedPointer.h" class FDetailWidgetRow; class IDetailChildrenBuilder; class IPropertyHandle; class UMaterialExpressionLandscapeGrassOutput; class FMaterialExpressionLandscapeGrassInputCustomization : public IPropertyTypeCustomization { public: /** Makes a new instance of this detail layout class for a specific detail view requesting it */ static TSharedRef MakeInstance(); // IPropertyTypeCustomization interface virtual void CustomizeHeader(TSharedRef StructPropertyHandle, FDetailWidgetRow& HeaderRow, IPropertyTypeCustomizationUtils& StructCustomizationUtils) override; virtual void CustomizeChildren(TSharedRef StructPropertyHandle, IDetailChildrenBuilder& StructBuilder, IPropertyTypeCustomizationUtils& StructCustomizationUtils) override; protected: bool OnShouldFilterAsset(const struct FAssetData& InAssetData); UMaterialExpressionLandscapeGrassOutput* MaterialNode; };