***************************************************************************/
-#ifndef CLIPPROPSDIALOG_H
-#define CLIPPROPSDIALOG_H
-
-#include <QDialog>
+#ifndef CLIPPROPERTIES_H
+#define CLIPPROPERTIES_H
#include "definitions.h"
-#include "docclipbase.h"
#include "timecode.h"
+#include "docclipbase.h"
#include "ui_clipproperties_ui.h"
-class ClipProperties : public QDialog {
+#include <QStyledItemDelegate>
+
+class PropertiesViewDelegate : public QStyledItemDelegate
+{
+ Q_OBJECT
+public:
+ PropertiesViewDelegate(QWidget *parent) : QStyledItemDelegate(parent) {
+ m_height = parent->fontMetrics().height() * 1.5;
+ }
+ virtual QSize sizeHint(const QStyleOptionViewItem & option, const QModelIndex & index) const {
+ return QSize(10, m_height);
+ }
+private:
+ int m_height;
+};
+
+class ClipProperties : public QDialog
+{
Q_OBJECT
public:
ClipProperties(DocClipBase *clip, Timecode tc, double fps, QWidget * parent = 0);
+ ClipProperties(QList <DocClipBase *>cliplist, Timecode tc, QMap <QString, QString> commonproperties, QWidget * parent);
+ virtual ~ClipProperties();
QMap <QString, QString> properties();
- int clipId();
-
+ const QString &clipId() const;
+ bool needsTimelineRefresh() const;
+ bool needsTimelineReload() const;
+ void disableClipId(const QString &id);
+
private slots:
-
+ void parseFolder();
+ void slotAddMarker();
+ void slotEditMarker();
+ void slotDeleteMarker();
+ void slotFillMarkersList();
+ void slotCheckMaxLength();
+ void slotEnableLuma(int state);
+ void slotEnableLumaFile(int state);
+ void slotUpdateDurationFormat(int ix);
+ void slotApplyProperties();
+ void slotModified();
private:
Ui::ClipProperties_UI m_view;
+ QMap <QString, QString> m_old_props;
DocClipBase *m_clip;
Timecode m_tc;
double m_fps;
+ /** used to count images in slideshow clip */
+ int m_count;
+ /** some visual properties changed, reload thumbnails */
+ bool m_clipNeedsRefresh;
+ /** clip resource changed, reload it */
+ bool m_clipNeedsReLoad;
+ /** Used to draw video / audio properties */
+ PropertiesViewDelegate *m_propsDelegate;
+
+signals:
+ void addMarker(const QString &, GenTime, QString);
+ void applyNewClipProperties(const QString, QMap <QString, QString> , QMap <QString, QString> , bool, bool);
};