Files
UnrealEngineUWP/Engine/Plugins/Animation/ControlRig/Source/ControlRigEditor/Private/ControlRigVariableDetailsCustomization.h
Helge Mathee b31b4c33c6 Control Rig - Moving out of experimental
#jira UE-114826
#rb na

Changing Control Rig plugin directory from

Engine/Plugins/Experimental/ControlRig

to

Engine/Plugins/Animation/ControlRig

[CL 16658308 by Helge Mathee in ue5-main branch]
2021-06-14 10:27:38 -04:00

46 lines
1.5 KiB
C++

// Copyright Epic Games, Inc. All Rights Reserved.
#pragma once
#include "CoreMinimal.h"
#include "IDetailCustomization.h"
#include "Styling/SlateTypes.h"
#include "UObject/WeakFieldPtr.h"
class IDetailLayoutBuilder;
class IBlueprintEditor;
class UBlueprint;
class FControlRigVariableDetailsCustomization : public IDetailCustomization
{
public:
/** Makes a new instance of this detail layout class for a specific detail view requesting it */
static TSharedPtr<IDetailCustomization> MakeInstance(TSharedPtr<IBlueprintEditor> InBlueprintEditor);
FControlRigVariableDetailsCustomization(TSharedPtr<IBlueprintEditor> InBlueprintEditor, UBlueprint* Blueprint)
: BlueprintEditorPtr(InBlueprintEditor)
, BlueprintPtr(Blueprint)
{}
// IDetailCustomization interface
virtual void CustomizeDetails(IDetailLayoutBuilder& DetailLayout) override;
private:
bool IsAnimationFlagEnabled(TWeakFieldPtr<FProperty> PropertyBeingCustomized) const;
ECheckBoxState IsAnimationOutputChecked(TWeakFieldPtr<FProperty> PropertyBeingCustomized) const;
void HandleAnimationOutputCheckStateChanged(ECheckBoxState CheckBoxState, TWeakFieldPtr<FProperty> PropertyBeingCustomized);
ECheckBoxState IsAnimationInputChecked(TWeakFieldPtr<FProperty> PropertyBeingCustomized) const;
void HandleAnimationInputCheckStateChanged(ECheckBoxState CheckBoxState, TWeakFieldPtr<FProperty> PropertyBeingCustomized);
private:
/** The Blueprint editor we are embedded in */
TWeakPtr<IBlueprintEditor> BlueprintEditorPtr;
/** The blueprint we are editing */
TWeakObjectPtr<UBlueprint> BlueprintPtr;
};