FVariantManager

Choose your operating system:

Windows

macOS

Linux

Inheritance Hierarchy

References

Module

VariantManager

Header

/Engine/Plugins/Enterprise/VariantManager/Source/VariantManager/Public/VariantManager.h

Include

#include "VariantManager.h"

Syntax

class FVariantManager :
    public FGCObject,
    public FEditorUndoClient,
    public TSharedFromThis< FVariantManager >

Constructors

Name Description

Public function

FVariantManager()

Destructors

Name Description

Public function Virtual

~FVariantManager()

Functions

Name Description

Public function

void

 

AddFunctionCallers

(
    const TArray< FFunctionCaller >& F...,
    UVariantObjectBinding* Binding
)

Public function

void

 

AddObjectBindings

(
    const TArray< UVariantObjectBinding...,
    UVariant* ToThisVariant,
    int32 InsertionIndex,
    bool bReplaceOld
)

Public function

void

 

AddPropertyCaptures

(
    const TArray< UPropertyValue* ...,
    UVariantObjectBinding* ToThisB...
)

Adds existing items to existing containers.

Public function

void

 

AddVariants

(
    const TArray< UVariant* >& Th...,
    UVariantSet* ToThisVariantSet,
    int32 InsertionIndex
)

Public function

void

 

AddVariantSets

(
    const TArray< UVariantSet* >&...,
    ULevelVariantSets* ToThisLevel...,
    int32 InsertionIndex
)

Public function Const

void

 

ApplyProperty

(
    UPropertyValue* Prop
)

Public function Const

void

 

CallDirectorFunction

(
    FName FunctionName,
    UVariantObjectBinding* TargetO...
)

Function handling.

Public function

void

 

CanAddActorsToVariant

(
    const TArray< UObject* >& InA...,
    const UVariant* InVariant,
    TArray< UObject* >& OutActors...
)

Returns which actors we can add to an existing UVariant, since we only allow one per actor per variant We can force add/replace with AddObjectBindings, but this allows us to check how many will be added, which is used for tooltips and feedback

Public function

void

 

CanAddActorsToVariant

(
    const TArray< TWeakObjectPtr< AActo...,
    const UVariant* InVariant,
    TArray< TWeakObjectPtr< AActor >>&...
)

Returns which actors we can add to an existing UVariant, since we only allow one per actor per variant We can force add/replace with AddObjectBindings, but this allows us to check how many will be added, which is used for tooltips and feedback

Public function

void

 

CaptureNewProperties

(
    const TArray< UVariantObjectBinding...
)

Public function

void

 

Close()

Public function

void

 

CopyVariantThumbnails

(
    TArray< UVariant* > DstArray,
    const TArray< UVariant* > SrcA...
)

Public function

UK2Node_Func...

 

CreateDirectorFunction

(
    ULevelVariantSets* InLevelVari...,
    FName InFunctionName,
    UClass* PinClassType
)

Public function

UK2Node_Func...

 

CreateDirectorFunctionFromFunction

(
    UFunction* QuickBindFunction,
    UClass* PinClassType
)

Public function

void

 

CreateFunctionCaller

(
    const TArray< UVariantObjectBinding...
)

Public function

TArray< UPro...

 

CreateLocationPropertyCaptures

(
    const TArray< UVariantObjectBinding...
)

Public function

TArray< UPro...

 

CreateMaterialPropertyCaptures

(
    const TArray< UVariantObjectBinding...
)

Public function

TArray< UVar...

 

CreateObjectBindings

(
    const TArray< AActor* >& OfTh...,
    const TArray< UVariant* >& In...,
    int32 InsertionIndex
)

Public function

TArray< UVar...

 

CreateObjectBindingsAndCaptures

(
    const TArray< AActor* >& OfTh...,
    const TArray< UVariant* >& In...,
    int32 InsertionIndex
)

Public function

TArray< UPro...

 

CreatePropertyCaptures

(
    const TArray< TSharedPtr< FCapturab...,
    const TArray< UVariantObjectBinding...,
    bool bSilenceWarnings
)

Creates new items and add them to existing containers.

Public function

TArray< UPro...

 

CreateRotationPropertyCaptures

(
    const TArray< UVariantObjectBinding...
)

Public function

TArray< UPro...

 

CreateScale3DPropertyCaptures

(
    const TArray< UVariantObjectBinding...
)

Public function

TArray< UPro...

 

CreateTransformPropertyCaptures

(
    const TArray< UVariantObjectBinding...
)

Public function

UVariant ...

 

CreateVariant

