Per view-layer collection visibility
authorDalai Felinto <dfelinto@gmail.com>
Wed, 28 Nov 2018 02:49:36 +0000 (00:49 -0200)
committerDalai Felinto <dfelinto@gmail.com>
Tue, 5 Feb 2019 20:42:02 +0000 (18:42 -0200)
commit3d984aa15038f7a7bdf4ffacb93da83713353613
tree12f209375e734dd31476221fb9ce04fa32c97326
parentd1ef6be4a770c8b2caacc70cb93d3cf9ab52e0d9
Per view-layer collection visibility

[re-committing]

We still control this in the viewport collections visibility menu. But
now we are actually changing the visibility of the collections, not of
the objects.

If a collection is indirectly invisible (because one of its parents are
invisible) we gray it out.

Also if you click directly in the collection names, it "isolates" the
collection by hiding all collections, and showing the direct parents and
all the children of the selected collection.

Development Note:

Right now I'm excluding the hidden collections from the depsgraph.
Thus the need for tagging relations to update.

If this proves to be too slow, we can change.
release/scripts/startup/bl_ui/space_view3d.py
source/blender/blenkernel/BKE_layer.h
source/blender/blenkernel/intern/layer.c
source/blender/depsgraph/intern/builder/deg_builder_nodes_view_layer.cc
source/blender/depsgraph/intern/builder/deg_builder_relations_view_layer.cc
source/blender/editors/object/object_edit.c
source/blender/makesdna/DNA_layer_types.h
source/blender/makesrna/intern/rna_layer.c