]> git.sesse.net Git - kdenlive/commitdiff
replace broken producer by proper red clip named "invalid"
authorJean-Baptiste Mardelle <jb@kdenlive.org>
Wed, 8 Apr 2009 23:14:15 +0000 (23:14 +0000)
committerJean-Baptiste Mardelle <jb@kdenlive.org>
Wed, 8 Apr 2009 23:14:15 +0000 (23:14 +0000)
svn path=/trunk/kdenlive/; revision=3264

src/trackview.cpp

index 486fc8b73eed28be84985565bb4245a6fcf5eb55..8ec56a80426c95b35b0af2db2155af4c2845f103 100644 (file)
@@ -462,13 +462,19 @@ int TrackView::slotAddProjectTrack(int ix, QDomElement xml, bool locked)
                 if (!clip) {
                     // We cannot find the producer, something is really wrong, add
                     // placeholder color clip
-                    /*QDomElement producerXml;
-                    producerXml.setTagName("producer");
-                    producerXml.setAttribute("resource", "0xff0000ff");
+                    QDomDocument doc;
+                    QDomElement producerXml = doc.createElement("producer");
+                    doc.appendChild(producerXml);
+                    producerXml.setAttribute("colour", "0xff0000ff");
                     producerXml.setAttribute("mlt_service", "colour");
                     producerXml.setAttribute("length", "15000");
+                    producerXml.setAttribute("name", "INVALID");
+                    producerXml.setAttribute("type", COLOR);
                     producerXml.setAttribute("id", id);
-                    missingClip = new DocClipBase(m_doc->clipManager(), producerXml, id);*/
+                    clip = new DocClipBase(m_doc->clipManager(), doc.documentElement(), id);
+                    xml.insertBefore(producerXml, QDomNode());
+                    m_doc->clipManager()->addClip(clip);
+
                     m_documentErrors.append(i18n("Broken clip producer %1", id) + '\n');
                 } else {
                     // Found correct producer