You've already forked UnrealEngineUWP
mirror of
https://github.com/izzy2lost/UnrealEngineUWP.git
synced 2026-03-26 18:15:20 -07:00
#jira UE-134548 UE-134560 #rb jack.cai mike.beach #preflight https://horde.devtools.epicgames.com/job/618d3611857f308d8568874b #ROBOMERGE-AUTHOR: helge.mathee #ROBOMERGE-SOURCE: CL 18152273 in //UE5/Release-5.0/... via CL 18152382 #ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v889-18060218) #ROBOMERGE[STARSHIP]: UE5-Main [CL 18152447 by helge mathee in ue5-release-engine-test branch]
68 lines
1.9 KiB
C++
68 lines
1.9 KiB
C++
// Copyright Epic Games, Inc. All Rights Reserved.
|
|
|
|
#pragma once
|
|
|
|
#include "CoreMinimal.h"
|
|
#include "IDetailCustomization.h"
|
|
#include "IPropertyTypeCustomization.h"
|
|
#include "ControlRig.h"
|
|
#include "ControlRigBlueprint.h"
|
|
#include "DetailsViewWrapperObject.h"
|
|
#include "Graph/ControlRigGraph.h"
|
|
#include "Graph/SControlRigGraphPinNameListValueWidget.h"
|
|
#include "Styling/SlateTypes.h"
|
|
#include "IPropertyUtilities.h"
|
|
#include "DetailsViewWrapperObject.h"
|
|
#include "Graph/ControlRigGraphSchema.h"
|
|
|
|
class IPropertyHandle;
|
|
|
|
class FRigVMLocalVariableDetails : public IDetailCustomization
|
|
{
|
|
FRigVMLocalVariableDetails()
|
|
: GraphBeingCustomized(nullptr)
|
|
, BlueprintBeingCustomized(nullptr)
|
|
, NameValidator(nullptr, nullptr, NAME_None)
|
|
{}
|
|
|
|
|
|
public:
|
|
|
|
// Makes a new instance of this detail layout class for a specific detail view requesting it
|
|
static TSharedRef<IDetailCustomization> MakeInstance()
|
|
{
|
|
return MakeShareable(new FRigVMLocalVariableDetails);
|
|
}
|
|
|
|
/** IDetailCustomization interface */
|
|
virtual void CustomizeDetails(IDetailLayoutBuilder& DetailBuilder) override;
|
|
|
|
private:
|
|
|
|
URigVMGraph* GraphBeingCustomized;
|
|
UControlRigBlueprint* BlueprintBeingCustomized;
|
|
FRigVMGraphVariableDescription VariableDescription;
|
|
TArray<TWeakObjectPtr<UDetailsViewWrapperObject>> ObjectsBeingCustomized;
|
|
|
|
TSharedPtr<IPropertyHandle> NameHandle;
|
|
TSharedPtr<IPropertyHandle> TypeHandle;
|
|
TSharedPtr<IPropertyHandle> TypeObjectHandle;
|
|
TSharedPtr<IPropertyHandle> DefaultValueHandle;
|
|
|
|
FControlRigLocalVariableNameValidator NameValidator;
|
|
TArray<TSharedPtr<FString>> EnumOptions;
|
|
|
|
FText GetName() const;
|
|
void SetName(const FText& InNewText, ETextCommit::Type InCommitType);
|
|
bool OnVerifyNameChanged(const FText& InText, FText& OutErrorMessage);
|
|
|
|
FEdGraphPinType OnGetPinInfo() const;
|
|
void HandlePinInfoChanged(const FEdGraphPinType& PinType);
|
|
|
|
ECheckBoxState HandleBoolDefaultValueIsChecked( ) const;
|
|
void OnBoolDefaultValueChanged(ECheckBoxState InCheckBoxState);
|
|
};
|
|
|
|
|
|
|