X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fprojectlistview.h;h=e644be1bc7f1724174427faf92ac76cdc69f2f39;hb=56aee6aedeeed3efd10ada8fe3c229eddc01ef05;hp=26e2c58158995870c03ff2e332b35730ed0f1270;hpb=51e9f7bb72508ed1c8eff3e31c6cd98ba9118fe8;p=kdenlive diff --git a/src/projectlistview.h b/src/projectlistview.h index 26e2c581..e644be1b 100644 --- a/src/projectlistview.h +++ b/src/projectlistview.h @@ -24,10 +24,30 @@ #include #include #include +#include class DocClipBase; -class KUrl; + +class ItemDelegate: public QStyledItemDelegate +{ +public: + enum ItemRole { + NameRole = Qt::UserRole, + DurationRole, + UsageRole + }; + + ItemDelegate(QAbstractItemView* parent = 0) + : QStyledItemDelegate(parent) + { + } + + /*void drawFocus(QPainter *, const QStyleOptionViewItem &, const QRect &) const { + }*/ + + void paint(QPainter* painter, const QStyleOptionViewItem& option, const QModelIndex& index) const; +}; class ProjectListView : public QTreeWidget { @@ -35,26 +55,23 @@ class ProjectListView : public QTreeWidget public: ProjectListView(QWidget *parent = 0); - virtual ~ProjectListView(); + ~ProjectListView(); void processLayout(); void updateStyleSheet(); protected: - virtual void contextMenuEvent(QContextMenuEvent * event); - virtual void mouseDoubleClickEvent(QMouseEvent * event); - virtual void mousePressEvent(QMouseEvent *event); - virtual void mouseReleaseEvent(QMouseEvent *event); - virtual void mouseMoveEvent(QMouseEvent *event); - virtual void dropEvent(QDropEvent *event); - virtual QStringList mimeTypes() const; - virtual Qt::DropActions supportedDropActions() const; - virtual void dragLeaveEvent(QDragLeaveEvent *); + void contextMenuEvent(QContextMenuEvent * event); + void mouseDoubleClickEvent(QMouseEvent * event); + void mousePressEvent(QMouseEvent *event); + void mouseReleaseEvent(QMouseEvent *event); + void mouseMoveEvent(QMouseEvent *event); + void dropEvent(QDropEvent *event); + QStringList mimeTypes() const; + Qt::DropActions supportedDropActions() const; + void dragLeaveEvent(QDragLeaveEvent *); /** @brief Filters key events to make sure user can expand items with + / -. */ - virtual bool eventFilter(QObject *obj, QEvent *ev); - -public slots: - + bool eventFilter(QObject *obj, QEvent *ev); private: bool m_dragStarted; @@ -68,9 +85,9 @@ private slots: signals: void requestMenu(const QPoint &, QTreeWidgetItem *); void addClip(); - void addClip(const QList , const QString &, const QString &); + void addClip(const QList &, const QString &, const QString &); void showProperties(DocClipBase *); - void focusMonitor(); + void focusMonitor(bool forceRefresh); void pauseMonitor(); void addClipCut(const QString&, int, int); void projectModified();