#ifndef EFFECTSTACKVIEW_H
#define EFFECTSTACKVIEW_H
-#include <KIcon>
-
-#include "ui_effectstack_ui.h"
#include "clipitem.h"
-class EffectStackView : public QWidget
-{
- Q_OBJECT
-
- public:
- EffectStackView( QWidget *parent=0);
-
+#include "ui_effectstack_ui.h"
+#include "effectstackedit.h"
+class EffectsList;
+
+
+class EffectStackView : public QWidget {
+ Q_OBJECT
+
+public:
+ EffectStackView(EffectsList *audioEffectList, EffectsList *videoEffectList, EffectsList *customEffectList, QWidget *parent = 0);
+
private:
- int activeRow;
- QStringList effects;
- Ui::EffectStack_UI ui;
- ClipItem* clipref;
- void setupListView(const QStringList& );
- void updateButtonStatus();
+ Ui::EffectStack_UI ui;
+ ClipItem* clipref;
+ QMap<QString, EffectsList*> effectLists;
+ EffectStackEdit* effectedit;
+ void setupListView();
+ void updateButtonStatus();
+
public slots:
- void slotClipItemSelected(ClipItem*);
- void slotItemSelectionChanged();
- void slotItemUp();
- void slotItemDown();
- void slotItemDel();
- void slotSetMoveX();
- void slotSetMoveY();
- void slotSetNew();
- void slotSetHelp();
- void slotShowInTimeline();
+ void slotClipItemSelected(ClipItem*);
+ void slotUpdateEffectParams(const QDomElement&, const QDomElement&);
+
+private slots:
+ void slotItemSelectionChanged();
+ void slotItemUp();
+ void slotItemDown();
+ void slotItemDel();
+ void slotNewEffect();
+ void slotResetEffect();
+ void slotItemChanged(QListWidgetItem *item);
+
+signals:
+ void transferParamDesc(const QDomElement&, int , int);
+ void removeEffect(ClipItem*, QDomElement);
+ /** Parameters for an effect changed, update the filter in playlist */
+ void updateClipEffect(ClipItem*, QDomElement, QDomElement);
+ /** An effect in stack was moved, we need to regenerate
+ all effects for this clip in the playlist */
+ void refreshEffectStack(ClipItem *);
+ /** Enable or disable an effect */
+ void changeEffectState(ClipItem*, QDomElement, bool);
+
};
#endif