]> git.sesse.net Git - kdenlive/blobdiff - src/headertrack.cpp
Cleanup
[kdenlive] / src / headertrack.cpp
index 607d5ab06336af1d54f9844f2db64f978a9c4726..3062c4ede72c66734b98b510620b5caa0f762d91 100644 (file)
@@ -19,7 +19,6 @@
 
 
 #include "headertrack.h"
-#include "kdenlivesettings.h"
 
 #include <KIcon>
 #include <KLocale>
 #include <QWidget>
 #include <QPainter>
 #include <QAction>
+#include <QTimer>
 
-HeaderTrack::HeaderTrack(int index, TrackInfo info, QWidget *parent) :
+HeaderTrack::HeaderTrack(int index, TrackInfo info, int height, QWidget *parent) :
         QWidget(parent),
         m_index(index),
         m_type(info.type)
 {
-    setFixedHeight(KdenliveSettings::trackheight());
+    setFixedHeight(height);
     m_view.setupUi(this);
-    m_view.track_number->setText(QString::number(m_index));
+    m_view.track_number->setText(info.trackName.isEmpty() ? QString::number(m_index) : info.trackName);
 
-    m_view.buttonVideo->setChecked(!info.isBlind);
+    m_view.buttonVideo->setChecked(info.isBlind);
     m_view.buttonVideo->setToolTip(i18n("Hide track"));
-    m_view.buttonAudio->setChecked(!info.isMute);
+    m_view.buttonAudio->setChecked(info.isMute);
     m_view.buttonAudio->setToolTip(i18n("Mute track"));
     m_view.buttonLock->setChecked(info.isLocked);
     m_view.buttonLock->setToolTip(i18n("Lock track"));
 
     if (m_type == VIDEOTRACK) {
-        m_view.frame->setBackgroundRole(QPalette::AlternateBase);
-        m_view.frame->setAutoFillBackground(true);
+        setBackgroundRole(QPalette::AlternateBase);
+        setAutoFillBackground(true);
         if (!info.isBlind) m_view.buttonVideo->setIcon(KIcon("kdenlive-show-video"));
         else m_view.buttonVideo->setIcon(KIcon("kdenlive-hide-video"));
     } else {
@@ -65,7 +65,7 @@ HeaderTrack::HeaderTrack(int index, TrackInfo info, QWidget *parent) :
     connect(m_view.buttonLock, SIGNAL(clicked()), this, SLOT(switchLock()));
 
     // Don't show track buttons if size is too small
-    if (KdenliveSettings::trackheight() < 40) {
+    if (height < 40) {
         m_view.buttonVideo->setHidden(true);
         m_view.buttonAudio->setHidden(true);
         m_view.buttonLock->setHidden(true);
@@ -84,18 +84,33 @@ HeaderTrack::HeaderTrack(int index, TrackInfo info, QWidget *parent) :
     QAction *changeAction = new QAction(i18n("Change Track Type"), this);
     addAction(changeAction);
     connect(changeAction, SIGNAL(triggered()), this, SLOT(slotChangeTrack()));
+
+    QAction *renameAction = new QAction(i18n("Rename Track"), this);
+    addAction(renameAction);
+    connect(renameAction, SIGNAL(triggered()), this, SLOT(slotRenameTrack()));
+
 }
 
-HeaderTrack::~HeaderTrack()
+/*HeaderTrack::~HeaderTrack()
+{
+}*/
+
+void HeaderTrack::adjustSize(int height)
 {
+    // Don't show track buttons if size is too small
+    bool smallTracks = height < 40;
+    if (m_type == VIDEOTRACK) m_view.buttonVideo->setHidden(smallTracks);
+    m_view.buttonAudio->setHidden(smallTracks);
+    m_view.buttonLock->setHidden(smallTracks);
+    setFixedHeight(height);
 }
 
 void HeaderTrack::switchVideo()
 {
     if (m_view.buttonVideo->isChecked()) {
-        m_view.buttonVideo->setIcon(KIcon("kdenlive-show-video"));
-    } else {
         m_view.buttonVideo->setIcon(KIcon("kdenlive-hide-video"));
+    } else {
+        m_view.buttonVideo->setIcon(KIcon("kdenlive-show-video"));
     }
     emit switchTrackVideo(m_index);
 }
@@ -103,9 +118,9 @@ void HeaderTrack::switchVideo()
 void HeaderTrack::switchAudio()
 {
     if (m_view.buttonAudio->isChecked()) {
-        m_view.buttonAudio->setIcon(KIcon("kdenlive-show-audio"));
-    } else {
         m_view.buttonAudio->setIcon(KIcon("kdenlive-hide-audio"));
+    } else {
+        m_view.buttonAudio->setIcon(KIcon("kdenlive-show-audio"));
     }
     emit switchTrackAudio(m_index);
 }
@@ -128,6 +143,11 @@ void HeaderTrack::setLock(bool lock)
 }
 
 void HeaderTrack::slotDeleteTrack()
+{
+    QTimer::singleShot(500, this, SLOT(deleteTrack()));
+}
+
+void HeaderTrack::deleteTrack()
 {
     emit deleteTrack(m_index);
 }
@@ -142,17 +162,10 @@ void HeaderTrack::slotChangeTrack()
     emit changeTrack(m_index);
 }
 
-
-// virtual
-/*void HeaderTrack::paintEvent(QPaintEvent *e) {
-    QRect region = e->rect();
-    region.setTopLeft(QPoint(region.left() + 1, region.top() + 1));
-    region.setBottomRight(QPoint(region.right() - 1, region.bottom() - 1));
-    QPainter painter(this);
-    if (m_type == AUDIOTRACK) painter.fillRect(region, QBrush(QColor(240, 240, 255)));
-    else painter.fillRect(region, QBrush(QColor(255, 255, 255)));
-    painter.drawText(region, Qt::AlignCenter, m_label);
-}*/
+void HeaderTrack::slotRenameTrack()
+{
+    emit renameTrack(m_index);
+}
 
 
 #include "headertrack.moc"