AActor::PostEditChangeProperty

Override Hierarchy

UObject::PostEditChangeProperty()

AActor::PostEditChangeProperty()

ALandscapeStreamingProxy::PostEditChangeProperty()

AScreenshotFunctionalTestBase::PostEditChangeProperty()

ANavMeshBoundsVolume::PostEditChangeProperty()

ADirectionalLight::PostEditChangeProperty()

AGroupActor::PostEditChangeProperty()

AMaterialInstanceActor::PostEditChangeProperty()

ADestructibleActor::PostEditChangeProperty()

ANavSystemConfigOverride::PostEditChangeProperty()

ACameraRig_Rail::PostEditChangeProperty()

ANavModifierVolume::PostEditChangeProperty()

ADocumentationActor::PostEditChangeProperty()

ASpotLight::PostEditChangeProperty()

ACameraRig_Crane::PostEditChangeProperty()

ALevelBounds::PostEditChangeProperty()

AGameplayCueNotify_Actor::PostEditChangeProperty()

AVolume::PostEditChangeProperty()

ANavMeshBoundsVolume::PostEditChangeProperty()

ANavModifierVolume::PostEditChangeProperty()

ACullDistanceVolume::PostEditChangeProperty()

APostProcessVolume::PostEditChangeProperty()

AAudioVolume::PostEditChangeProperty()

ADecalActor::PostEditChangeProperty()

ALandscapeBlueprintCustomBrush::PostEditChangeProperty()

ACullDistanceVolume::PostEditChangeProperty()

ACameraActor::PostEditChangeProperty()

ANavLinkProxy::PostEditChangeProperty()

AGeometryCollectionRenderLevelSetActor::PostEditChangeProperty()

APostProcessVolume::PostEditChangeProperty()

AGeometryCollectionDebugDrawActor::PostEditChangeProperty()

AEQSTestingPawn::PostEditChangeProperty()

ALandscapeGizmoActiveActor::PostEditChangeProperty()

AMediaBundleActorBase::PostEditChangeProperty()

ABrush::PostEditChangeProperty()

ANavMeshBoundsVolume::PostEditChangeProperty()

ANavModifierVolume::PostEditChangeProperty()

AVolume::PostEditChangeProperty()

ANavMeshBoundsVolume::PostEditChangeProperty()

ANavModifierVolume::PostEditChangeProperty()

ACullDistanceVolume::PostEditChangeProperty()

APostProcessVolume::PostEditChangeProperty()

AAudioVolume::PostEditChangeProperty()

ACullDistanceVolume::PostEditChangeProperty()

APostProcessVolume::PostEditChangeProperty()

AAudioVolume::PostEditChangeProperty()

AChaosSolverActor::PostEditChangeProperty()

ALODActor::PostEditChangeProperty()

ANavigationTestingActor::PostEditChangeProperty()

ALandscape::PostEditChangeProperty()

AAudioVolume::PostEditChangeProperty()

APawn::PostEditChangeProperty()

AEQSTestingPawn::PostEditChangeProperty()

ACompositingElement::PostEditChangeProperty()

AMatineeActor::PostEditChangeProperty()

AFunctionalTest::PostEditChangeProperty()

AScreenshotFunctionalTestBase::PostEditChangeProperty()

AWorldSettings::PostEditChangeProperty()

ALandscapeProxy::PostEditChangeProperty()

ALandscapeStreamingProxy::PostEditChangeProperty()

ALandscape::PostEditChangeProperty()

Syntax

virtual void PostEditChangeProperty
(
    FPropertyChangedEvent & PropertyChangedEvent
)

Remarks

Called when a property on this object has been modified externally

Parameters

Parameter

Description

PropertyThatChanged

the property that was modified

Example Code

MyComponentSpawner.cpp at line 92:

#if WITH_EDITOR  
void AMyComponentSpawner::PostEditChangeProperty(struct FPropertyChangedEvent& PropertyChangedEvent)  
{  
    //Get all of our components  
    TArray<UActorComponent*> MyComponents;  
    GetComponents(MyComponents);  

    //Get the name of the property that was changed  
    FName PropertyName = (PropertyChangedEvent.Property != nullptr) ? PropertyChangedEvent.Property->GetFName() : NAME_None;  

    // We test using GET_MEMBER_NAME_CHECKED so that if someone changes the property name  
    // in the future this will fail to compile and we can update it.  
    if ((PropertyName == GET_MEMBER_NAME_CHECKED(AMyComponentSpawner, MyMesh)))  
    {  
        FMultiComponentReregisterContext ReregisterContext(MyComponents);  

        for (UActorComponent* Comp : MyComponents)  
        {  
            if (UStaticMeshComponent* MeshComp = Cast<UStaticMeshComponent>(Comp))  
            {  
                MeshComp->SetStaticMesh(MyMesh); // Update the component to the new mesh  
            }  
        }  
    }  

    // Call the base class version  
    Super::PostEditChangeProperty(PropertyChangedEvent);  
}  
#endif

References

Module

Engine

Header

Runtime/Engine/Classes/GameFramework/Actor.h

Source

Runtime/Engine/Private/ActorEditor.cpp