X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fclipproperties.h;h=93cf57eb8a2aa919c15f905246e6dca6ea3be664;hb=f9c0df27ed5dafb1ee72c3e6dea7340de350b542;hp=aa5c8e217cf83692a86141e48861b40ee2f98ca8;hpb=bb16260e8b6ff70ecf3606380090ed9b62764199;p=kdenlive diff --git a/src/clipproperties.h b/src/clipproperties.h index aa5c8e21..93cf57eb 100644 --- a/src/clipproperties.h +++ b/src/clipproperties.h @@ -18,43 +18,78 @@ ***************************************************************************/ -#ifndef CLIPPROPSDIALOG_H -#define CLIPPROPSDIALOG_H - -#include +#ifndef CLIPPROPERTIES_H +#define CLIPPROPERTIES_H #include "definitions.h" #include "timecode.h" #include "docclipbase.h" #include "ui_clipproperties_ui.h" -class ClipProperties : public QDialog { +#include + +class PropertiesViewDelegate : public QStyledItemDelegate +{ + Q_OBJECT +public: + PropertiesViewDelegate(QWidget *parent) : QStyledItemDelegate(parent) { + m_height = parent->fontMetrics().height() * 1.5; + } + virtual QSize sizeHint(const QStyleOptionViewItem &, const QModelIndex &) 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 cliplist, Timecode tc, QMap commonproperties, QWidget * parent); + virtual ~ClipProperties(); QMap properties(); - int clipId() const; + 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(); + void slotDeleteProxy(); + void slotOpenUrl(const QString &url); private: Ui::ClipProperties_UI m_view; + QMap 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; + /** Frame with proxy info / delete button */ + QFrame* m_proxyContainer; signals: - void addMarker(int, GenTime, QString); + void addMarker(const QString &, GenTime, QString); + void deleteProxy(const QString); + void applyNewClipProperties(const QString, QMap , QMap , bool, bool); };