- QAction *changeAction = new QAction(i18n("Change Track Type"), this);
- addAction(changeAction);
- connect(changeAction, SIGNAL(triggered()), this, SLOT(slotChangeTrack()));
+ QAction *configAction = new QAction(KIcon("configure"), i18n("Configure Track"), this);
+ m_menu.addAction(configAction);
+ connect(configAction, SIGNAL(triggered()), this, SLOT(slotConfigTrack()));
+}
+
+/*HeaderTrack::~HeaderTrack()
+{
+}*/
+
+void HeaderTrack::updateEffectLabel(QStringList effects)
+{
+ QColor col = track_number->palette().color(QPalette::Base);
+ if (!effects.isEmpty()) {
+ effect_label->setHidden(false);
+ effect_label->setToolTip(effects.join("/"));
+ } else {
+ effect_label->setHidden(true);
+ effect_label->setToolTip(QString());
+ }
+}
+
+// virtual
+void HeaderTrack::mousePressEvent(QMouseEvent * event)
+{
+ if (track_number->hasFocus()) {
+ track_number->clearFocus();
+ return;
+ }
+ if (!m_isSelected) emit selectTrack(m_index);
+ emit showTrackEffects(m_index);
+ QWidget::mousePressEvent(event);
+}
+
+// virtual
+void HeaderTrack::contextMenuEvent(QContextMenuEvent * event)
+{
+ if (track_number->hasFocus()) {
+ track_number->clearFocus();
+ return;
+ }
+ m_menu.popup(event->globalPos());
+}
+
+void HeaderTrack::mouseDoubleClickEvent(QMouseEvent* event)
+{
+ if (track_number->hasFocus()) {
+ track_number->clearFocus();
+ return;
+ }
+ slotConfigTrack();
+ QWidget::mouseDoubleClickEvent(event);
+}