From aa64fd69e733e49317101ea60299f2179830ae95 Mon Sep 17 00:00:00 2001 From: Julian Eisel Date: Sun, 27 Dec 2020 22:15:20 +0100 Subject: UI: List library overrides in the Outliner Having a centeral place to find a list of all library overrides should be useful for managing production scenes where library overrides are used a lot. This change adds the individually overridden properties of a data-block under the data-block itself. Just how we show modifiers, constraints or pose channels there. This way we can also expose library override operations/options better in future. There's also a filter option for the library overrides now, so they can be hidden. It is only available in the View Layer display mode though, like the other filter options. One internal change this has to do is adding more informative return values to undo pushes and the library override functions called by it. That way we can send a notifier when library overrides change for the Outliner to know when to rebuild the tree. Differential Revision: https://developer.blender.org/D7631 Reviewed by: Andy Goralczyk, Bastien Montagne, William Reynish --- source/blender/makesdna/DNA_space_types.h | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'source/blender/makesdna/DNA_space_types.h') diff --git a/source/blender/makesdna/DNA_space_types.h b/source/blender/makesdna/DNA_space_types.h index f27a89a3d83..03f5d3f8d47 100644 --- a/source/blender/makesdna/DNA_space_types.h +++ b/source/blender/makesdna/DNA_space_types.h @@ -305,8 +305,9 @@ typedef enum eSpaceOutliner_Flag { /* SpaceOutliner.filter */ typedef enum eSpaceOutliner_Filter { - SO_FILTER_SEARCH = (1 << 0), /* Run-time flag. */ - SO_FILTER_UNUSED_1 = (1 << 1), /* cleared */ + SO_FILTER_SEARCH = (1 << 0), /* Run-time flag. */ + SO_FILTER_CLEARED_1 = (1 << 1), + SO_FILTER_NO_LIB_OVERRIDE = SO_FILTER_CLEARED_1, /* re-use */ SO_FILTER_NO_OBJECT = (1 << 2), SO_FILTER_NO_OB_CONTENT = (1 << 3), /* Not only mesh, but modifiers, constraints, ... */ SO_FILTER_NO_CHILDREN = (1 << 4), @@ -339,7 +340,7 @@ typedef enum eSpaceOutliner_Filter { #define SO_FILTER_ANY \ (SO_FILTER_NO_OB_CONTENT | SO_FILTER_NO_CHILDREN | SO_FILTER_OB_TYPE | SO_FILTER_OB_STATE | \ - SO_FILTER_NO_COLLECTION) + SO_FILTER_NO_COLLECTION | SO_FILTER_NO_LIB_OVERRIDE) /* SpaceOutliner.filter_state */ typedef enum eSpaceOutliner_StateFilter { -- cgit v1.2.3