void View::restack_all_trace_tree_items()
{
// Make a list of owners that is sorted from deepest first
- const auto owners = list_row_item_owners();
+ set< TraceTreeItemOwner* > owners;
+ for (const auto &r : *this)
+ owners.insert(r->owner());
vector< TraceTreeItemOwner* > sorted_owners(owners.begin(), owners.end());
sort(sorted_owners.begin(), sorted_owners.end(),
[](const TraceTreeItemOwner* a, const TraceTreeItemOwner *b) {
o->restack_items();
// Animate the items to their destination
- for (const auto &r : *this)
- r->animate_to_layout_v_offset();
+ const vector< shared_ptr<TraceTreeItem> > items(
+ list_by_type<TraceTreeItem>());
+ for (const auto &i : items)
+ i->animate_to_layout_v_offset();
}
void View::get_scroll_layout(double &length, Timestamp &offset) const