X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fslideshowclip.cpp;h=90651110af323a57d053718edbd92f558400b985;hb=80c878e198cde92fcb14be699b0983e3e936789d;hp=29d84b2ae441b902eab6193dbe5f5edd5a8a7cf9;hpb=c83a8d90341daba2bc688ad1232dc4b836272235;p=kdenlive diff --git a/src/slideshowclip.cpp b/src/slideshowclip.cpp index 29d84b2a..90651110 100644 --- a/src/slideshowclip.cpp +++ b/src/slideshowclip.cpp @@ -53,18 +53,26 @@ SlideshowClip::SlideshowClip(QWidget * parent): QDialog(parent), m_count(0) { m_view.folder_url->setUrl(QDir::homePath()); + // Check for Kdenlive installed luma files + QStringList filters; + filters << "*.pgm" << "*.png"; + + QStringList customLumas = KGlobal::dirs()->findDirs("appdata", "lumas"); + foreach(const QString &folder, customLumas) { + QStringList filesnames = QDir(folder).entryList(filters, QDir::Files); + foreach(const QString &fname, filesnames) { + m_view.luma_file->addItem(KIcon(folder + '/' + fname), fname, folder + '/' + fname); + } + } + + // Check for MLT lumas QString profilePath = KdenliveSettings::mltpath(); - profilePath = profilePath.section('/', 0, -3); - profilePath += "/lumas/PAL/"; - - QDir dir(profilePath); - QStringList filter; - filter << "*.pgm"; - const QStringList result = dir.entryList(filter, QDir::Files); - QStringList imagefiles; - QStringList imagenamelist; - foreach(const QString file, result) { - m_view.luma_file->addItem(KIcon(profilePath + file), file, profilePath + file); + QString folder = profilePath.section('/', 0, -3); + folder.append("/lumas/PAL"); // TODO: cleanup the PAL / NTSC mess in luma files + QDir lumafolder(folder); + QStringList filesnames = lumafolder.entryList(filters, QDir::Files); + foreach(const QString &fname, filesnames) { + m_view.luma_file->addItem(KIcon(folder + '/' + fname), fname, folder + '/' + fname); } adjustSize(); @@ -75,8 +83,11 @@ void SlideshowClip::slotEnableLuma(int state) { if (state == Qt::Checked) enable = true; m_view.luma_duration->setEnabled(enable); m_view.luma_fade->setEnabled(enable); - if (enable) m_view.luma_file->setEnabled(m_view.luma_fade->isChecked()); - else m_view.luma_file->setEnabled(false); + if (enable) { + m_view.luma_file->setEnabled(m_view.luma_fade->isChecked()); + } else m_view.luma_file->setEnabled(false); + m_view.label_softness->setEnabled(m_view.luma_fade->isChecked() && enable); + m_view.luma_softness->setEnabled(m_view.label_softness->isEnabled()); } void SlideshowClip::slotEnableLumaFile(int state) {