]> git.sesse.net Git - kdenlive/blobdiff - src/clipitem.h
Fix broken keyframes when dropping an effect on another clip
[kdenlive] / src / clipitem.h
index 7a075c40fd6e9010e04508ffd61f7e937819b25d..a2317f424baabb5c75136fb12bc4d17e3e669d34 100644 (file)
@@ -85,21 +85,28 @@ public:
 
     /** @brief Gets a unique (?) effect id. */
     int effectsCounter();
+    
+        /** @brief Gets a copy of the xml of an effect.
+    * @param ix The effect's list index (starting from 0)
+    * @return A copy of the effect's xml */
+    QDomElement effect(int ix) const;
 
     /** @brief Gets a copy of the xml of an effect.
-    * @param ix The effect's index in effectlist
+    * @param ix The effect's index in effectlist (starting from 1)
     * @return A copy of the effect's xml */
-    QDomElement effectAt(int ix) const;
+    QDomElement effectAtIndex(int ix) const;
 
     /** @brief Gets the xml of an effect.
-    * @param ix The effect's index in effectlist
+    * @param ix The effect's index in effectlist (starting from 1)
     * @return The effect's xml */
-    QDomElement getEffectAt(int ix) const;
+    QDomElement getEffectAtIndex(int ix) const;
 
     /** @brief Replaces an effect.
     * @param ix The effect's index in effectlist
     * @param effect The new effect */
     void updateEffect(QDomElement effect);
+    /** @brief Enable / disable a list of effect from their indexes. */
+    void enableEffects(QList <int> indexes, bool disable);
     bool moveEffect(QDomElement effect, int ix);
     void flashClip();
     void addTransition(Transition*);
@@ -127,7 +134,8 @@ public:
     void updateKeyframeEffect();
     QDomElement selectedEffect();
     int selectedEffectIndex() const;
-    void initEffect(QDomElement effect, int diff = 0);
+    
+    void initEffect(QDomElement effect, int diff = 0, int offset = 0);
 
     /** @brief Gets all keyframes.
     * @param index Number of the effect
@@ -148,6 +156,8 @@ public:
     const ItemInfo speedIndependantInfo() const;
     int hasEffect(const QString &tag, const QString &id) const;
 
+    /** @brief Adjust keyframes to the new clip. */
+    const QString adjustKeyframes(QString keyframes, int offset);
     /** @brief Makes sure all keyframes are in the clip's cropped duration.
     * @return Whether or not changes were made */
     bool checkKeyFrames();