RealDocs

UActorComponent::IsEditableWhenInherited

function Engine Since unknown
#include "Components/ActorComponent.h"
Access: public

Description

Returns true if this component can be modified when it was inherited from a parent actor class. Use this to guard property edits or construction-script logic that should only run on components the child actor actually owns.

Caveats & Gotchas

  • A component that returns false here will have its properties locked to the parent class defaults in the Details panel; any programmatic modification at runtime still works but will not persist through serialization of the child blueprint.
  • The result depends on the component's creation method (CreationMethod == EComponentCreationMethod::Native or SimpleConstructionScript). Dynamically added components (EComponentCreationMethod::Instance) are always considered editable.

Signature

ENGINE_API bool IsEditableWhenInherited() const;

Return Type

bool

Example

Guard property change to inherited components C++
void UMyComponent::PostEditChangeProperty(FPropertyChangedEvent& PropertyChangedEvent)
{
    Super::PostEditChangeProperty(PropertyChangedEvent);
    if (!IsEditableWhenInherited())
    {
        // Silently skip — the property belongs to the parent class
        return;
    }
    RebuildData();
}

Version History

Introduced in: unknown

Version Status Notes
5.6 stable

Feedback

Was this helpful?

Suggest an edit

Select a field above to begin editing.