[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [kdenlive] src: Merge branch '16.12'
From:       Jean-Baptiste Mardelle <null () kde ! org>
Date:       2017-01-05 9:57:04
Message-ID: E1cP4nA-00063f-Dh () code ! kde ! org
[Download RAW message or body]

Git commit 304168ef1b53af853d839e9db29741961239ca10 by Jean-Baptiste Mardelle.
Committed on 05/01/2017 at 09:56.
Pushed by mardelle into branch 'master'.

Merge branch '16.12'

M  +1    -0    src/effectstack/widgets/animationwidget.cpp
M  +19   -12   src/project/dialogs/slideshowclip.cpp
M  +1    -1    src/timeline/managers/previewmanager.cpp

https://commits.kde.org/kdenlive/304168ef1b53af853d839e9db29741961239ca10

diff --cc src/effectstack/widgets/animationwidget.cpp
index d7d35e736,be9b689c9..ca5303e36
--- a/src/effectstack/widgets/animationwidget.cpp
+++ b/src/effectstack/widgets/animationwidget.cpp
@@@ -638,6 -624,11 +638,7 @@@ void AnimationWidget::updateRect(int po
              }
          }
      }
 -    double scale = qMin(m_spinWidth->value() / \
m_monitor->render->frameRenderWidth(), m_spinHeight->value() / \
                m_monitor->render->renderHeight());
 -    m_spinSize->blockSignals(true);
 -    m_spinSize->setValue(100.0 * scale);
 -    m_spinSize->blockSignals(false);
+     m_spinSize->setEnabled(enableEdit);
      m_spinX->setEnabled(enableEdit);
      m_spinY->setEnabled(enableEdit);
      m_spinWidth->setEnabled(enableEdit);
