diff --git a/app/panel/param/param.cpp b/app/panel/param/param.cpp index 5cf53fe85..6900fa2a9 100644 --- a/app/panel/param/param.cpp +++ b/app/panel/param/param.cpp @@ -33,6 +33,8 @@ ParamPanel::ParamPanel(QWidget* parent) : void ParamPanel::SetNodes(QList nodes) { view_->SetNodes(nodes); + + Retranslate(); } void ParamPanel::changeEvent(QEvent *e) @@ -46,5 +48,12 @@ void ParamPanel::changeEvent(QEvent *e) void ParamPanel::Retranslate() { SetTitle(tr("Parameter Editor")); - SetSubtitle(tr("(none)")); + + if (view_->nodes().isEmpty()) { + SetSubtitle(tr("(none)")); + } else if (view_->nodes().size() == 1) { + SetSubtitle(view_->nodes().first()->Name()); + } else { + SetSubtitle(tr("(multiple)")); + } } diff --git a/app/widget/footagecombobox/footagecombobox.cpp b/app/widget/footagecombobox/footagecombobox.cpp index ebeae17d9..f3db40464 100644 --- a/app/widget/footagecombobox/footagecombobox.cpp +++ b/app/widget/footagecombobox/footagecombobox.cpp @@ -12,7 +12,7 @@ FootageComboBox::FootageComboBox(QWidget *parent) : void FootageComboBox::showPopup() { - if (root_ == nullptr) { + if (root_ == nullptr || root_->child_count() == 0) { return; } @@ -40,6 +40,13 @@ void FootageComboBox::SetRoot(const Folder *p) clear(); } +void FootageComboBox::SetFootage(Footage *f) +{ + clear(); + + addItem(f->name()); +} + void FootageComboBox::TraverseFolder(const Folder *f, QMenu *m) { for (int i=0;ichild_count();i++) { diff --git a/app/widget/footagecombobox/footagecombobox.h b/app/widget/footagecombobox/footagecombobox.h index 8611fb15b..5f2271620 100644 --- a/app/widget/footagecombobox/footagecombobox.h +++ b/app/widget/footagecombobox/footagecombobox.h @@ -17,6 +17,9 @@ public: void SetRoot(const Folder *p); +public slots: + void SetFootage(Footage* f); + signals: void FootageChanged(Footage* f); diff --git a/app/widget/nodeparamview/nodeparamview.cpp b/app/widget/nodeparamview/nodeparamview.cpp index 853690cad..5729dd747 100644 --- a/app/widget/nodeparamview/nodeparamview.cpp +++ b/app/widget/nodeparamview/nodeparamview.cpp @@ -71,3 +71,8 @@ void NodeParamView::SetNodes(QList nodes) } } } + +const QList &NodeParamView::nodes() +{ + return nodes_; +} diff --git a/app/widget/nodeparamview/nodeparamview.h b/app/widget/nodeparamview/nodeparamview.h index 685599148..3bc9bbb3a 100644 --- a/app/widget/nodeparamview/nodeparamview.h +++ b/app/widget/nodeparamview/nodeparamview.h @@ -33,6 +33,7 @@ public: NodeParamView(QWidget* parent); void SetNodes(QList nodes); + const QList& nodes(); private: QVBoxLayout* layout_; diff --git a/app/widget/nodeparamview/nodeparamviewitem.cpp b/app/widget/nodeparamview/nodeparamviewitem.cpp index a64f6ebf9..187472d5c 100644 --- a/app/widget/nodeparamview/nodeparamviewitem.cpp +++ b/app/widget/nodeparamview/nodeparamviewitem.cpp @@ -188,7 +188,6 @@ QList NodeParamViewItem::CreateWidget(NodeInput* input) footage_combobox->SetRoot(pp->project()->root()); // End test code - // Pretty hacky way of getting the root folder for this node's sequence //const Folder* root_folder = static_cast(static_cast(input->parent()->parent())->root()); //footage_combobox->SetRoot(root_folder);