File indexing completed on 2024-05-19 04:55:07

0001 /*
0002     SPDX-FileCopyrightText: 2008 Jean-Baptiste Mardelle <jb@kdenlive.org>
0003 
0004 SPDX-License-Identifier: GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0005 */
0006 
0007 #pragma once
0008 
0009 #include "widgets/timecodedisplay.h"
0010 #include "ui_clipdurationdialog_ui.h"
0011 
0012 /** @class ClipDurationDialog
0013     @brief A dialog for modifying an item's (clip or transition) duration.
0014     @author Jean-Baptiste Mardelle
0015  */
0016 class ClipDurationDialog : public QDialog, public Ui::ClipDurationDialog_UI
0017 {
0018     Q_OBJECT
0019 
0020 public:
0021     explicit ClipDurationDialog(int clipId, int pos, int minpos, int in, int out, int length, int maxpos, QWidget *parent = nullptr);
0022     GenTime startPos() const;
0023     GenTime cropStart() const;
0024     GenTime duration() const;
0025 
0026 private Q_SLOTS:
0027     void slotCheckDuration();
0028     void slotCheckStart();
0029     void slotCheckCrop();
0030     void slotCheckEnd();
0031 
0032 private:
0033     int m_clipId;
0034     double m_fps;
0035     GenTime m_min;
0036     GenTime m_max;
0037     GenTime m_crop;
0038     GenTime m_length;
0039 };