diff --git a/app/node/output/track/track.cpp b/app/node/output/track/track.cpp index 3c0c11ced..9672666b9 100644 --- a/app/node/output/track/track.cpp +++ b/app/node/output/track/track.cpp @@ -96,15 +96,6 @@ QString TrackOutput::Description() const "a Sequence."); } -QString TrackOutput::GetTrackName() -{ - if (track_name_.isEmpty()) { - return GetDefaultTrackName(track_type_, index_); - } - - return track_name_; -} - const double &TrackOutput::GetTrackHeight() const { return track_height_; @@ -438,11 +429,6 @@ void TrackOutput::Hash(QCryptographicHash &hash, const rational &time) const } } -void TrackOutput::SetTrackName(const QString &name) -{ - track_name_ = name; -} - void TrackOutput::SetMuted(bool e) { muted_input_->set_standard_value(e); diff --git a/app/node/output/track/track.h b/app/node/output/track/track.h index dc02b1979..6e32f1c9c 100644 --- a/app/node/output/track/track.h +++ b/app/node/output/track/track.h @@ -48,8 +48,6 @@ public: virtual QList Category() const override; virtual QString Description() const override; - QString GetTrackName(); - const double& GetTrackHeight() const; void SetTrackHeight(const double& height); @@ -229,8 +227,6 @@ public: static const double kTrackHeightInterval; public slots: - void SetTrackName(const QString& name); - void SetMuted(bool e); void SetLocked(bool e); @@ -296,8 +292,6 @@ private: double track_height_; - QString track_name_; - int index_; bool locked_; diff --git a/app/widget/nodeview/nodeviewitem.cpp b/app/widget/nodeview/nodeviewitem.cpp index b339687c4..8f637a212 100644 --- a/app/widget/nodeview/nodeviewitem.cpp +++ b/app/widget/nodeview/nodeviewitem.cpp @@ -287,10 +287,17 @@ void NodeViewItem::paint(QPainter *painter, const QStyleOptionGraphicsItem *opti QString node_label; - if (node_->GetLabel().isEmpty()) { - node_label = node_->ShortName(); - } else { + if (!node_->GetLabel().isEmpty()) { + // Use label directly if node has one node_label = node_->GetLabel(); + } else if (node_->IsTrack()) { + // If node is a track, use a special track name to help users identify better + // Exception for tracks + TrackOutput* track = static_cast(node_); + node_label = TrackOutput::GetDefaultTrackName(track->track_type(), track->Index()); + } else { + // Otherwise, just use the node's short name + node_label = node_->ShortName(); } QFont f; diff --git a/app/widget/timelinewidget/trackview/trackviewitem.cpp b/app/widget/timelinewidget/trackview/trackviewitem.cpp index d841cbd86..ed394c24e 100644 --- a/app/widget/timelinewidget/trackview/trackviewitem.cpp +++ b/app/widget/timelinewidget/trackview/trackviewitem.cpp @@ -39,24 +39,26 @@ TrackViewItem::TrackViewItem(TrackOutput* track, QWidget *parent) : stack_ = new QStackedWidget(); layout->addWidget(stack_); - label_ = new ClickableLabel(track_->GetTrackName()); - connect(label_, SIGNAL(MouseDoubleClicked()), this, SLOT(LabelClicked())); + label_ = new ClickableLabel(); + connect(label_, &ClickableLabel::MouseDoubleClicked, this, &TrackViewItem::LabelClicked); + connect(track_, &TrackOutput::LabelChanged, this, &TrackViewItem::UpdateLabel); + UpdateLabel(); stack_->addWidget(label_); line_edit_ = new FocusableLineEdit(); - connect(line_edit_, SIGNAL(Confirmed()), this, SLOT(LineEditConfirmed())); - connect(line_edit_, SIGNAL(Cancelled()), this, SLOT(LineEditCancelled())); + connect(line_edit_, &FocusableLineEdit::Confirmed, this, &TrackViewItem::LineEditConfirmed); + connect(line_edit_, &FocusableLineEdit::Cancelled, this, &TrackViewItem::LineEditCancelled); stack_->addWidget(line_edit_); mute_button_ = CreateMSLButton(tr("M"), Qt::red); - connect(mute_button_, SIGNAL(toggled(bool)), track_, SLOT(SetMuted(bool))); + connect(mute_button_, &QPushButton::toggled, track_, &TrackOutput::SetMuted); layout->addWidget(mute_button_); /*solo_button_ = CreateMSLButton(tr("S"), Qt::yellow); layout->addWidget(solo_button_);*/ lock_button_ = CreateMSLButton(tr("L"), Qt::gray); - connect(lock_button_, SIGNAL(toggled(bool)), track_, SLOT(SetLocked(bool))); + connect(lock_button_, &QPushButton::toggled, track_, &TrackOutput::SetLocked); layout->addWidget(lock_button_); setMinimumHeight(mute_button_->height()); @@ -89,11 +91,8 @@ void TrackViewItem::LineEditConfirmed() { line_edit_->blockSignals(true); - QString line_edit_str = line_edit_->text(); - if (!line_edit_str.isEmpty()) { - label_->setText(line_edit_str); - track_->SetTrackName(line_edit_str); - } + track_->SetLabel(line_edit_->text()); + UpdateLabel(); stack_->setCurrentWidget(label_); @@ -109,4 +108,13 @@ void TrackViewItem::LineEditCancelled() line_edit_->blockSignals(false); } +void TrackViewItem::UpdateLabel() +{ + if (track_->GetLabel().isEmpty()) { + label_->setText(track_->GetDefaultTrackName(track_->track_type(), track_->Index())); + } else { + label_->setText(track_->GetLabel()); + } +} + OLIVE_NAMESPACE_EXIT diff --git a/app/widget/timelinewidget/trackview/trackviewitem.h b/app/widget/timelinewidget/trackview/trackviewitem.h index 94a3db4f5..f67479380 100644 --- a/app/widget/timelinewidget/trackview/trackviewitem.h +++ b/app/widget/timelinewidget/trackview/trackviewitem.h @@ -59,6 +59,8 @@ private slots: void LineEditCancelled(); + void UpdateLabel(); + }; OLIVE_NAMESPACE_EXIT