From bab57550b69b8429bb2f081fbc75f1d1ca035a34 Mon Sep 17 00:00:00 2001 From: Bastien Montagne Date: Mon, 7 Dec 2020 16:52:45 +0100 Subject: LibOverride: Abstract a bit handling of local items of RNA collections. RNA collections that support insertion of new items in liboverride data-block need a special way to distiguish between locale and orig-from-linked items (since some operations are allowed on the forer, but no the latter). In future we want a proper solution to abstract that at the `BKE_lib_override` level, but for now we need to add some code for each case. Note that this commit also fixes a few potential issues with GPencil modifiers, and constraints, regarding their handling of local overrides. --- source/blender/blenkernel/BKE_constraint.h | 3 +++ 1 file changed, 3 insertions(+) (limited to 'source/blender/blenkernel/BKE_constraint.h') diff --git a/source/blender/blenkernel/BKE_constraint.h b/source/blender/blenkernel/BKE_constraint.h index 4b9f480e091..1589bff7501 100644 --- a/source/blender/blenkernel/BKE_constraint.h +++ b/source/blender/blenkernel/BKE_constraint.h @@ -177,6 +177,9 @@ struct bConstraint *BKE_constraint_find_from_target(struct Object *ob, struct bConstraintTarget *tgt, struct bPoseChannel **r_pchan); +bool BKE_constraint_is_local_in_liboverride(const struct Object *ob, + const struct bConstraint *con); + struct bConstraint *BKE_constraint_add_for_object(struct Object *ob, const char *name, short type); struct bConstraint *BKE_constraint_add_for_pose(struct Object *ob, struct bPoseChannel *pchan, -- cgit v1.2.3