blob: bca261d0b9b78d016c777f9734ec6c1b1965770f [file]
#include "rive/nested_animation.hpp"
#include "rive/container_component.hpp"
#include "rive/nested_artboard.hpp"
#include "rive/core_context.hpp"
using namespace rive;
bool NestedAnimation::validate(CoreContext* context)
{
if (!Super::validate(context))
{
return false;
}
auto parentObject = context->resolve(parentId());
// We know parentObject is not null from Super::validate().
return parentObject->is<NestedArtboard>();
}
StatusCode NestedAnimation::onAddedDirty(CoreContext* context)
{
StatusCode code = Super::onAddedDirty(context);
#ifndef WITH_RIVE_EDITOR
// Runtime-only: importer guarantees parent is a NestedArtboard.
// Editor build registers via editorParentChanged (Pass 4.5).
if (code == StatusCode::Ok)
{
auto nestedArtboard = parent()->as<NestedArtboard>();
nestedArtboard->addNestedAnimation(this);
}
#endif
return code;
}