]> git.sesse.net Git - kdenlive/blobdiff - src/clipmanager.cpp
*Re-introduce slideshow clips
[kdenlive] / src / clipmanager.cpp
index 9b43fed2b237ff56b6f88fba188e05f954314417..6feccc285d29df1c26481898468c3dd18b90135c 100644 (file)
@@ -128,6 +128,26 @@ void ClipManager::slotAddColorClipFile(const QString name, const QString color,
     m_doc->commandStack()->push(command);
 }
 
+void ClipManager::slotAddSlideshowClipFile(const QString name, const QString path, int count, const QString duration, const bool loop, QString group, const int groupId) {
+    QDomDocument doc;
+    QDomElement prod = doc.createElement("producer");
+    prod.setAttribute("resource", path);
+    prod.setAttribute("type", (int) SLIDESHOW);
+    uint id = m_clipIdCounter++;
+    prod.setAttribute("id", QString::number(id));
+    prod.setAttribute("in", "0");
+    prod.setAttribute("out", m_doc->getFramePos(duration) * count);
+    prod.setAttribute("ttl", m_doc->getFramePos(duration));
+    prod.setAttribute("name", name);
+    prod.setAttribute("loop", loop);
+    if (!group.isEmpty()) {
+        prod.setAttribute("groupname", group);
+        prod.setAttribute("groupid", groupId);
+    }
+    AddClipCommand *command = new AddClipCommand(m_doc, prod, id, true);
+    m_doc->commandStack()->push(command);
+}
+
 
 
 void ClipManager::slotAddTextClipFile(const QString path, const QString group, const int groupId) {