|
Blender V4.3
|
#include <cstring>#include <fmt/format.h>#include <optional>#include <CLG_log.h>#include "MEM_guardedalloc.h"#include "DNA_ID.h"#include "DNA_anim_types.h"#include "DNA_camera_types.h"#include "DNA_constraint_types.h"#include "DNA_gpencil_modifier_types.h"#include "DNA_key_types.h"#include "DNA_modifier_types.h"#include "DNA_object_types.h"#include "BLI_listbase.h"#include "BLI_string.h"#include "BLI_utildefines.h"#include "BKE_armature.hh"#include "BKE_idprop.hh"#include "BKE_idtype.hh"#include "BKE_lib_override.hh"#include "BKE_main.hh"#include "RNA_access.hh"#include "RNA_define.hh"#include "RNA_enum_types.hh"#include "RNA_path.hh"#include "RNA_prototypes.hh"#include "rna_access_internal.hh"#include "rna_internal.hh"Go to the source code of this file.
Macros | |
| #define | RNA_PATH_BUFFSIZE 8192 |
Variables | |
| static CLG_LogRef | LOG = {"rna.access_compare_override"} |
| #define RNA_PATH_BUFFSIZE 8192 |
Referenced by RNA_struct_override_matches().
|
static |
Workaround for broken overrides, non-matching ID pointers override operations that replace a non-null value are then assumed as 'mistakes', and ignored (not applied).
Definition at line 1423 of file rna_access_compare_override.cc.
References BLI_assert, CLOG_INFO, ListBase::first, IDOverrideLibraryPropertyOperation::flag, RNAPropertyOverrideApplyContext::flag, LIBOVERRIDE_OP_FLAG_IDPOINTER_MATCH_REFERENCE, RNAPropertyOverrideApplyContext::liboverride_property, LOG, PropertyRNA::magic, ID::name, IDOverrideLibraryProperty::operations, PointerRNA::owner_id, PROP_COLLECTION, RNAPropertyOverrideApplyContext::prop_dst, PROP_POINTER, RNAPropertyOverrideApplyContext::prop_src, RNAPropertyOverrideApplyContext::ptr_dst, RNAPropertyOverrideApplyContext::ptr_src, RNA_MAGIC, RNA_OVERRIDE_APPLY_FLAG_IGNORE_ID_POINTERS, IDOverrideLibraryProperty::rna_path, IDOverrideLibraryProperty::rna_prop_type, rna_property_override_property_real_id_owner(), RNA_property_pointer_type(), RNA_struct_is_ID(), and UNUSED_VARS_NDEBUG.
Referenced by RNA_struct_override_apply().
| bool RNA_property_comparable | ( | PointerRNA * | ptr, |
| PropertyRNA * | prop ) |
Definition at line 199 of file rna_access_compare_override.cc.
References PropertyRNA::flag_override, PROPOVERRIDE_NO_COMPARISON, and rna_ensure_property().
| bool RNA_property_copy | ( | Main * | bmain, |
| PointerRNA * | ptr, | ||
| PointerRNA * | fromptr, | ||
| PropertyRNA * | prop, | ||
| int | index ) |
Definition at line 209 of file rna_access_compare_override.cc.
References LIBOVERRIDE_OP_REPLACE, RNAPropertyOverrideApplyContext::liboverride_operation, IDOverrideLibraryPropertyOperation::operation, RNAPropertyOverrideApplyContext::prop_dst, RNAPropertyOverrideApplyContext::prop_src, ptr, RNAPropertyOverrideApplyContext::ptr_dst, RNAPropertyOverrideApplyContext::ptr_src, RNA_property_editable(), and rna_property_override_operation_apply().
Referenced by copy_to_selected_button(), and override_remove_button_exec().
| bool RNA_property_equals | ( | Main * | bmain, |
| PointerRNA * | ptr_a, | ||
| PointerRNA * | ptr_b, | ||
| PropertyRNA * | prop, | ||
| eRNACompareMode | mode ) |
Definition at line 241 of file rna_access_compare_override.cc.
References BLI_assert, ELEM, RNA_EQ_STRICT, RNA_EQ_UNSET_MATCH_ANY, RNA_EQ_UNSET_MATCH_NONE, rna_property_override_diff(), and rna_property_rna_or_id_get().
Referenced by RNA_struct_equals(), and rna_struct_update_when_changed().
| bool RNA_property_overridable_get | ( | const PointerRNA * | ptr, |
| PropertyRNA * | prop ) |
Definition at line 123 of file rna_access_compare_override.cc.
References BONE_COLLECTION_OVERRIDE_LIBRARY_LOCAL, CAM_BGIMG_FLAG_OVERRIDE_LIBRARY_LOCAL, CONSTRAINT_OVERRIDE_LIBRARY_LOCAL, PointerRNA::data, eModifierFlag_OverrideLibrary_Local, bConstraint::flag, CameraBGImage::flag, IDProperty::flag, NlaTrack::flag, PropertyRNA::flag_override, BoneCollection::flags, IDP_FLAG_OVERRIDABLE_LIBRARY, PropertyRNA::magic, mod(), NLATRACK_OVERRIDELIBRARY_LOCAL, PROPOVERRIDE_NO_COMPARISON, PROPOVERRIDE_OVERRIDABLE_LIBRARY, ptr, RNA_MAGIC, RNA_struct_is_a(), and PointerRNA::type.
Referenced by property_collection_liboverride_editable(), pyrna_struct_is_property_overridable_library(), rna_property_editable_do(), rna_property_override_diff(), RNA_property_override_library_status(), and RNA_struct_override_matches().
| bool RNA_property_overridable_library_set | ( | PointerRNA * | ptr, |
| PropertyRNA * | prop, | ||
| bool | is_overridable ) |
Should only be used for custom properties.
Definition at line 171 of file rna_access_compare_override.cc.
References IDProperty::flag, IDP_FLAG_OVERRIDABLE_LIBRARY, IDP_FLAG_STATIC_TYPE, PropertyRNA::magic, and RNA_MAGIC.
Referenced by pyrna_struct_property_overridable_library_set().
| bool RNA_property_overridden | ( | PointerRNA * | ptr, |
| PropertyRNA * | prop ) |
Definition at line 186 of file rna_access_compare_override.cc.
References BKE_lib_override_library_property_find(), ID_IS_OVERRIDE_LIBRARY, PointerRNA::owner_id, ptr, and RNA_path_from_ID_to_property().
|
static |
Definition at line 1383 of file rna_access_compare_override.cc.
References CLOG_INFO, RNAPropertyOverrideApplyContext::do_insert, ELEM, LIBOVERRIDE_OP_INSERT_AFTER, LIBOVERRIDE_OP_INSERT_BEFORE, LIBOVERRIDE_OP_NOOP, RNAPropertyOverrideApplyContext::liboverride_operation, RNAPropertyOverrideApplyContext::liboverride_property, LISTBASE_FOREACH, LOG, ID::name, IDOverrideLibraryProperty::operations, PointerRNA::owner_id, RNAPropertyOverrideApplyContext::ptr_src, IDOverrideLibraryProperty::rna_path, rna_property_override_collection_subitem_lookup(), and rna_property_override_operation_apply().
Referenced by RNA_struct_override_apply().
|
static |
Definition at line 1318 of file rna_access_compare_override.cc.
References BLI_assert, CLOG_INFO, ELEM, IDOverrideLibrary::flag, ID_IS_LINKED, ID_IS_OVERRIDE_LIBRARY_REAL, ID_TAG_LIBOVERRIDE_NEED_RESYNC, ID::lib, LIBOVERRIDE_FLAG_NO_HIERARCHY, LIBRARY_TAG_RESYNC_REQUIRED, LOG, ID::name, ID::override_library, IDOverrideLibrary::reference, rna_property_override_property_real_id_owner(), Library::runtime, ID::tag, and Library_Runtime::tag.
Referenced by RNA_struct_override_apply().
|
static |
Definition at line 1124 of file rna_access_compare_override.cc.
References CLOG_INFO, PointerRNA::data, IDOverrideLibraryPropertyOperation::flag, LIBOVERRIDE_OP_FLAG_IDPOINTER_ITEM_USE_ID, RNAPropertyOverrideApplyContext::liboverride_operation, RNAPropertyOverrideApplyContext::liboverride_property, LOG, ID::name, PointerRNA::owner_id, PROP_COLLECTION, RNAPropertyOverrideApplyContext::prop_dst, RNAPropertyOverrideApplyContext::prop_src, RNAPropertyOverrideApplyContext::prop_storage, RNAPropertyOverrideApplyContext::ptr_dst, RNAPropertyOverrideApplyContext::ptr_item_dst, RNAPropertyOverrideApplyContext::ptr_item_src, RNAPropertyOverrideApplyContext::ptr_item_storage, RNAPropertyOverrideApplyContext::ptr_src, RNAPropertyOverrideApplyContext::ptr_storage, IDOverrideLibraryProperty::rna_path, RNA_POINTER_INVALIDATE, rna_property_override_collection_subitem_name_index_lookup(), RNA_property_type(), IDOverrideLibraryPropertyOperation::subitem_local_id, IDOverrideLibraryPropertyOperation::subitem_local_index, IDOverrideLibraryPropertyOperation::subitem_local_name, IDOverrideLibraryPropertyOperation::subitem_reference_id, IDOverrideLibraryPropertyOperation::subitem_reference_index, IDOverrideLibraryPropertyOperation::subitem_reference_name, and PointerRNA::type.
Referenced by rna_property_override_apply_ex(), and RNA_struct_override_apply().
|
static |
Definition at line 1029 of file rna_access_compare_override.cc.
References BLI_assert, PointerRNA::data, StructRNA::nameproperty, PROP_COLLECTION, CollectionPropertyIterator::ptr, ptr, RNA_property_collection_begin(), RNA_property_collection_end(), RNA_property_collection_lookup_string(), RNA_property_collection_next(), rna_property_override_collection_subitem_name_id_match(), RNA_property_type(), PointerRNA::type, and CollectionPropertyIterator::valid.
Referenced by rna_property_override_collection_subitem_name_index_lookup().
|
static |
Definition at line 993 of file rna_access_compare_override.cc.
References BLI_assert, PointerRNA::data, MEM_freeN(), StructRNA::nameproperty, RNA_property_string_get_alloc(), RNA_struct_is_ID(), STREQ, PointerRNA::type, and UNLIKELY.
Referenced by rna_property_override_collection_subitem_name_id_lookup(), and rna_property_override_collection_subitem_name_index_lookup().
|
static |
Definition at line 1074 of file rna_access_compare_override.cc.
References int, ptr, RNA_POINTER_INVALIDATE, RNA_property_collection_lookup_int(), rna_property_override_collection_subitem_name_id_lookup(), rna_property_override_collection_subitem_name_id_match(), RNA_property_pointer_type(), RNA_struct_is_ID(), and PointerRNA::type.
Referenced by rna_property_override_collection_subitem_lookup().
|
static |
Generic RNA property diff function.
Return value follows comparison functions convention (0 is equal, -1 if prop_a value is lesser than prop_b one, and 1 otherwise.
Definition at line 299 of file rna_access_compare_override.cc.
References PropertyRNAOrID::array_len, BLI_assert, BLI_assert_unreachable, CLOG_ERROR, RNAPropertyOverrideDiffContext::comparison, ELEM, PropertyRNA::flag_override, PropertyRNAOrID::identifier, PropertyRNAOrID::idprop, PropertyRNAOrID::is_array, PropertyRNAOrID::is_idprop, PropertyRNAOrID::is_set, RNAPropertyOverrideDiffContext::liboverride, RNAPropertyOverrideDiffContext::liboverride_flags, LOG, RNAPropertyOverrideDiffContext::mode, PropertyRNA::override_diff, RNAPropertyOverrideDiffContext::prop_a, RNAPropertyOverrideDiffContext::prop_b, PROP_COLLECTION, PROP_POINTER, PROPOVERRIDE_NO_COMPARISON, PropertyRNAOrID::ptr, PropertyRNAOrID::rawprop, RNAPropertyOverrideDiffContext::report_flag, RNA_EQ_UNSET_MATCH_ANY, RNA_EQ_UNSET_MATCH_NONE, RNAPropertyOverrideDiffContext::rna_path, RNAPropertyOverrideDiffContext::rna_path_len, RNA_property_editable_flag(), RNA_property_overridable_get(), rna_property_override_diff_default(), RNA_property_type(), and PropertyRNAOrID::rnaprop.
Referenced by RNA_property_equals(), and RNA_struct_override_matches().
| int RNA_property_override_flag | ( | PropertyRNA * | prop | ) |
Definition at line 118 of file rna_access_compare_override.cc.
References PropertyRNA::flag_override, and rna_ensure_property().
Referenced by RNA_struct_override_matches().
| eRNAOverrideStatus RNA_property_override_library_status | ( | Main * | bmain, |
| PointerRNA * | ptr, | ||
| PropertyRNA * | prop, | ||
| const int | index ) |
Definition at line 1713 of file rna_access_compare_override.cc.
References IDOverrideLibraryPropertyOperation::flag, ID_IS_OVERRIDE_LIBRARY, LIBOVERRIDE_OP_FLAG_LOCKED, LIBOVERRIDE_OP_FLAG_MANDATORY, PointerRNA::owner_id, ptr, RNA_OVERRIDE_STATUS_LOCKED, RNA_OVERRIDE_STATUS_MANDATORY, RNA_OVERRIDE_STATUS_OVERRIDABLE, RNA_OVERRIDE_STATUS_OVERRIDDEN, RNA_property_editable_flag(), RNA_property_overridable_get(), and RNA_property_override_property_operation_find().
Referenced by override_remove_button_poll(), override_type_set_button_poll(), ui_but_override_flag(), and ui_popup_context_menu_for_button().
|
static |
Definition at line 513 of file rna_access_compare_override.cc.
References BKE_lib_override_library_property_operation_operands_validate(), BLI_assert_unreachable, CLOG_ERROR, ELEM, RNAPropertyOverrideApplyContext::len_dst, RNAPropertyOverrideApplyContext::len_src, RNAPropertyOverrideApplyContext::len_storage, LIBOVERRIDE_OP_NOOP, RNAPropertyOverrideApplyContext::liboverride_operation, LOG, PropertyRNA::magic, IDOverrideLibraryPropertyOperation::operation, PropertyRNA::override_apply, RNAPropertyOverrideApplyContext::prop_dst, RNAPropertyOverrideApplyContext::prop_src, RNAPropertyOverrideApplyContext::prop_storage, RNAPropertyOverrideApplyContext::ptr_dst, RNAPropertyOverrideApplyContext::ptr_src, RNAPropertyOverrideApplyContext::ptr_storage, RNA_MAGIC, RNA_property_array_length(), and rna_property_override_apply_default().
Referenced by RNA_property_copy(), rna_property_override_apply_ex(), and RNA_struct_override_matches().
|
static |
Definition at line 419 of file rna_access_compare_override.cc.
References BLI_assert_unreachable, CLOG_ERROR, ELEM, LIBOVERRIDE_OP_ADD, LIBOVERRIDE_OP_MULTIPLY, LIBOVERRIDE_OP_SUBTRACT, LISTBASE_FOREACH, LOG, PropertyRNA::magic, IDOverrideLibraryProperty::operations, PropertyRNA::override_store, RNA_MAGIC, IDOverrideLibraryProperty::rna_path, RNA_property_array_length(), and rna_property_override_store_default().
Referenced by RNA_struct_override_store().
| IDOverrideLibraryProperty * RNA_property_override_property_find | ( | Main * | bmain, |
| PointerRNA * | ptr, | ||
| PropertyRNA * | prop, | ||
| ID ** | r_owner_id ) |
Definition at line 1634 of file rna_access_compare_override.cc.
References BKE_lib_override_library_property_find(), ptr, and rna_property_override_property_real_id_owner().
Referenced by override_remove_button_exec(), and RNA_property_override_property_operation_find().
| IDOverrideLibraryProperty * RNA_property_override_property_get | ( | Main * | bmain, |
| PointerRNA * | ptr, | ||
| PropertyRNA * | prop, | ||
| bool * | r_created ) |
Definition at line 1650 of file rna_access_compare_override.cc.
References BKE_lib_override_library_property_get(), ptr, and rna_property_override_property_real_id_owner().
Referenced by RNA_property_override_property_operation_get().
| IDOverrideLibraryPropertyOperation * RNA_property_override_property_operation_find | ( | Main * | bmain, |
| PointerRNA * | ptr, | ||
| PropertyRNA * | prop, | ||
| const int | index, | ||
| const bool | strict, | ||
| bool * | r_strict ) |
Definition at line 1670 of file rna_access_compare_override.cc.
References BKE_lib_override_library_property_operation_find(), ptr, and RNA_property_override_property_find().
Referenced by RNA_property_override_library_status().
| IDOverrideLibraryPropertyOperation * RNA_property_override_property_operation_get | ( | Main * | bmain, |
| PointerRNA * | ptr, | ||
| PropertyRNA * | prop, | ||
| const short | operation, | ||
| const int | index, | ||
| const bool | strict, | ||
| bool * | r_strict, | ||
| bool * | r_created ) |
Definition at line 1689 of file rna_access_compare_override.cc.
References BKE_lib_override_library_property_operation_get(), ptr, and RNA_property_override_property_get().
Referenced by override_type_set_button_exec().
|
static |
Find the actual ID owner of the given ptr PointerRNA, in override sense, and generate the full rna path from it to given prop PropertyRNA if rna_path is given.
Definition at line 62 of file rna_access_compare_override.cc.
References BLI_assert_unreachable, GS, ID_FLAG_EMBEDDED_DATA, ID_FLAG_EMBEDDED_DATA_LIB_OVERRIDE, ID_GR, ID_KE, ID_NT, PointerRNA::owner_id, ptr, RNA_find_real_ID_and_path(), and RNA_path_from_ID_to_property().
Referenced by override_apply_property_check_skip(), rna_property_override_check_resync(), RNA_property_override_property_find(), RNA_property_override_property_get(), and RNA_struct_override_apply().
| bool RNA_struct_equals | ( | Main * | bmain, |
| PointerRNA * | ptr_a, | ||
| PointerRNA * | ptr_b, | ||
| eRNACompareMode | mode ) |
Definition at line 256 of file rna_access_compare_override.cc.
References PointerRNA::data, CollectionPropertyIterator::ptr, RNA_property_collection_begin(), RNA_property_collection_end(), RNA_property_collection_next(), RNA_property_equals(), RNA_struct_iterator_property(), PointerRNA::type, and CollectionPropertyIterator::valid.
Referenced by wm_keymap_item_equals_result().
| void RNA_struct_override_apply | ( | Main * | bmain, |
| PointerRNA * | id_ptr_dst, | ||
| PointerRNA * | id_ptr_src, | ||
| PointerRNA * | id_ptr_storage, | ||
| IDOverrideLibrary * | liboverride, | ||
| eRNAOverrideApplyFlag | flag ) |
Apply given override operations on id_ptr_dst, using id_ptr_src (and id_ptr_storage for differential ops) as source.
id_ptr_dst etc. could be any type of RNA structure, currently they are always ID ones. In any case, they are the roots of the rna_path of all override properties in the given liboverride data. Definition at line 1492 of file rna_access_compare_override.cc.
References BKE_idtype_get_info_from_id(), BLI_assert, CLOG_INFO, PointerRNA::data, RNAPropertyOverrideApplyContext::do_insert, flag, IDOverrideLibraryPropertyOperation::flag, RNAPropertyOverrideApplyContext::flag, ID_TAG_LIBOVERRIDE_NEED_RESYNC, IDTypeInfo::lib_override_apply_post, RNAPropertyOverrideApplyContext::liboverride, LIBOVERRIDE_OP_FLAG_IDPOINTER_MATCH_REFERENCE, RNAPropertyOverrideApplyContext::liboverride_operation, LIBOVERRIDE_PROP_TAG_NEEDS_RETORE, RNAPropertyOverrideApplyContext::liboverride_property, LISTBASE_FOREACH, LOG, ID::name, override_apply_property_check_skip(), PointerRNA::owner_id, PROP_COLLECTION, RNAPropertyOverrideApplyContext::prop_dst, PROP_POINTER, RNAPropertyOverrideApplyContext::prop_src, RNAPropertyOverrideApplyContext::prop_storage, IDOverrideLibrary::properties, RNAPropertyOverrideApplyContext::ptr_dst, RNAPropertyOverrideApplyContext::ptr_item_dst, RNAPropertyOverrideApplyContext::ptr_item_src, RNAPropertyOverrideApplyContext::ptr_item_storage, RNAPropertyOverrideApplyContext::ptr_src, RNAPropertyOverrideApplyContext::ptr_storage, RNA_OVERRIDE_APPLY_FLAG_RESTORE_ONLY, RNA_OVERRIDE_APPLY_FLAG_SKIP_RESYNC_CHECK, RNA_path_resolve_property(), RNA_path_resolve_property_and_item_pointer(), rna_property_override_apply_ex(), rna_property_override_check_resync(), rna_property_override_collection_subitem_lookup(), rna_property_override_property_real_id_owner(), RNA_property_pointer_get(), RNA_property_pointer_type(), RNA_struct_is_a(), RNA_struct_is_ID(), RNA_struct_override_apply(), ID::tag, TIMEIT_END_AVERAGED, TIMEIT_START_AVERAGED, and PointerRNA::type.
Referenced by BKE_lib_override_library_operations_restore(), BKE_lib_override_library_update(), lib_override_library_resync(), and RNA_struct_override_apply().
| bool RNA_struct_override_matches | ( | Main * | bmain, |
| PointerRNA * | ptr_local, | ||
| PointerRNA * | ptr_reference, | ||
| const char * | root_path, | ||
| size_t | root_path_len, | ||
| IDOverrideLibrary * | liboverride, | ||
| eRNAOverrideMatch | flags, | ||
| eRNAOverrideMatchResult * | r_report_flags ) |
Check whether reference and local overridden data match (are the same), with respect to given restrictive sets of properties. If requested, will generate needed new property overrides, and/or restore values from reference.
| r_report_flags | If given, will be set with flags matching actions taken by the function on ptr_local. |
Definition at line 594 of file rna_access_compare_override.cc.
References BKE_lib_override_library_operations_tag(), BKE_lib_override_library_property_find(), BKE_lib_override_library_property_get(), BKE_lib_override_library_property_operation_get(), BKE_pose_ensure(), BLI_assert, BLI_assert_msg, BLI_time_now_seconds(), CLOG_INFO, Object::data, PointerRNA::data, diff(), ELEM, ListBase::first, float, GS, ID_OB, PropertyRNAOrID::identifier, PropertyRNAOrID::idprop, PropertyRNAOrID::is_idprop, LIBOVERRIDE_OP_NOOP, LIBOVERRIDE_OP_REPLACE, RNAPropertyOverrideApplyContext::liboverride_operation, LIBOVERRIDE_PROP_OP_TAG_UNUSED, LIBOVERRIDE_PROP_TAG_NEEDS_RETORE, LIBOVERRIDE_TAG_NEEDS_RESTORE, LOG, MEM_mallocN, ID::name, OB_ARMATURE, IDOverrideLibraryPropertyOperation::operation, IDOverrideLibraryProperty::operations, ID::override_library, PointerRNA::owner_id, printf, RNAPropertyOverrideApplyContext::prop_dst, RNAPropertyOverrideApplyContext::prop_src, PROPOVERRIDE_IGNORE, CollectionPropertyIterator::ptr, PropertyRNAOrID::ptr, RNAPropertyOverrideApplyContext::ptr_dst, RNAPropertyOverrideApplyContext::ptr_src, IDOverrideLibrary::reference, RNA_EQ_STRICT, RNA_OVERRIDE_COMPARE_CREATE, RNA_OVERRIDE_COMPARE_IGNORE_NON_OVERRIDABLE, RNA_OVERRIDE_COMPARE_IGNORE_OVERRIDDEN, RNA_OVERRIDE_COMPARE_RESTORE, RNA_OVERRIDE_COMPARE_TAG_FOR_RESTORE, RNA_OVERRIDE_MATCH_RESULT_CREATED, RNA_OVERRIDE_MATCH_RESULT_RESTORE_TAGGED, RNA_OVERRIDE_MATCH_RESULT_RESTORED, RNA_PATH_BUFFSIZE, RNA_path_from_ID_to_property(), RNA_property_animated(), RNA_property_collection_begin(), RNA_property_collection_end(), RNA_property_collection_next(), RNA_property_editable(), RNA_property_overridable_get(), rna_property_override_diff(), RNA_property_override_flag(), rna_property_override_operation_apply(), rna_property_rna_or_id_get(), RNA_struct_iterator_property(), PropertyRNAOrID::rnaprop, IDOverrideLibrary::runtime, IDOverrideLibraryProperty::tag, IDOverrideLibraryPropertyOperation::tag, IDOverrideLibraryRuntime::tag, Object::type, PointerRNA::type, and CollectionPropertyIterator::valid.
Referenced by BKE_lib_override_library_status_check_local(), BKE_lib_override_library_status_check_reference(), and lib_override_library_operations_create().
| bool RNA_struct_override_store | ( | Main * | bmain, |
| PointerRNA * | ptr_local, | ||
| PointerRNA * | ptr_reference, | ||
| PointerRNA * | ptr_storage, | ||
| IDOverrideLibrary * | liboverride ) |
Store needed second operands into storage data-block for differential override operations.
Definition at line 945 of file rna_access_compare_override.cc.
References LISTBASE_FOREACH, PointerRNA::owner_id, IDOverrideLibrary::properties, RNA_path_resolve_property(), rna_property_override_operation_store(), RNA_struct_override_store(), TIMEIT_END_AVERAGED, and TIMEIT_START_AVERAGED.
Referenced by BKE_lib_override_library_operations_store_start(), and RNA_struct_override_store().
|
static |
Definition at line 52 of file rna_access_compare_override.cc.
Referenced by override_apply_property_check_skip(), rna_property_override_apply_ex(), rna_property_override_check_resync(), rna_property_override_collection_subitem_lookup(), rna_property_override_diff(), rna_property_override_operation_apply(), rna_property_override_operation_store(), RNA_struct_override_apply(), and RNA_struct_override_matches().