diff --cc src/project/dialogs/slideshowclip.cpp
index 139c1eb63,42e3c1337..57c0ed8aa
--- a/src/project/dialogs/slideshowclip.cpp
+++ b/src/project/dialogs/slideshowclip.cpp
@@@ -92,7 -92,7 +92,7 @@@ SlideshowClip::SlideshowClip(const Time
          if (url.fileName().startsWith(QLatin1String(".all."))) {
              // the image sequence is defined by mimetype
              m_view.method_mime->setChecked(true);
-             m_view.folder_url->setText(url.adjusted(QUrl::RemoveFilename | \
                QUrl::StripTrailingSlash).path());
 -            m_view.folder_url->setText(url.adjusted(QUrl::RemoveFilename|QUrl::StripTrailingSlash).toLocalFile());
 ++            m_view.folder_url->setText(url.adjusted(QUrl::RemoveFilename | \
QUrl::StripTrailingSlash).toLocalFile());  QString filter = url.fileName();
              QString ext = filter.section('.', -1);
              for (int i = 0; i < m_view.image_type->count(); ++i) {
@@@ -224,13 -216,13 +224,13 @@@ void SlideshowClip::parseFolder(
  {
      m_view.icon_list->clear();
      bool isMime = m_view.method_mime->isChecked();
-     QString path = isMime ? m_view.folder_url->url().path() : \
m_view.pattern_url->url().adjusted(QUrl::RemoveFilename).path(); +     QString path = \
isMime ? m_view.folder_url->url().toLocalFile() : \
m_view.pattern_url->url().adjusted(QUrl::RemoveFilename).toLocalFile();  QDir \
dir(path);  if (path.isEmpty() || !dir.exists()) {
 -	m_count = 0;
 -	m_view.buttonBox->button(QDialogButtonBox::Ok)->setEnabled(false);
 -	m_view.label_info->setText(QString());
 -	return;
 +        m_count = 0;
 +        m_view.buttonBox->button(QDialogButtonBox::Ok)->setEnabled(false);
 +        m_view.label_info->setText(QString());
 +        return;
      }
  
      QIcon unknownicon(QStringLiteral("unknown"));
@@@ -254,10 -246,16 +254,17 @@@
              offset = path.section(':', -1).toInt();
              path = path.section('?', 0, 0);
          }
-         QString filter = QUrl::fromLocalFile(path).fileName();
+         QString filter = QFileInfo(path).fileName();
          QString ext = filter.section('.', -1);
-         filter = filter.section('%', 0, -2);
-         qCDebug(KDENLIVE_LOG) << " / /" << path << " / " << ext << " / " << filter;
+         if (filter.contains('%')) {
+             filter = filter.section('%', 0, -2);
+         } else {
+             filter = filter.section('.', 0, -2);
+             while (!filter.isEmpty() && filter.at(filter.count() - 1).isDigit()) {
+                 filter.remove(filter.count() - 1, 1);
+             }
+         }
++        // qCDebug(KDENLIVE_LOG) << " / /" << path << " / " << ext << " / " << \
filter;  QString regexp = '^' + filter + "\\d+\\." + ext + '$';
          QRegExp rx(regexp);
          QStringList entries;
@@@ -276,8 -272,8 +283,8 @@@
          }
          result = entries;
      }
 -    foreach(const QString & path, result) {
 +    foreach (const QString &path, result) {
-         QListWidgetItem *item = new QListWidgetItem(unknownicon, \
QUrl(path).fileName()); +         QListWidgetItem *item = new \
QListWidgetItem(unknownicon, path);  item->setData(Qt::UserRole, dir.filePath(path));
          m_view.icon_list->addItem(item);
      }
@@@ -319,10 -315,10 +326,10 @@@ void SlideshowClip::slotGenerateThumbs(
  void SlideshowClip::slotSetPixmap(const KFileItem &fileItem, const QPixmap &pix)
  {
      for (int i = 0; i < m_view.icon_list->count(); ++i) {
 -        QListWidgetItem* item = m_view.icon_list->item(i);
 +        QListWidgetItem *item = m_view.icon_list->item(i);
          if (item) {
              QString path = item->data(Qt::UserRole).toString();
-             if (path == fileItem.url().path()) {
+             if (path == fileItem.url().toLocalFile()) {
                  item->setIcon(QIcon(pix));
                  item->setData(Qt::UserRole, QString());
                  break;
@@@ -367,14 -361,14 +374,14 @@@ QString SlideshowClip::selectedPath(con
          if (!folder.endsWith(QDir::separator())) {
              folder.append(QDir::separator());
          }
 -	// Check how many files we have
 +        // Check how many files we have
          QDir dir(folder);
 -	QStringList filters;
 -	filters << "*." + extension.section('.', -1);
 -	dir.setNameFilters(filters);
 -	*list = dir.entryList(QDir::Files);
 +        QStringList filters;
 +        filters << "*." + extension.section('.', -1);
 +        dir.setNameFilters(filters);
 +        *list = dir.entryList(QDir::Files);
      } else {
-         folder = url.adjusted(QUrl::RemoveFilename).path();
+         folder = url.adjusted(QUrl::RemoveFilename).toLocalFile();
          QString filter = url.fileName();
          QString ext = '.' + filter.section('.', -1);
          filter = filter.section('.', 0, -2);
@@@ -403,11 -397,9 +410,11 @@@
              }
          }
          extension = filter + "%0" + QString::number(precision) + 'd' + ext;
 -	if (firstFrame > 0) extension.append(QStringLiteral("?begin:%1").arg(firstFrame));
 +        if (firstFrame > 0) {
 +            extension.append(QStringLiteral("?begin:%1").arg(firstFrame));
 +        }
      }
-     //qCDebug(KDENLIVE_LOG) << "// FOUND " << (*list).count() << " items for " << \
                url.path();
 -    //qDebug() << "// FOUND " << (*list).count() << " items for " << \
url.toLocalFile(); ++    //qCDebug(KDENLIVE_LOG) << "// FOUND " << (*list).count() << \
" items for " << url.toLocalFile();  return  folder + extension;
  }
  
diff --cc src/timeline/managers/previewmanager.cpp
index 2b9ab055a,1580cf6e7..ccfc55701
--- a/src/timeline/managers/previewmanager.cpp
+++ b/src/timeline/managers/previewmanager.cpp
@@@ -527,15 -512,14 +527,15 @@@ void PreviewManager::invalidatePreview(
      m_previewGatherTimer.start();
  }
  
 -void PreviewManager::reloadChunks(QList <int> chunks)
 +void PreviewManager::reloadChunks(const QList<int> &chunks)
  {
-     if (m_previewTrack == Q_NULLPTR) {
 -    if (m_previewTrack == NULL || chunks.isEmpty())
++    if (m_previewTrack == Q_NULLPTR || chunks.isEmpty()) {
          return;
 +    }
      m_tractor->lock();
 -    foreach(int ix, chunks) {
 +    foreach (int ix, chunks) {
          if (m_previewTrack->is_blank_at(ix)) {
 -            const QString fileName = \
m_cacheDir.absoluteFilePath(QString("%1.%2").arg(ix).arg(m_extension));  +            \
const QString fileName = \
                m_cacheDir.absoluteFilePath(QStringLiteral("%1.%2").arg(ix).arg(m_extension));
                
              Mlt::Producer prod(*m_tractor->profile(), 0, \
fileName.toUtf8().constData());  if (prod.is_valid()) {
                  m_ruler->updatePreview(ix, true);


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic