Fix Outliner highlighting multiple base elements in different libraries
In the Blender File display mode of the Outliner, mouse hovering a "base" element (e.g. "Objects", "Materials", ...) would also highlight that same base element in other libraries linked into the scene. In fact operations like (un)collapsing would be applied to both too. Issue was that we'd always use the listbase containing the data-blocks from the current main as a way to identify the tree element. So for the same data-block types we'd use the same listbase pointers. Instead use the the library pointer + a per library index.
This commit is contained in:
@@ -150,7 +150,7 @@ TreeElement *TreeDisplayLibraries::add_library_contents(Main &mainvar, ListBase
|
||||
}
|
||||
else {
|
||||
ten = outliner_add_element(
|
||||
&space_outliner_, &tenlib->subtree, lbarray[a], nullptr, TSE_ID_BASE, 0);
|
||||
&space_outliner_, &tenlib->subtree, lib, nullptr, TSE_ID_BASE, a);
|
||||
ten->directdata = lbarray[a];
|
||||
ten->name = outliner_idcode_to_plural(GS(id->name));
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user