blob: 098eea286b756dd8d9aae3d15b7b9d2dc026c973 [file] [log] [blame] [edit]
#include "rive/shapes/paint/gradient_stop.hpp"
#include "rive/shapes/paint/linear_gradient.hpp"
using namespace rive;
StatusCode GradientStop::onAddedDirty(CoreContext* context)
{
StatusCode code = Super::onAddedDirty(context);
if (code != StatusCode::Ok)
{
return code;
}
if (!parent()->is<LinearGradient>())
{
return StatusCode::MissingObject;
}
parent()->as<LinearGradient>()->addStop(this);
return StatusCode::Ok;
}
void GradientStop::colorValueChanged()
{
parent()->as<LinearGradient>()->markGradientDirty();
}
void GradientStop::positionChanged()
{
parent()->as<LinearGradient>()->markStopsDirty();
}