X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fslideshowclip.cpp;h=457af2e0adf9177e61bd6b713841c0af83eb26ed;hb=c2ff32876591d3e015410ac619b4d8e3746571dc;hp=488ce636d1e0d8803ecc8ee214278000a806a96d;hpb=b9e06accf7d5576c2a22443f3c8283818de19775;p=kdenlive diff --git a/src/slideshowclip.cpp b/src/slideshowclip.cpp index 488ce636..457af2e0 100644 --- a/src/slideshowclip.cpp +++ b/src/slideshowclip.cpp @@ -157,6 +157,7 @@ void SlideshowClip::slotEnableLumaFile(int state) } // static +//TODO: sequence begin int SlideshowClip::sequenceCount(KUrl file) { // find pattern @@ -175,12 +176,13 @@ int SlideshowClip::sequenceCount(KUrl file) // Find number of digits in sequence int precision = fullSize - filter.size(); + int firstFrame = file.fileName().section('.', 0, -2).right(precision).toInt(); QString folder = file.directory(KUrl::AppendTrailingSlash); // Check how many files we have QDir dir(folder); QString path; int gap = 0; - for (int i = 0; gap < 100; i++) { + for (int i = firstFrame; gap < 100; i++) { path = filter + QString::number(i).rightJustified(precision, '0', false) + ext; if (dir.exists(path)) { count ++; @@ -217,12 +219,13 @@ void SlideshowClip::parseFolder() filter = filter.section('.', 0, -2); int fullSize = filter.size(); while (filter.at(filter.size() - 1).isDigit()) { - filter.remove(filter.size() - 1, 1); + filter.chop(1); } int precision = fullSize - filter.size(); + int firstFrame = m_view.pattern_url->url().fileName().section('.', 0, -2).right(precision).toInt(); QString path; int gap = 0; - for (int i = 0; gap < 100; i++) { + for (int i = firstFrame; gap < 100; i++) { path = filter + QString::number(i).rightJustified(precision, '0', false) + ext; if (dir.exists(path)) { result.append(path); @@ -297,6 +300,7 @@ QString SlideshowClip::selectedPath() else url = m_view.pattern_url->url(); QString path = selectedPath(url, m_view.method_mime->isChecked(), ".all." + m_view.image_type->itemData(m_view.image_type->currentIndex()).toString(), &list); m_count = list.count(); + kDebug()<<"// SELECTED PATH: "< 0) extension = filter + '%' + QString::number(firstFrame).rightJustified(precision, '0', false) + 'd' + ext; + else extension = filter + '%' + QString::number(precision) + 'd' + ext; } kDebug() << "// FOUND " << (*list).count() << " items for " << url.path(); return folder + extension; @@ -464,6 +477,7 @@ QString SlideshowClip::animationToGeometry(const QString &animation, int &ttl) return geometry; } + #include "slideshowclip.moc"