]> git.sesse.net Git - kdenlive/blobdiff - src/transitionsettings.cpp
Show timecode with dvgrab capture:
[kdenlive] / src / transitionsettings.cpp
index 3b90e5a1d6f2ec945cf56c278d3a1258f055901b..cdab1d25fb2c69b25d57030a38c6875440ba4df8 100644 (file)
 TransitionSettings::TransitionSettings(QWidget* parent) :
         QWidget(parent),
         m_usedTransition(NULL),
-        m_tracksCount(0)
+        m_tracksCount(0),
+        m_autoTrackTransition(0)
 {
     m_ui.setupUi(this);
+    QVBoxLayout *vbox1 = new QVBoxLayout(m_ui.frame);
     m_effectEdit = new EffectStackEdit(m_ui.frame);
+    vbox1->setContentsMargins(0, 0, 0, 0);
+    vbox1->setSpacing(0);
+    vbox1->addWidget(m_effectEdit);
+    m_ui.frame->setSizePolicy(QSizePolicy(QSizePolicy::Expanding, QSizePolicy::Minimum));
     connect(m_effectEdit, SIGNAL(seekTimeline(int)), this, SIGNAL(seekTimeline(int)));
     setEnabled(false);
 
@@ -107,6 +113,7 @@ void TransitionSettings::slotTransitionTrackChanged()
         m_effectEdit->updateParameter("force_track", "1");
         emit transitionUpdated(m_usedTransition, oldxml);
     } else {
+        ix = m_autoTrackTransition;
         m_usedTransition->setForcedTrack(false, ix);
         m_effectEdit->updateParameter("force_track", "0");
         emit transitionUpdated(m_usedTransition, oldxml);
@@ -114,10 +121,11 @@ void TransitionSettings::slotTransitionTrackChanged()
     m_effectEdit->updateParameter("transition_btrack", QString::number(ix));
 }
 
-void TransitionSettings::slotTransitionItemSelected(Transition* t, QPoint p, bool update)
+void TransitionSettings::slotTransitionItemSelected(Transition* t, int nextTrack, QPoint p, bool update)
 {
     setEnabled(t != NULL);
     m_effectEdit->setFrameSize(p);
+    m_autoTrackTransition = nextTrack;
     if (t == m_usedTransition) {
         if (t == NULL) return;
         if (update) {
@@ -126,15 +134,15 @@ void TransitionSettings::slotTransitionItemSelected(Transition* t, QPoint p, boo
             else m_ui.transitionTrack->setCurrentIndex(0);
             m_ui.transitionTrack->blockSignals(false);
         }
-        if (update || t->duration() != m_transitionDuration || t->startPos() != m_transitionStart) {
-            m_transitionDuration = t->duration();
+        if (update || t->cropDuration() != m_transitionDuration || t->startPos() != m_transitionStart) {
+            m_transitionDuration = t->cropDuration();
             m_transitionStart = t->startPos();
             slotTransitionChanged(false, true);
         }
         return;
     } else if (update) return;
     if (t) {
-        m_transitionDuration = t->duration();
+        m_transitionDuration = t->cropDuration();
         m_transitionStart = t->startPos();
         m_ui.transitionTrack->blockSignals(true);
         if (!t->forcedTrack()) m_ui.transitionTrack->setCurrentIndex(0);