// Copyright 2016 Mookie. All Rights Reserved. #pragma once #include "CoreMinimal.h" #include "IDetailCustomization.h" #include "DetailLayoutBuilder.h" #include "DetailCategoryBuilder.h" #include "DetailWidgetRow.h" #include "Widgets/Input/SButton.h" #include "Widgets/Text/STextBlock.h" #include "PhysicalMaterials/PhysicalMaterial.h" #include "EBBulletProperties.h" class FEBPhysicalMaterialCustomization : public IDetailCustomization { public: static TSharedRef MakeInstance(); virtual void CustomizeDetails(IDetailLayoutBuilder& DetailBuilder) override; private: FReply OnAssignBallisticProperties(); FReply OnCreateBallisticProperties(); FReply OnEditBallisticProperties(); TWeakObjectPtr PhysicalMaterialPtr; IDetailLayoutBuilder* DetailBuilderPtr; UEBMaterialPropertiesAsset* GetBallisticProperties(UPhysicalMaterial* PhysMat) const; void SetBallisticProperties(UPhysicalMaterial* PhysMat, UEBMaterialPropertiesAsset* Properties); };