(
    UVariantSet* InThisVariantSet
)

Public function

UVariantSet ...

 

CreateVariantSet

(
    ULevelVariantSets* InThisLevel...
)

Public function

TArray< UPro...

 

CreateVisibilityPropertyCaptures

(
    const TArray< UVariantObjectBinding...
)

Public function

void

 

DuplicateObjectBindings

(
    const TArray< UVariantObjectBinding...,
    UVariant* ToThisVariant,
    int32 InsertionIndex
)

Duplicate existing items to existing containers.

Public function

void

 

DuplicateVariants

(
    const TArray< UVariant* >& Th...,
    UVariantSet* ToThisVariantSet,
    int32 InsertionIndex
)

Public function

void

 

DuplicateVariantSets

(
    const TArray< UVariantSet* >&...,
    ULevelVariantSets* ToThisLevel...,
    int32 InsertionIndex
)

Public function

void

 

GetCapturableProperties

(
    const TArray< UClass* >& Clas...,
    TArray< TSharedPtr< FCapturableProp...,
    FString TargetPropertyPath,
    bool bCaptureAllArrayIndices
)

Public function

void

 

GetCapturableProperties

(
    const TArray< AActor* >& Acto...,
    TArray< TSharedPtr< FCapturableProp...,
    FString TargetPropertyPath,
    bool bCaptureAllArrayIndices
)

Public function

ULevelVarian...

 

GetCurrentLevelVariantSets()

Public function

TSharedRef< ...

 

GetNodeTree()

Gets the tree of nodes which is used to populate the animation outliner.

Public function

UBlueprint &...

 

GetOrCreateDirectorBlueprint

(
    ULevelVariantSets* InLevelVari...
)

Sets up the blueprint class deriving from the function director that we'll use.

Public function

FVariantMana...

 

GetSelection()

Public function

TSharedPtr< ...

 

GetVariantManagerWidget()

Public function

TArray< FObj...

 

GetVariantThumbnails

(
    const TArray< UVariant* > SrcA...
)

Thumbnail operations Returns one for each variant. These can be nullptr

Public function

void

 

InitVariantManager

(
    ULevelVariantSets* InLevelVari...
)

Public function

void

 

MergeObjectBindings

(
    const UVariantObjectBinding* T...,
    UVariantObjectBinding* IntoThi...
)

Adds all children from one container to the other container, if it doesn't already have them.

Public function

void

 

MergeVariants

(
    const UVariant* ThisVar,
    UVariant* IntoThisVar
)

Public function

void

 

MoveObjectBindings

(
    const TArray< UVariantObjectBinding...,
    UVariant* ToThisVariant
)

Remove existing items from their parents and add them to existing containers.

Public function

void

 

MoveVariants

(
    const TArray< UVariant* >& Th...,
    UVariantSet* ToThisVariantSet,
    int32 InsertionIndex
)

Public function

void

 

MoveVariantSets

(
    const TArray< UVariantSet* >&...,
    ULevelVariantSets* ToThisLevel...,
    int32 InsertionIndex
)

Public function Const

void

 

RecordProperty

(
    UPropertyValue* Prop
)

Captured property handling.

Public function

void

 

RemoveFunctionCallers

(
    const TArray< FFunctionCaller*...,
    UVariantObjectBinding* FromThi...
)

Public function

void

 

RemoveObjectBindingsFromParent

(
    const TArray< UVariantObjectBinding...
)

Public function

void

 

RemovePropertyCapturesFromParent

(
    const TArray< UPropertyValue* ...
)

Removes existing items from existing containers.

Public function

void

 

RemoveVariantSetsFromParent

(
    const TArray< UVariantSet* >&...
)

Public function

void

 

RemoveVariantsFromParent

(
    const TArray< UVariant* >& Th...
)

Public function

void

 

SetVariantThumbnails

(
    const TArray< FObjectThumbnail*...,
    const TArray< UVariant* > Vari...
)

Expects one for each variant. Accepts nullptr (will clear any previous thumbnail when setting)

Overridden from FGCObject

Name Description

Public function Virtual

void

 

AddReferencedObjects

(
    FReferenceCollector& Collector
)

Pure virtual that must be overloaded by the inheriting class.

Public function Virtual Const

FString

 

GetReferencerName()

Use this method to report a name for your referencer.

Overridden from FEditorUndoClient

Name Description

Public function Virtual

void

 

PostRedo

(
    bool bSuccess
)

Signal that client should run any PostRedo code

Public function Virtual

void

 

PostUndo

(
    bool bSuccess
)

Signal that client should run any PostUndo code