diff options
author | Bastien Montagne <bastien@blender.org> | 2021-11-19 14:01:05 +0300 |
---|---|---|
committer | Bastien Montagne <bastien@blender.org> | 2021-11-19 14:09:28 +0300 |
commit | fa6a913ef19c7b269dba82141db1df5d712be1a7 (patch) | |
tree | 6b3f1c4420cbd3bc215fffe690966c8fc409008e /source/blender | |
parent | 83e245023c481aa2f57588724915e554c00c05d2 (diff) |
LibOverride: Add read-only flags accessors for 'local override' status.
Constraints, modifiers and NLA tracks can now report from RNA whether
they are defined as comming from the override's reference linked data,
or are local to the override.
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/makesrna/intern/rna_constraint.c | 9 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_gpencil_modifier.c | 10 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_modifier.c | 9 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_nla.c | 9 |
4 files changed, 37 insertions, 0 deletions
diff --git a/source/blender/makesrna/intern/rna_constraint.c b/source/blender/makesrna/intern/rna_constraint.c index 5968c8bac8f..bde348c1848 100644 --- a/source/blender/makesrna/intern/rna_constraint.c +++ b/source/blender/makesrna/intern/rna_constraint.c @@ -3474,6 +3474,15 @@ void RNA_def_constraint(BlenderRNA *brna) RNA_def_property_enum_items(prop, rna_enum_constraint_type_items); RNA_def_property_ui_text(prop, "Type", ""); + prop = RNA_def_boolean(srna, + "is_override_data", + false, + "Override Constraint", + "In a local override object, whether this constraint comes from the " + "linked reference object, or is local to the override"); + RNA_def_property_clear_flag(prop, PROP_EDITABLE); + RNA_def_property_boolean_negative_sdna(prop, NULL, "flag", CONSTRAINT_OVERRIDE_LIBRARY_LOCAL); + RNA_define_lib_overridable(true); prop = RNA_def_property(srna, "owner_space", PROP_ENUM, PROP_NONE); diff --git a/source/blender/makesrna/intern/rna_gpencil_modifier.c b/source/blender/makesrna/intern/rna_gpencil_modifier.c index c4efe5a0ea1..7fe51d45eb2 100644 --- a/source/blender/makesrna/intern/rna_gpencil_modifier.c +++ b/source/blender/makesrna/intern/rna_gpencil_modifier.c @@ -3738,6 +3738,16 @@ void RNA_def_greasepencil_modifier(BlenderRNA *brna) RNA_def_property_ui_text(prop, "Expanded", "Set modifier expanded in the user interface"); RNA_def_property_ui_icon(prop, ICON_DISCLOSURE_TRI_RIGHT, 1); + prop = RNA_def_boolean(srna, + "is_override_data", + false, + "Override Modifier", + "In a local override object, whether this modifier comes from the linked " + "reference object, or is local to the override"); + RNA_def_property_clear_flag(prop, PROP_EDITABLE); + RNA_def_property_boolean_negative_sdna( + prop, NULL, "flag", eGpencilModifierFlag_OverrideLibrary_Local); + /* types */ rna_def_modifier_gpencilnoise(brna); rna_def_modifier_gpencilsmooth(brna); diff --git a/source/blender/makesrna/intern/rna_modifier.c b/source/blender/makesrna/intern/rna_modifier.c index 028b6b6e11f..9ad6771cda3 100644 --- a/source/blender/makesrna/intern/rna_modifier.c +++ b/source/blender/makesrna/intern/rna_modifier.c @@ -7245,6 +7245,15 @@ void RNA_def_modifier(BlenderRNA *brna) RNA_def_property_ui_text(prop, "Active", "The active modifier in the list"); RNA_def_property_update(prop, NC_OBJECT | ND_MODIFIER, NULL); + prop = RNA_def_boolean(srna, + "is_override_data", + false, + "Override Modifier", + "In a local override object, whether this modifier comes from the linked " + "reference object, or is local to the override"); + RNA_def_property_clear_flag(prop, PROP_EDITABLE); + RNA_def_property_boolean_negative_sdna(prop, NULL, "flag", eModifierFlag_OverrideLibrary_Local); + prop = RNA_def_property(srna, "use_apply_on_spline", PROP_BOOLEAN, PROP_NONE); RNA_def_property_boolean_sdna(prop, NULL, "mode", eModifierMode_ApplyOnSpline); RNA_def_property_ui_text( diff --git a/source/blender/makesrna/intern/rna_nla.c b/source/blender/makesrna/intern/rna_nla.c index d0711f28a6e..b19836a7f12 100644 --- a/source/blender/makesrna/intern/rna_nla.c +++ b/source/blender/makesrna/intern/rna_nla.c @@ -885,6 +885,15 @@ static void rna_def_nlatrack(BlenderRNA *brna) RNA_def_property_override_flag(prop, PROPOVERRIDE_OVERRIDABLE_LIBRARY); RNA_def_property_ui_text(prop, "NLA Strips", "NLA Strips on this NLA-track"); + prop = RNA_def_boolean(srna, + "is_override_data", + false, + "Override Track", + "In a local override data, whether this NLA track comes from the linked " + "reference data, or is local to the override"); + RNA_def_property_clear_flag(prop, PROP_EDITABLE); + RNA_def_property_boolean_negative_sdna(prop, NULL, "flag", NLATRACK_OVERRIDELIBRARY_LOCAL); + rna_api_nlatrack_strips(brna, prop); RNA_define_lib_overridable(true); |