| 1607 | } |
| 1608 | |
| 1609 | void WaveChannelView::BuildSubViews() const |
| 1610 | { |
| 1611 | if (WaveChannelSubViews::size() == 0) { |
| 1612 | // On-demand steps that can't happen in the constructor |
| 1613 | auto pThis = const_cast<WaveChannelView*>(this); |
| 1614 | pThis->BuildAll(); |
| 1615 | bool minimized = GetMinimized(); |
| 1616 | pThis->WaveChannelSubViews::ForEach([&](WaveChannelSubView &subView){ |
| 1617 | subView.DoSetMinimized(minimized); |
| 1618 | }); |
| 1619 | |
| 1620 | auto &placements = pThis->DoGetPlacements(); |
| 1621 | if (placements.empty()) { |
| 1622 | placements.resize(WaveChannelSubViews::size()); |
| 1623 | |
| 1624 | auto display = TracksPrefs::ViewModeChoice(); |
| 1625 | bool multi = (display == WaveChannelViewConstants::MultiView); |
| 1626 | if (multi) { |
| 1627 | pThis->SetMultiView( true ); |
| 1628 | display = WaveChannelSubViewType::Default(); |
| 1629 | } |
| 1630 | |
| 1631 | pThis->DoSetDisplay( display, !multi ); |
| 1632 | } |
| 1633 | } |
| 1634 | } |
| 1635 | |
| 1636 | void WaveChannelView::Draw( |
| 1637 | TrackPanelDrawingContext &context, |
nothing calls this directly
no test coverage detected