第一次提交
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
// Copyright 2025 https://yuewu.dev/en All Rights Reserved.
|
||||
|
||||
#pragma once
|
||||
|
||||
|
||||
#include "CoreMinimal.h"
|
||||
#include "UObject/Object.h"
|
||||
#include "Layout/Visibility.h"
|
||||
#include "IPropertyTypeCustomization.h"
|
||||
|
||||
class FDetailWidgetRow;
|
||||
class IDetailChildrenBuilder;
|
||||
class IPropertyHandle;
|
||||
|
||||
/** Details customization for FAttributeBasedFloat */
|
||||
class GENERICGAMEPLAYABILITIESEDITOR_API FGGA_AttributeGroupNameCustomization : public IPropertyTypeCustomization
|
||||
{
|
||||
public:
|
||||
static TSharedRef<IPropertyTypeCustomization> MakeInstance();
|
||||
|
||||
/** Overridden to provide the property name or hide, if necessary */
|
||||
virtual void CustomizeHeader(TSharedRef<IPropertyHandle> StructPropertyHandle, FDetailWidgetRow& HeaderRow, IPropertyTypeCustomizationUtils& StructCustomizationUtils) override;
|
||||
|
||||
static void GeneratePrimaryComboboxStrings(TArray<TSharedPtr<FString>>& OutComboBoxStrings, TArray<TSharedPtr<SToolTip>>& OutToolTips, TArray<bool>& OutRestrictedItems, bool bAllowClear, bool bAllowAll,
|
||||
TMap<FName, TArray<FName>>* InItems);
|
||||
FString GenerateMainString();
|
||||
void OnMainValueSelected(const FString& String);
|
||||
static void GenerateSubComboboxStrings(TArray<TSharedPtr<FString>>& OutComboBoxStrings, TArray<TSharedPtr<SToolTip>>& OutToolTips, TArray<bool>& OutRestrictedItems, bool bAllowClear, bool bAllowAll,
|
||||
TMap<FName, TArray<FName>>* InItems, TSharedPtr<IPropertyHandle> PrimaryKey);
|
||||
FString GenerateSubString();
|
||||
void OnSubValueSelected(const FString& String);
|
||||
/** Overridden to allow for possibly being hidden */
|
||||
virtual void CustomizeChildren(TSharedRef<IPropertyHandle> StructPropertyHandle, IDetailChildrenBuilder& StructBuilder, IPropertyTypeCustomizationUtils& StructCustomizationUtils) override;
|
||||
|
||||
private:
|
||||
TMap<FName, TArray<FName>> FNameMap;
|
||||
|
||||
TSharedPtr<IPropertyHandle> MainNamePropertyHandle;
|
||||
TSharedPtr<IPropertyHandle> SubNamePropertyHandle;
|
||||
TWeakPtr<IPropertyUtilities> PropertyUtilities;
|
||||
};
|
||||
Reference in New Issue
Block a user