diff options
author | Campbell Barton <ideasman42@gmail.com> | 2020-10-22 10:48:00 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2020-10-22 10:48:00 +0300 |
commit | 6c178bf439d5701b4bbedd6cf1f656b9cccc7177 (patch) | |
tree | 33cc78cca7d53568f5ca469771e65c8ee6f9cfff /source/blender/makesrna/intern | |
parent | 36653a92fad456e5ff99573ab82adaa1fca4a273 (diff) | |
parent | cf8642d9fac4cec7d3ee434a5403c2bbc8c5c21c (diff) |
Merge branch 'blender-v2.91-release'
Diffstat (limited to 'source/blender/makesrna/intern')
-rw-r--r-- | source/blender/makesrna/intern/rna_constraint.c | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/source/blender/makesrna/intern/rna_constraint.c b/source/blender/makesrna/intern/rna_constraint.c index 653056e4dc1..76b419926a1 100644 --- a/source/blender/makesrna/intern/rna_constraint.c +++ b/source/blender/makesrna/intern/rna_constraint.c @@ -512,6 +512,17 @@ static void rna_Constraint_influence_update(Main *bmain, Scene *scene, PointerRN rna_Constraint_update(bmain, scene, ptr); } +/* Update only needed so this isn't overwritten on first evaluation. */ +static void rna_Constraint_childof_inverse_matrix_update(Main *bmain, + Scene *scene, + PointerRNA *ptr) +{ + bConstraint *con = ptr->data; + bChildOfConstraint *data = con->data; + data->flag &= ~CHILDOF_SET_INVERSE; + rna_Constraint_update(bmain, scene, ptr); +} + static void rna_Constraint_ik_type_set(struct PointerRNA *ptr, int value) { bConstraint *con = ptr->data; @@ -999,7 +1010,8 @@ static void rna_def_constraint_childof(BlenderRNA *brna) RNA_def_property_multi_array(prop, 2, rna_matrix_dimsize_4x4); RNA_def_property_clear_flag(prop, PROP_ANIMATABLE); RNA_def_property_ui_text(prop, "Inverse Matrix", "Transformation matrix to apply before"); - RNA_def_property_update(prop, NC_OBJECT | ND_CONSTRAINT, "rna_Constraint_update"); + RNA_def_property_update( + prop, NC_OBJECT | ND_CONSTRAINT, "rna_Constraint_childof_inverse_matrix_update"); RNA_define_lib_overridable(false); } |