Files
UnrealEngine/Engine/Source/Editor/DetailCustomizations/Private/MaterialAttributePropertyDetails.h
2025-05-18 13:04:45 +08:00

31 lines
885 B
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "Containers/Array.h"
#include "Containers/Map.h"
#include "HAL/Platform.h"
#include "IDetailCustomization.h"
#include "Templates/SharedPointer.h"
class FString;
class IDetailChildrenBuilder;
class IDetailLayoutBuilder;
class IPropertyHandle;
struct FGuid;
/**
* Customization for material attribute get/set nodes to handle GUID-Name conversions.
*/
class FMaterialAttributePropertyDetails : public IDetailCustomization
{
public:
static TSharedRef<IDetailCustomization> MakeInstance();
virtual void CustomizeDetails(IDetailLayoutBuilder& DetailLayout) override;
void OnBuildChild(TSharedRef<IPropertyHandle> ChildHandle, int32 ElementIndex, IDetailChildrenBuilder& ChildrenBuilder);
private:
TArray<TPair<FString, FGuid>> AttributeNameToIDList;
TArray<TSharedPtr<FString>> AttributeDisplayNameList;
};