Page MenuHome

Outliner: Use UI names and grouping for library overrides properties
ClosedPublic

Authored by Julian Eisel (Severin) on Aug 2 2022, 9:57 PM.

Details

Summary

Part of T95802.

Showing properties with an RNA path in the UI isn't very user friendly.
Instead, represent the RNA path as a tree, merging together parts of the RNA path that are shared by multiple properties. Properties and "groups" (RNA structs/pointers) are now shown with their UI name and an icon if any. The actually overridden properties still show the Library Overrides icon.

masterPatch

While this takes more space because of the additional grouping elements and the expanded collections (see below), sub-parts of the tree can now be collapsed, whereas previously it was basically a long list of overridden properties.

Also: When a RNA collection item, like a modifier or constraint was added via a library override, indicate that item and show all collection items in the list, since the order of items may be important context.

Diff Detail

Repository
rB Blender
Branch
temp-outliner-overrides-grouping (branched from master)
Build Status
Buildable 23241
Build 23241: arc lint + arc unit

Event Timeline

Julian Eisel (Severin) requested review of this revision.Aug 2 2022, 9:57 PM
Julian Eisel (Severin) created this revision.
source/blender/editors/space_outliner/CMakeLists.txt
51

This generic label element is more useful than just adding yet another "base" element type. Will probably commit this separately.

source/blender/editors/space_outliner/outliner_draw.cc
1831–1853

Code here adds the "Added through override" label for collection items, but queries the string through the override tree element (where further library override operations can be handled later).

source/blender/editors/space_outliner/tree/tree_element.hh
85

Debugging tool that was handy, may also commit this separately.

source/blender/editors/space_outliner/tree/tree_element_overrides.cc
211

Copies the operation data into a new unique_ptr<>.

source/blender/makesrna/intern/rna_path.cc
607–608

Needed so I can append the path with a collection property name, without also providing a key for an item.

Did not do a detailed check, but from a quick overview patch looks good, and feature is much needed, so fine with me.

This revision is now accepted and ready to land.Aug 4 2022, 3:05 PM
Julian Eisel (Severin) edited the summary of this revision. (Show Details)Aug 4 2022, 3:57 PM