]> git.sesse.net Git - kdenlive/blobdiff - src/trackview.cpp
Display some progress info when opening document
[kdenlive] / src / trackview.cpp
index 8117e5eb1f18429e1bbd301e0c7fa8b1733f9095..9c45abbdba7641361d6eb64a80667deb0a62c2ba 100644 (file)
@@ -136,8 +136,9 @@ void TrackView::parseDocument(QDomDocument doc) {
     QDomElement e;
     QDomElement p;
     bool videotrack;
-    kDebug() << "//////////// TIMELINE FOUND: " << m_projectTracks << " tracks";
+    
     int pos = m_projectTracks - 1;
+
     for (int i = 0; i < m_projectTracks; i++) {
         e = tracks.item(i).toElement();
         QString playlist_name = e.attribute("producer");
@@ -153,10 +154,16 @@ void TrackView::parseDocument(QDomDocument doc) {
             pos--;
             kDebug() << " PRO DUR: " << trackduration << ", TRACK DUR: " << duration;
             if (trackduration > duration) duration = trackduration;
-        } else pos--;
+        } else {
+                       // background black track
+                       int black_clips = e.childNodes().count();
+                       for (int i = 0; i < black_clips; i++)
+                               m_doc->loadingProgressed();
+                       qApp->processEvents();
+                       pos--;
+               }
     }
 
-
     // parse transitions
     QDomNodeList transitions = doc.elementsByTagName("transition");
     int projectTransitions = transitions.count();
@@ -283,6 +290,8 @@ int TrackView::slotAddProjectTrack(int ix, QDomElement xml, bool videotrack) {
         if (elem.tagName() == "blank") {
             position += elem.attribute("length").toInt();
         } else if (elem.tagName() == "entry") {
+                       m_doc->loadingProgressed();
+                       qApp->processEvents();
             // Found a clip
             int in = elem.attribute("in").toInt();
             int id = elem.attribute("producer").toInt();