Changeset View
Changeset View
Standalone View
Standalone View
source/blender/editors/space_outliner/outliner_tree.c
| Show First 20 Lines • Show All 2,180 Lines • ▼ Show 20 Lines | |||||
| { | { | ||||
| TreeElement *te, *te_next; | TreeElement *te, *te_next; | ||||
| TreeStoreElem *tselem; | TreeStoreElem *tselem; | ||||
| for (te = lb->first; te; te = te_next) { | for (te = lb->first; te; te = te_next) { | ||||
| te_next = te->next; | te_next = te->next; | ||||
| if ((outliner_element_visible_get(view_layer, te, exclude_filter) == false)) { | if ((outliner_element_visible_get(view_layer, te, exclude_filter) == false)) { | ||||
| /* Don't free the tree, but extract the children from the parent and add to this tree. */ | /* Don't free the tree, but extract the children from the parent and add to this tree. */ | ||||
| /* This also needs filtering the subtree prior (see T69246). */ | |||||
| outliner_filter_subtree(soops, view_layer, &te->subtree, search_string, exclude_filter); | |||||
| te_next = outliner_extract_children_from_subtree(te, lb); | te_next = outliner_extract_children_from_subtree(te, lb); | ||||
| continue; | continue; | ||||
| } | } | ||||
| else if ((exclude_filter & SO_FILTER_SEARCH) == 0) { | else if ((exclude_filter & SO_FILTER_SEARCH) == 0) { | ||||
| /* Filter subtree too. */ | /* Filter subtree too. */ | ||||
| outliner_filter_subtree(soops, view_layer, &te->subtree, search_string, exclude_filter); | outliner_filter_subtree(soops, view_layer, &te->subtree, search_string, exclude_filter); | ||||
| continue; | continue; | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 249 Lines • Show Last 20 Lines | |||||