diff options
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/blenkernel/intern/lib_override.c | 9 | ||||
-rw-r--r-- | source/blender/depsgraph/intern/eval/deg_eval_flush.cc | 3 | ||||
-rw-r--r-- | source/blender/editors/object/object_relations.c | 4 | ||||
-rw-r--r-- | source/blender/makesdna/DNA_ID.h | 11 | ||||
-rw-r--r-- | source/blender/makesrna/intern/rna_ID.c | 8 |
5 files changed, 6 insertions, 29 deletions
diff --git a/source/blender/blenkernel/intern/lib_override.c b/source/blender/blenkernel/intern/lib_override.c index d16428ccd60..d6f037f64a4 100644 --- a/source/blender/blenkernel/intern/lib_override.c +++ b/source/blender/blenkernel/intern/lib_override.c @@ -197,7 +197,6 @@ static ID *lib_override_library_create_from(Main *bmain, ID *reference_id) id_us_min(local_id); BKE_lib_override_library_init(local_id, reference_id); - local_id->override_library->flag |= OVERRIDE_LIBRARY_AUTO; return local_id; } @@ -736,13 +735,15 @@ bool BKE_lib_override_library_status_check_reference(Main *bmain, ID *local) * Generating diff values and applying overrides are much cheaper. * * \return true if new overriding op was created, or some local data was reset. */ -bool BKE_lib_override_library_operations_create(Main *bmain, ID *local, const bool force_auto) +bool BKE_lib_override_library_operations_create(Main *bmain, + ID *local, + const bool UNUSED(force_auto)) { BLI_assert(local->override_library != NULL); const bool is_template = (local->override_library->reference == NULL); bool ret = false; - if (!is_template && (force_auto || local->override_library->flag & OVERRIDE_LIBRARY_AUTO)) { + if (!is_template) { /* Do not attempt to generate overriding rules from an empty place-holder generated by link * code when it cannot find to actual library/ID. Much better to keep the local datablock as * is in the file in that case, until broken lib is fixed. */ @@ -804,7 +805,7 @@ void BKE_lib_override_library_main_operations_create(Main *bmain, const bool for FOREACH_MAIN_ID_BEGIN (bmain, id) { if ((ID_IS_OVERRIDE_LIBRARY(id) && force_auto) || - (ID_IS_OVERRIDE_LIBRARY_AUTO(id) && (id->tag & LIB_TAG_OVERRIDE_LIBRARY_AUTOREFRESH))) { + (id->tag & LIB_TAG_OVERRIDE_LIBRARY_AUTOREFRESH)) { BKE_lib_override_library_operations_create(bmain, id, force_auto); id->tag &= ~LIB_TAG_OVERRIDE_LIBRARY_AUTOREFRESH; } diff --git a/source/blender/depsgraph/intern/eval/deg_eval_flush.cc b/source/blender/depsgraph/intern/eval/deg_eval_flush.cc index ee543dcf25d..df6c139e916 100644 --- a/source/blender/depsgraph/intern/eval/deg_eval_flush.cc +++ b/source/blender/depsgraph/intern/eval/deg_eval_flush.cc @@ -251,8 +251,7 @@ void flush_editors_id_update(Depsgraph *graph, const DEGEditorUpdateContext *upd if (graph->is_active && id_node->is_user_modified) { deg_editors_id_update(update_ctx, id_orig); } - /* ID may need to get its auto-override operations refreshed. */ - if (ID_IS_OVERRIDE_LIBRARY_AUTO(id_orig)) { + if (ID_IS_OVERRIDE_LIBRARY(id_orig)) { id_orig->tag |= LIB_TAG_OVERRIDE_LIBRARY_AUTOREFRESH; } /* Inform draw engines that something was changed. */ diff --git a/source/blender/editors/object/object_relations.c b/source/blender/editors/object/object_relations.c index eed3f2ea90c..fd2fcb11635 100644 --- a/source/blender/editors/object/object_relations.c +++ b/source/blender/editors/object/object_relations.c @@ -2400,10 +2400,6 @@ static int make_override_library_exec(bContext *C, wmOperator *op) /* TODO: is setting active needed? */ BKE_view_layer_base_select_and_set_active(view_layer, base); } - else { - /* Disable auto-override tags for non-active objects, will help with performaces... */ - new_ob->id.override_library->flag &= ~OVERRIDE_LIBRARY_AUTO; - } /* We still want to store all objects' current override status (i.e. change of parent). */ BKE_lib_override_library_operations_create(bmain, &new_ob->id, true); } diff --git a/source/blender/makesdna/DNA_ID.h b/source/blender/makesdna/DNA_ID.h index 4f2bbc4ee73..38115dad023 100644 --- a/source/blender/makesdna/DNA_ID.h +++ b/source/blender/makesdna/DNA_ID.h @@ -225,9 +225,6 @@ typedef struct IDOverrideLibrary { /** List of IDOverrideProperty structs. */ ListBase properties; - short flag; - char _pad[6]; - /* Read/write data. */ /* Temp ID storing extra override data (used for differential operations only currently). * Always NULL outside of read/write context. */ @@ -236,10 +233,6 @@ typedef struct IDOverrideLibrary { IDOverrideLibraryRuntime *runtime; } IDOverrideLibrary; -enum eOverrideLibrary_Flag { - OVERRIDE_LIBRARY_AUTO = 1 << 0, /* Allow automatic generation of overriding rules. */ -}; - /* watch it: Sequence has identical beginning. */ /** * ID is the first thing included in all serializable types. It @@ -482,10 +475,6 @@ typedef enum ID_Type { #define ID_IS_OVERRIDE_LIBRARY_TEMPLATE(_id) \ (((ID *)(_id))->override_library != NULL && ((ID *)(_id))->override_library->reference == NULL) -#define ID_IS_OVERRIDE_LIBRARY_AUTO(_id) \ - (!ID_IS_LINKED((_id)) && ID_IS_OVERRIDE_LIBRARY((_id)) && \ - (((ID *)(_id))->override_library->flag & OVERRIDE_LIBRARY_AUTO)) - /* Check whether datablock type is covered by copy-on-write. */ #define ID_TYPE_IS_COW(_id_type) (!ELEM(_id_type, ID_BR, ID_PAL, ID_IM)) diff --git a/source/blender/makesrna/intern/rna_ID.c b/source/blender/makesrna/intern/rna_ID.c index e0d862ee92a..bc4ba6dd387 100644 --- a/source/blender/makesrna/intern/rna_ID.c +++ b/source/blender/makesrna/intern/rna_ID.c @@ -1430,14 +1430,6 @@ static void rna_def_ID_override_library(BlenderRNA *brna) RNA_def_pointer( srna, "reference", "ID", "Reference ID", "Linked ID used as reference by this override"); - prop = RNA_def_boolean( - srna, - "auto_generate", - true, - "Auto Generate Override", - "Automatically generate overriding operations by detecting changes in properties"); - RNA_def_property_boolean_sdna(prop, NULL, "flag", OVERRIDE_LIBRARY_AUTO); - RNA_def_collection(srna, "properties", "IDOverrideLibraryProperty", |