]> git.sesse.net Git - kdenlive/blobdiff - src/effectstack/effectstackview2.h
Cleanup effect stack (part 2) - show monitor scene when required
[kdenlive] / src / effectstack / effectstackview2.h
index 251777276445ba12d11478f139e4b28eea6fa120..1166fa8d48769d46aac770d78954ca98584c7954 100644 (file)
@@ -25,7 +25,6 @@
 #define EFFECTSTACKVIEW2_H
 
 #include "ui_effectstack2_ui.h"
-#include "effectstackedit.h"
 #include "collapsibleeffect.h"
 #include "collapsiblegroup.h"
 
@@ -69,6 +68,12 @@ public:
     
     /** @brief Palette was changed, update style. */
     void updatePalette();
+    
+    /** @brief Process dropped xml effect. */
+    void processDroppedEffect(QDomElement e, QDropEvent *event);
+    
+    /** @brief Return the stylesheet required for effect parameters. */
+    static const QString getStyleSheet();
 
 protected:
     virtual void mouseMoveEvent(QMouseEvent * event);
@@ -112,6 +117,10 @@ private:
     
     /** @brief Connect an effect to its signals. */
     void connectEffect(CollapsibleEffect *currentEffect);
+    /** @brief Connect a group to its signals. */
+    void connectGroup(CollapsibleGroup *group);
+    /** @brief Returns the currentl active effect. */
+    CollapsibleEffect *currentEffect() const;
 
 public slots:
     /** @brief Sets the clip whose effect list should be managed.
@@ -138,9 +147,9 @@ private slots:
     void slotUpdateEffectParams(const QDomElement old, const QDomElement e, int ix);
 
     /** @brief Move an effect in the stack.
-     * @param index The effect index in the stack
+     * @param indexes The list of effect index in the stack
      * @param up true if we want to move effect up, false for down */
-    void slotMoveEffectUp(int index, bool up);
+    void slotMoveEffectUp(QList <int> indexes, bool up);
 
     /** @brief Delete an effect in the stack. */
     void slotDeleteEffect(const QDomElement effect);
@@ -168,12 +177,13 @@ private slots:
     /** @brief Create a region effect with ix index. */
     void slotCreateRegion(int ix, KUrl url);
     
-    /** @brief Move an effect into a group.
-      ** @param ix the index of effect to move in stack layout
-      ** @param group the effect on which the effect was dropped
-      ** @param lastEffectIndex the last effect index in the group, effect will be inserted after that index
+    /** @brief Move an effect.
+      ** @param currentIndexes the list of effect indexes to move in stack layout
+      ** @param newIndex the position where the effects will be moved
+      ** @param groupIndex the index of the group if any (-1 if none)
+      ** @param groupName the name of the group to paste the effect
       */
-    void slotMoveEffect(int currentIndex, int newIndex, int groupIndex, QString groupName = QString());
+    void slotMoveEffect(QList <int> currentIndexes, int newIndex, int groupIndex, QString groupName = QString());
     
     /** @brief Remove effects from a group */
     void slotUnGroup(CollapsibleGroup* group);
@@ -203,7 +213,7 @@ signals:
     /** Enable or disable an effect */
     void changeEffectState(ClipItem*, int, int, bool);
     /** An effect in stack was moved */
-    void changeEffectPosition(ClipItem*, int, int, int);
+    void changeEffectPosition(ClipItem*, int, QList <int>, int);
     /** an effect was saved, reload list */
     void reloadEffects();
     /** An effect with position parameter was changed, seek */