***************************************************************************/
-#ifndef EFFECTLISTWIDGET_H
-#define EFFECTLISTWIDGET_H
+#ifndef EFFECTSLISTWIDGET_H
+#define EFFECTSLISTWIDGET_H
-#include <KListWidget>
-#include "effectslist.h"
+#include <QTreeWidget>
+#include <QDomElement>
-class EffectsListWidget : public KListWidget
+class EffectsList;
+
+class EffectsListWidget : public QTreeWidget
{
- Q_OBJECT
-
- public:
- EffectsListWidget(EffectsList *audioEffectList, EffectsList *videoEffectList, EffectsList *customEffectList, QWidget *parent=0);
+ Q_OBJECT
+
+public:
+ explicit EffectsListWidget(QMenu *menu, QWidget *parent = 0);
virtual ~EffectsListWidget();
- QDomElement currentEffect();
+ const QDomElement currentEffect() const;
QString currentInfo();
- QDomElement itemEffect(QListWidgetItem *item);
+ const QDomElement itemEffect(QTreeWidgetItem *item) const;
+ void initList();
- protected:
- virtual void mousePressEvent(QMouseEvent *event);
- virtual void mouseMoveEvent(QMouseEvent *event);
+protected:
virtual void dragMoveEvent(QDragMoveEvent *event);
+ virtual void contextMenuEvent(QContextMenuEvent * event);
+ virtual QMimeData *mimeData(const QList<QTreeWidgetItem *> list) const;
- private:
- bool m_dragStarted;
- QPoint m_DragStartPosition;
- EffectsList *m_audioList;
- EffectsList *m_videoList;
- EffectsList *m_customList;
- void initList();
+private:
+ QMenu *m_menu;
+ /** @brief Returns the folder item with name equal to passed parameter. */
+ QTreeWidgetItem *findFolder(const QString name);
- };
+private slots:
+ void slotExpandItem(const QModelIndex & index);
+};
#endif