Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastien Montagne <bastien@blender.org>2022-02-22 19:20:18 +0300
committerBastien Montagne <bastien@blender.org>2022-03-29 18:58:40 +0300
commit5adcf6c85e4c28fcfda0048a9ec7cceae105046d (patch)
treeebc6b23cb3ede2cd3581371aaf6fae3f057eb511 /source/blender/blenkernel/intern
parent101308403833aedbfef1d105424867a8f787d7b6 (diff)
LibOverride: Add initial System Override flag.
This merely adds the flag, exposes it in RMA, and uses it in some of the most common 'is editable' checks (RNA, `BASE_EDITABLE` macro...). Next step: do_version and defining systemoverrides at creation. Ref: {T95707}.
Diffstat (limited to 'source/blender/blenkernel/intern')
-rw-r--r--source/blender/blenkernel/intern/lib_override.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/lib_override.c b/source/blender/blenkernel/intern/lib_override.c
index cd5855af043..c0d49105dad 100644
--- a/source/blender/blenkernel/intern/lib_override.c
+++ b/source/blender/blenkernel/intern/lib_override.c
@@ -276,6 +276,18 @@ bool BKE_lib_override_library_is_user_edited(struct ID *id)
return false;
}
+bool BKE_lib_override_library_is_system_defined(Main *bmain, ID *id)
+{
+
+ if (ID_IS_OVERRIDE_LIBRARY(id)) {
+ ID *override_owner_id;
+ lib_override_get(bmain, id, &override_owner_id);
+ return (override_owner_id->override_library->flag & IDOVERRIDE_LIBRARY_FLAG_SYSTEM_DEFINED) !=
+ 0;
+ }
+ return false;
+}
+
ID *BKE_lib_override_library_create_from_id(Main *bmain,
ID *reference_id,
const bool do_tagged_remap)