]> git.sesse.net Git - kdenlive/blobdiff - src/projectlist.h
Fix dropframe timecode, patch from John T. Mertz
[kdenlive] / src / projectlist.h
index 356aa5ddcc25e40258461f90889d31709902891a..ac8c509a8c579aaf3ce98575f0f0e9e575cb7364 100644 (file)
 
 #include <KTreeWidgetSearchLine>
 #include <KUrl>
+#include <KIcon>
+
+#ifdef NEPOMUK
 #include <nepomuk/kratingpainter.h>
 #include <nepomuk/resource.h>
+#endif
 
 #include "definitions.h"
 #include "timecode.h"
 #include "kdenlivesettings.h"
 #include "folderprojectitem.h"
+#include "subprojectitem.h"
 
 namespace Mlt
 {
@@ -75,6 +80,12 @@ public:
             }
             QStyleOptionViewItemV2 opt = setOptions(index, option);
             QPixmap pixmap = decoration(opt, index.data(Qt::DecorationRole));
+            if ((index.flags() & (Qt::ItemIsDragEnabled)) == false) {
+                KIcon icon("dialog-close");
+                QPainter p(&pixmap);
+                p.drawPixmap(1, 1, icon.pixmap(16, 16));
+                p.end();
+            }
             QRect decorationRect = pixmap.rect(); //QRect(QPoint(0, 0), option.decorationSize).intersected(pixmap.rect());
             const int textMargin = QApplication::style()->pixelMetric(QStyle::PM_FocusFrameHMargin) + 1;
             decorationRect.moveTo(r1.topLeft() + QPoint(0, 1));
@@ -107,7 +118,9 @@ public:
             if (option.state & (QStyle::State_Selected)) {
                 painter->fillRect(r1, option.palette.highlight());
             }
+#ifdef NEPOMUK
             KRatingPainter::paintRating(painter, r1, Qt::AlignCenter, index.data().toInt());
+#endif
         } else {
             QItemDelegate::paint(painter, option, index);
         }
@@ -127,17 +140,22 @@ public:
     void slotUpdateClipProperties(const QString &id, QMap <QString, QString> properties);
     QByteArray headerInfo() const;
     void setHeaderInfo(const QByteArray &state);
+    void updateProjectFormat(Timecode t);
     void setupMenu(QMenu *addMenu, QAction *defaultAction);
     void setupGeneratorMenu(QMenu *addMenu, QMenu *transcodeMenu);
     QString currentClipUrl() const;
+    KUrl::List getConditionalUrls(const QString &condition) const;
     void reloadClipThumbnails();
     QDomDocument generateTemplateXml(QString data, const QString &replaceString);
     void cleanup();
     void trashUnusedClips();
     QList <DocClipBase*> documentClipList() const;
-    void addClipCut(const QString &id, int in, int out);
+    void addClipCut(const QString &id, int in, int out, const QString desc, bool newItem);
     void removeClipCut(const QString &id, int in, int out);
     void focusTree() const;
+    SubProjectItem *getSubItem(ProjectItem *clip, QPoint zone);
+    void doUpdateClipCut(const QString &id, const QPoint oldzone, const QPoint zone, const QString &comment);
+    void deleteProjectFolder(QMap <QString, QString> map);
 
 public slots:
     void setDocument(KdenliveDoc *doc);
@@ -160,6 +178,8 @@ public slots:
     void slotReloadClip(const QString &id = QString());
     void slotAddColorClip();
     void regenerateTemplate(const QString &id);
+    void slotUpdateClipCut(QPoint p);
+    void slotAddClipCut(const QString &id, int in, int out);
 
 private:
     ProjectListView *m_listView;
@@ -188,10 +208,12 @@ private:
     void requestClipInfo(const QDomElement xml, const QString id);
     QList <QString> m_thumbnailQueue;
     void requestClipThumbnail(const QString id);
-    void deleteProjectFolder(QMap <QString, QString> map);
     void editFolder(const QString folderName, const QString oldfolderName, const QString &clipId);
     QStringList getGroup() const;
     void regenerateTemplate(ProjectItem *clip);
+    void editClipSelection(QList<QTreeWidgetItem *> list);
+    void adjustTranscodeActions(ProjectItem *clip) const;
+    void updateButtons() const;
 
 private slots:
     void slotClipSelected();
@@ -207,19 +229,21 @@ private slots:
     void slotProcessNextThumbnail();
     void slotCheckForEmptyQueue();
     void slotPauseMonitor();
-    void slotAddClipCut(const QString &id, int in, int out);
     //void slotShowMenu(const QPoint &pos);
 
 signals:
     void clipSelected(DocClipBase *, QPoint zone = QPoint());
-    void getFileProperties(const QDomElement, const QString &, bool);
+    void getFileProperties(const QDomElement, const QString &, int pixHeight, bool);
     void receivedClipDuration(const QString &);
     void showClipProperties(DocClipBase *);
+    void showClipProperties(QList <DocClipBase *>, QMap<QString, QString> commonproperties);
     void projectModified();
     void loadingIsOver();
     void displayMessage(const QString, int progress);
     void clipNameChanged(const QString, const QString);
+    void clipNeedsReload(const QString&, bool);
     void refreshClip();
+    void deleteProjectClips(QStringList ids, QMap <QString, QString> folderids);
 };
 
 #endif