]> git.sesse.net Git - kdenlive/blobdiff - src/effectslist.h
Const'ref
[kdenlive] / src / effectslist.h
index e52bb01f80ec1ebb69178bb8f6dd2afdbe02711d..2ef55f0f4bdaf82263e2c3f57a5b3eb59b82fda6 100644 (file)
 
 #include <QDomDocument>
 
+namespace Kdenlive {
+  enum EFFECTTYPE { simpleEffect, groupEffect };
+}
+
 class EffectsList: public QDomDocument
 {
 public:
@@ -67,12 +71,12 @@ public:
     void removeAt(int ix);
     QDomElement itemFromIndex(int ix) const;
     QDomElement insert(QDomElement effect);
-    void updateEffect(QDomElement effect);
-    static bool hasKeyFrames(QDomElement effect);
-    static bool hasSimpleKeyFrames(QDomElement effect);
-    static bool hasGeometryKeyFrames(QDomElement effect);
+    void updateEffect(const QDomElement &effect);
+    static bool hasKeyFrames(const QDomElement &effect);
+    static bool hasSimpleKeyFrames(const QDomElement &effect);
+    static bool hasGeometryKeyFrames(const QDomElement &effect);
     static void setParameter(QDomElement effect, const QString &name, const QString &value);
-    static QString parameter(QDomElement effect, const QString &name);
+    static QString parameter(const QDomElement &effect, const QString &name);
     /** @brief Change the value of a 'property' element from the effect node. */
     static void setProperty(QDomElement effect, const QString &name, const QString &value);
     /** @brief Rename a 'property' element from the effect node. */
@@ -85,13 +89,18 @@ public:
     static void removeMetaProperties(QDomElement producer);
     void clearList();
     /** @brief Get am effect with effect index equal to ix. */
-    QDomElement effectFromIndex(QDomNodeList effects, int ix);
+    QDomElement effectFromIndex(const QDomNodeList &effects, int ix);
     /** @brief Update all effects indexes to make sure they are 1, 2, 3, ... */
     void updateIndexes(QDomNodeList effects, int startIndex);
+    /** @brief Enable / disable a list of effects */
+    void enableEffects(const QList<int> &indexes, bool disable);
 
 private:
     QDomElement m_baseElement;
     bool m_useIndex;
+    
+    /** @brief Init effect default parameter values. */
+    void initEffect(const QDomElement &effect) const;
 
 };