From 428e07a9f7719e3133ae7efdca1223697c17d812 Mon Sep 17 00:00:00 2001 From: Julian Eisel Date: Wed, 12 Apr 2017 14:47:54 +0200 Subject: Outliner: Draw nested collections before objects of a collection Collections may contain a huge list of objects, would be annoying having to scroll over it all the time to get to the nested collections. --- source/blender/editors/space_outliner/outliner_tree.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'source/blender/editors/space_outliner/outliner_tree.c') diff --git a/source/blender/editors/space_outliner/outliner_tree.c b/source/blender/editors/space_outliner/outliner_tree.c index bb70a08e32d..60c2f107d20 100644 --- a/source/blender/editors/space_outliner/outliner_tree.c +++ b/source/blender/editors/space_outliner/outliner_tree.c @@ -1368,12 +1368,11 @@ static void outliner_add_layer_collections_recursive( ten->reinsert = outliner_layer_collections_reorder; ten->reinsert_poll = outliner_layer_collections_reorder_poll; + outliner_add_layer_collections_recursive(soops, &ten->subtree, &collection->layer_collections, ten); for (LinkData *link = collection->object_bases.first; link; link = link->next) { outliner_add_element(soops, &ten->subtree, ((Base *)link->data)->object, ten, 0, 0); } outliner_make_hierarchy(&ten->subtree); - - outliner_add_layer_collections_recursive(soops, &ten->subtree, &collection->layer_collections, ten); } } static void outliner_add_collections_act_layer(SpaceOops *soops, SceneLayer *layer) @@ -1447,15 +1446,15 @@ static void outliner_add_scene_collections_recursive( ten->reinsert = outliner_scene_collections_reorder; ten->reinsert_poll = outliner_scene_collections_reorder_poll; - outliner_add_scene_collection_objects(soops, &ten->subtree, collection, ten); outliner_add_scene_collections_recursive(soops, &ten->subtree, &collection->scene_collections, ten); + outliner_add_scene_collection_objects(soops, &ten->subtree, collection, ten); } } static void outliner_add_collections_master(SpaceOops *soops, Scene *scene) { SceneCollection *master = BKE_collection_master(scene); - outliner_add_scene_collection_objects(soops, &soops->tree, master, NULL); outliner_add_scene_collections_recursive(soops, &soops->tree, &master->scene_collections, NULL); + outliner_add_scene_collection_objects(soops, &soops->tree, master, NULL); } /* ======================================================= */ -- cgit v1.2.3