fixed bug that wouldn't clear TrackViewItems when a new sequence was opened
This commit is contained in:
@@ -46,25 +46,10 @@ void Sequence::Open(SequencePtr sequence)
|
|||||||
ViewerPanel* viewer_panel = PanelManager::instance()->MostRecentlyFocused<ViewerPanel>();
|
ViewerPanel* viewer_panel = PanelManager::instance()->MostRecentlyFocused<ViewerPanel>();
|
||||||
TimelinePanel* timeline_panel = PanelManager::instance()->MostRecentlyFocused<TimelinePanel>();
|
TimelinePanel* timeline_panel = PanelManager::instance()->MostRecentlyFocused<TimelinePanel>();
|
||||||
NodePanel* node_panel = PanelManager::instance()->MostRecentlyFocused<NodePanel>();
|
NodePanel* node_panel = PanelManager::instance()->MostRecentlyFocused<NodePanel>();
|
||||||
ParamPanel* param_panel = PanelManager::instance()->MostRecentlyFocused<ParamPanel>();
|
|
||||||
CurvePanel* curve_panel = PanelManager::instance()->MostRecentlyFocused<CurvePanel>();
|
|
||||||
|
|
||||||
viewer_panel->ConnectViewerNode(sequence->viewer_output_);
|
viewer_panel->ConnectViewerNode(sequence->viewer_output_);
|
||||||
timeline_panel->ConnectTimelineNode(sequence->timeline_output_);
|
timeline_panel->ConnectTimelineNode(sequence->timeline_output_);
|
||||||
node_panel->SetGraph(sequence.get());
|
node_panel->SetGraph(sequence.get());
|
||||||
|
|
||||||
connect(timeline_panel, &TimelinePanel::TimeChanged, param_panel, &ParamPanel::SetTime);
|
|
||||||
connect(timeline_panel, &TimelinePanel::TimeChanged, viewer_panel, &ViewerPanel::SetTime);
|
|
||||||
connect(timeline_panel, &TimelinePanel::TimeChanged, curve_panel, &CurvePanel::SetTime);
|
|
||||||
connect(viewer_panel, &ViewerPanel::TimeChanged, param_panel, &ParamPanel::SetTime);
|
|
||||||
connect(viewer_panel, &ViewerPanel::TimeChanged, timeline_panel, &TimelinePanel::SetTime);
|
|
||||||
connect(viewer_panel, &ViewerPanel::TimeChanged, curve_panel, &CurvePanel::SetTime);
|
|
||||||
connect(param_panel, &ParamPanel::TimeChanged, viewer_panel, &ViewerPanel::SetTime);
|
|
||||||
connect(param_panel, &ParamPanel::TimeChanged, timeline_panel, &TimelinePanel::SetTime);
|
|
||||||
connect(param_panel, &ParamPanel::TimeChanged, curve_panel, &CurvePanel::SetTime);
|
|
||||||
connect(curve_panel, &CurvePanel::TimeChanged, viewer_panel, &ViewerPanel::SetTime);
|
|
||||||
connect(curve_panel, &CurvePanel::TimeChanged, timeline_panel, &TimelinePanel::SetTime);
|
|
||||||
connect(curve_panel, &CurvePanel::TimeChanged, param_panel, &ParamPanel::SetTime);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void Sequence::add_default_nodes()
|
void Sequence::add_default_nodes()
|
||||||
|
|||||||
@@ -60,7 +60,9 @@ void TrackView::ConnectTrackList(TrackList *list)
|
|||||||
|
|
||||||
if (list_ != nullptr) {
|
if (list_ != nullptr) {
|
||||||
foreach (TrackOutput* track, list_->Tracks()) {
|
foreach (TrackOutput* track, list_->Tracks()) {
|
||||||
splitter_->Insert(track->Index(), track->GetTrackHeight(), new TrackViewItem(track));
|
TrackViewItem* item = new TrackViewItem(track);
|
||||||
|
items_.append(item);
|
||||||
|
splitter_->Insert(track->Index(), track->GetTrackHeight(), item);
|
||||||
}
|
}
|
||||||
|
|
||||||
connect(list_, SIGNAL(TrackHeightChanged(int, int)), splitter_, SLOT(SetTrackHeight(int, int)));
|
connect(list_, SIGNAL(TrackHeightChanged(int, int)), splitter_, SLOT(SetTrackHeight(int, int)));
|
||||||
|
|||||||
@@ -74,9 +74,22 @@ MainWindow::MainWindow(QWidget *parent) :
|
|||||||
curve_panel_ = PanelManager::instance()->CreatePanel<CurvePanel>(this);
|
curve_panel_ = PanelManager::instance()->CreatePanel<CurvePanel>(this);
|
||||||
addDockWidget(Qt::BottomDockWidgetArea, curve_panel_);
|
addDockWidget(Qt::BottomDockWidgetArea, curve_panel_);
|
||||||
|
|
||||||
|
// FIXME: This is fairly "hardcoded" behavior and doesn't support infinite panels
|
||||||
connect(node_panel_, &NodePanel::SelectionChanged, param_panel_, &ParamPanel::SetNodes);
|
connect(node_panel_, &NodePanel::SelectionChanged, param_panel_, &ParamPanel::SetNodes);
|
||||||
connect(param_panel_, &ParamPanel::SelectedInputChanged, curve_panel_, &CurvePanel::SetInput);
|
connect(param_panel_, &ParamPanel::SelectedInputChanged, curve_panel_, &CurvePanel::SetInput);
|
||||||
connect(param_panel_, &ParamPanel::TimebaseChanged, curve_panel_, &CurvePanel::SetTimebase);
|
connect(param_panel_, &ParamPanel::TimebaseChanged, curve_panel_, &CurvePanel::SetTimebase);
|
||||||
|
connect(timeline_panel_, &TimelinePanel::TimeChanged, param_panel_, &ParamPanel::SetTime);
|
||||||
|
connect(timeline_panel_, &TimelinePanel::TimeChanged, viewer_panel_, &ViewerPanel::SetTime);
|
||||||
|
connect(timeline_panel_, &TimelinePanel::TimeChanged, curve_panel_, &CurvePanel::SetTime);
|
||||||
|
connect(viewer_panel_, &ViewerPanel::TimeChanged, param_panel_, &ParamPanel::SetTime);
|
||||||
|
connect(viewer_panel_, &ViewerPanel::TimeChanged, timeline_panel_, &TimelinePanel::SetTime);
|
||||||
|
connect(viewer_panel_, &ViewerPanel::TimeChanged, curve_panel_, &CurvePanel::SetTime);
|
||||||
|
connect(param_panel_, &ParamPanel::TimeChanged, viewer_panel_, &ViewerPanel::SetTime);
|
||||||
|
connect(param_panel_, &ParamPanel::TimeChanged, timeline_panel_, &TimelinePanel::SetTime);
|
||||||
|
connect(param_panel_, &ParamPanel::TimeChanged, curve_panel_, &CurvePanel::SetTime);
|
||||||
|
connect(curve_panel_, &CurvePanel::TimeChanged, viewer_panel_, &ViewerPanel::SetTime);
|
||||||
|
connect(curve_panel_, &CurvePanel::TimeChanged, timeline_panel_, &TimelinePanel::SetTime);
|
||||||
|
connect(curve_panel_, &CurvePanel::TimeChanged, param_panel_, &ParamPanel::SetTime);
|
||||||
}
|
}
|
||||||
|
|
||||||
void MainWindow::SetFullscreen(bool fullscreen)
|
void MainWindow::SetFullscreen(bool fullscreen)
|
||||||
|
|||||||
Reference in New Issue
Block a user