blob: 5ab91ef3830e2c29549d10a95846923f1ed0e6c3 [file]
#include "rive/custom_property.hpp"
#include "rive/drawable.hpp"
#include "rive/generated/custom_property_boolean_base.hpp"
#include "rive/generated/custom_property_color_base.hpp"
#include "rive/generated/custom_property_enum_base.hpp"
#include "rive/generated/custom_property_string_base.hpp"
#include "rive/generated/custom_property_trigger_base.hpp"
using namespace rive;
StatusCode CustomProperty::onAddedClean(CoreContext* context)
{
if (tagsParent() && parent() != nullptr && parent()->is<Drawable>())
{
parent()->as<Drawable>()->markHasCustomProperties();
}
return Super::onAddedClean(context);
}
CustomPropertyKind CustomProperty::kind() const
{
switch (coreType())
{
case CustomPropertyBooleanBase::typeKey:
return CustomPropertyKind::boolean;
case CustomPropertyStringBase::typeKey:
return CustomPropertyKind::string;
case CustomPropertyColorBase::typeKey:
return CustomPropertyKind::color;
case CustomPropertyEnumBase::typeKey:
return CustomPropertyKind::enumeration;
case CustomPropertyTriggerBase::typeKey:
return CustomPropertyKind::trigger;
default:
return CustomPropertyKind::number;
}
}