]> git.sesse.net Git - kdenlive/blobdiff - src/spacerdialog.cpp
Const'ref
[kdenlive] / src / spacerdialog.cpp
index 756dd5ef6342099d0aa8bfd5c0f7b4c42d3ef309..19ff4f8596ec23957e374ff5fb8f8c36f8ca07cb 100644 (file)
  *   51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA          *
  ***************************************************************************/
 
-#include <QWheelEvent>
-#include <KDebug>
 
 #include "spacerdialog.h"
 #include "kthumb.h"
 #include "kdenlivesettings.h"
 
-SpacerDialog::SpacerDialog(const GenTime duration, Timecode tc, int track, int trackNumber, QWidget * parent): QDialog(parent), m_tc(tc) {
-    setFont(KGlobalSettings::toolBarFont());
-    m_fps = m_tc.fps();
-    m_view.setupUi(this);
-    m_view.space_duration->setText(tc.getTimecode(duration, m_fps));
-    QStringList tracks;
-    tracks << i18n("All tracks");
-    for (int i = 0; i < trackNumber - 1; i++) {
-        tracks << QString::number(i);
-    }
-    m_view.track_number->addItems(tracks);
-    m_view.track_number->setCurrentIndex(track);
-
-    connect(m_view.position_up, SIGNAL(clicked()), this, SLOT(slotTimeUp()));
-    connect(m_view.position_down, SIGNAL(clicked()), this, SLOT(slotTimeDown()));
+#include <QWheelEvent>
+#include <KDebug>
 
-    adjustSize();
-}
 
-SpacerDialog::~SpacerDialog() {
-}
-
-void SpacerDialog::slotTimeUp() {
-    int duration = m_tc.getFrameCount(m_view.space_duration->text(), m_fps);
-    duration ++;
-    m_view.space_duration->setText(m_tc.getTimecode(GenTime(duration, m_fps), m_fps));
-}
+SpacerDialog::SpacerDialog(const GenTime &duration, const Timecode &tc, int track, const QList<TrackInfo> &tracks, QWidget * parent) :
+    QDialog(parent),
+    m_in(tc)
+{
+    setFont(KGlobalSettings::toolBarFont());
+    setupUi(this);
+    inputLayout->addWidget(&m_in);
+    m_in.setValue(duration);
 
-void SpacerDialog::slotTimeDown() {
-    int duration = m_tc.getFrameCount(m_view.space_duration->text(), m_fps);
-    if (duration <= 0) return;
-    duration --;
-    m_view.space_duration->setText(m_tc.getTimecode(GenTime(duration, m_fps), m_fps));
-}
+    QStringList trackItems;
+    trackItems << i18n("All tracks");
+    for (int i = tracks.count() - 1; i >= 0; --i) {
+        if (!tracks.at(i).trackName.isEmpty())
+            trackItems << tracks.at(i).trackName + " (" + QString::number(i) + ')';
+        else
+            trackItems << QString::number(i);
+    }
+    track_number->addItems(trackItems);
+    track_number->setCurrentIndex(track);
 
-GenTime SpacerDialog::selectedDuration() {
-    return GenTime(m_tc.getFrameCount(m_view.space_duration->text(), m_fps), m_fps);
+    adjustSize();
 }
 
-void SpacerDialog::wheelEvent(QWheelEvent * event) {
-    if (m_view.space_duration->underMouse()) {
-        if (event->delta() > 0)
-            slotTimeUp();
-        else
-            slotTimeDown();
-    }
+GenTime SpacerDialog::selectedDuration() const
+{
+    return m_in.gentime();
 }
 
-int SpacerDialog::selectedTrack() {
-    return m_view.track_number->currentIndex() - 1;
+int SpacerDialog::selectedTrack() const
+{
+    return track_number->currentIndex() - 1;
 }
 
 #include "spacerdialog.moc"