#include <KDebug>
#include <KAction>
-#include <KLocale>
+#include <KLocalizedString>
#include <KFileDialog>
#include <KInputDialog>
#include <KMessageBox>
}
-
-InvalidDialog::InvalidDialog(const QString &caption, const QString &message, bool infoOnly, QWidget *parent) : KDialog(parent)
-{
- setCaption(caption);
- if (infoOnly) setButtons(KDialog::Ok);
- else setButtons(KDialog::Yes | KDialog::No);
- QWidget *w = new QWidget(this);
- QVBoxLayout *l = new QVBoxLayout;
- l->addWidget(new QLabel(message));
- m_clipList = new QListWidget;
- l->addWidget(m_clipList);
- w->setLayout(l);
- setMainWidget(w);
-}
-
-InvalidDialog::~InvalidDialog()
-{
- delete m_clipList;
-}
-
-
-void InvalidDialog::addClip(const QString &id, const QString &path)
-{
- QListWidgetItem *item = new QListWidgetItem(path);
- item->setData(Qt::UserRole, id);
- m_clipList->addItem(item);
-}
-
-QStringList InvalidDialog::getIds() const
-{
- QStringList ids;
- for (int i = 0; i < m_clipList->count(); ++i) {
- ids << m_clipList->item(i)->data(Qt::UserRole).toString();
- }
- return ids;
-}
-
-
ProjectList::ProjectList(QWidget *parent) :
QWidget(parent)
, m_render(NULL)
m_commandStack->push(command);
}
-void ProjectList::slotAddFolder(const QString foldername, const QString &clipId, bool remove, bool edit)
+void ProjectList::slotAddFolder(const QString &foldername, const QString &clipId, bool remove, bool edit)
{
if (remove) {
FolderProjectItem *item = getFolderItemById(clipId);
if (item == NULL) {
item = new ProjectItem(m_listView, clip, pixelSize);
}
- if (item->data(0, DurationRole).isNull()) item->setData(0, DurationRole, i18n("Loading"));
+ if (item->data(0, ItemDelegate::DurationRole).isNull()) item->setData(0, ItemDelegate::DurationRole, i18n("Loading"));
connect(clip, SIGNAL(createProxy(QString)), this, SLOT(slotCreateProxy(QString)));
connect(clip, SIGNAL(abortProxy(QString,QString)), this, SLOT(slotAbortProxy(QString,QString)));
{
ProjectItem *item = getItemById(id);
monitorItemEditing(false);
- if (item) item->setData(0, UsageRole, QString::number(item->numReferences()));
+ if (item){
+ item->setData(0, ItemDelegate::UsageRole, QString::number(item->numReferences()));
+ }
monitorItemEditing(true);
}
else requestClipThumbnail(parentItem->clipId() + '#' + QString::number(pos));
}
-void ProjectList::updateAllClips(bool displayRatioChanged, bool fpsChanged, QStringList brokenClips)
+void ProjectList::updateAllClips(bool displayRatioChanged, bool fpsChanged, const QStringList &brokenClips)
{
if (!m_allClipsProcessed) m_listView->setEnabled(false);
m_listView->setSortingEnabled(false);
else if (!item->hasPixmap()) {
getCachedThumbnail(item);
}
- if (item->data(0, DurationRole).toString().isEmpty()) {
+ if (item->data(0, ItemDelegate::DurationRole).toString().isEmpty()) {
item->changeDuration(clip->getProducer()->get_playtime());
}
if (clip->isPlaceHolder()) {
slotCreateProxy(clip->getId());
}
}
- item->setData(0, UsageRole, QString::number(item->numReferences()));
+ item->setData(0, ItemDelegate::UsageRole, QString::number(item->numReferences()));
}
++it;
}
return allExtensions.simplified();
}
-void ProjectList::slotAddClip(const QString url, const QString &groupName, const QString &groupId)
+void ProjectList::slotAddClip(const QString &url, const QString &groupName, const QString &groupId)
{
kDebug()<<"// Adding clip: "<<url;
QList <QUrl> list;
slotAddClip(list, groupName, groupId);
}
-void ProjectList::slotAddClip(const QList <QUrl> givenList, const QString &groupName, const QString &groupId)
+void ProjectList::slotAddClip(const QList <QUrl> &givenList, const QString &groupName, const QString &groupId)
{
if (!m_commandStack)
kDebug() << "!!!!!!!!!!!!!!!! NO CMD STK";
l->addWidget(c);
l->addStretch(5);
f->setLayout(l);
+
QPointer<KFileDialog> d = new KFileDialog(KUrl("kfiledialog:///clipfolder"), dialogFilter, kapp->activeWindow(), f);
d->setOperationMode(KFileDialog::Opening);
d->setMode(KFile::Files);
if (d->exec() == QDialog::Accepted) {
KdenliveSettings::setAutoimagetransparency(c->isChecked());
- }
- list = d->selectedUrls();
- if (b->isChecked() && list.count() == 1) {
- // Check for image sequence
- KUrl url = list.at(0);
- QString fileName = url.fileName().section('.', 0, -2);
- if (fileName.at(fileName.size() - 1).isDigit()) {
- KFileItem item(KFileItem::Unknown, KFileItem::Unknown, url);
- if (item.mimetype().startsWith("image")) {
- // import as sequence if we found more than one image in the sequence
- QStringList list;
- QString pattern = SlideshowClip::selectedPath(url.path(), false, QString(), &list);
- int count = list.count();
- if (count > 1) {
- delete d;
- QStringList groupInfo = getGroup();
-
- // get image sequence base name
- while (fileName.at(fileName.size() - 1).isDigit()) {
- fileName.chop(1);
+ list = d->selectedUrls();
+ if (b->isChecked() && list.count() == 1) {
+ // Check for image sequence
+ KUrl url = list.at(0);
+ QString fileName = url.fileName().section('.', 0, -2);
+ if (fileName.at(fileName.size() - 1).isDigit()) {
+ KFileItem item(KFileItem::Unknown, KFileItem::Unknown, url);
+ if (item.mimetype().startsWith("image")) {
+ // import as sequence if we found more than one image in the sequence
+ QStringList list;
+ QString pattern = SlideshowClip::selectedPath(url.path(), false, QString(), &list);
+ int count = list.count();
+ if (count > 1) {
+ delete d;
+ QStringList groupInfo = getGroup();
+
+ // get image sequence base name
+ while (fileName.at(fileName.size() - 1).isDigit()) {
+ fileName.chop(1);
+ }
+ QMap <QString, QString> properties;
+ properties.insert("name", fileName);
+ properties.insert("resource", pattern);
+ properties.insert("in", "0");
+ QString duration = m_timecode.reformatSeparators(KdenliveSettings::sequence_duration());
+ properties.insert("out", QString::number(m_doc->getFramePos(duration) * count));
+ properties.insert("ttl", QString::number(m_doc->getFramePos(duration)));
+ properties.insert("loop", QString::number(false));
+ properties.insert("crop", QString::number(false));
+ properties.insert("fade", QString::number(false));
+ properties.insert("luma_duration", QString::number(m_doc->getFramePos(m_timecode.getTimecodeFromFrames(int(ceil(m_timecode.fps()))))));
+ m_doc->slotCreateSlideshowClipFile(properties, groupInfo.at(0), groupInfo.at(1));
+ return;
}
- QMap <QString, QString> properties;
- properties.insert("name", fileName);
- properties.insert("resource", pattern);
- properties.insert("in", "0");
- QString duration = m_timecode.reformatSeparators(KdenliveSettings::sequence_duration());
- properties.insert("out", QString::number(m_doc->getFramePos(duration) * count));
- properties.insert("ttl", QString::number(m_doc->getFramePos(duration)));
- properties.insert("loop", QString::number(false));
- properties.insert("crop", QString::number(false));
- properties.insert("fade", QString::number(false));
- properties.insert("luma_duration", QString::number(m_doc->getFramePos(m_timecode.getTimecodeFromFrames(int(ceil(m_timecode.fps()))))));
- m_doc->slotCreateSlideshowClipFile(properties, groupInfo.at(0), groupInfo.at(1));
- return;
}
}
}
}
else {
if (replace)
- m_invalidClipDialog = new InvalidDialog(i18n("Invalid clip"), i18n("Clip <b>%1</b><br />is invalid, will be removed from project.", QString()), replace, kapp->activeWindow());
+ m_invalidClipDialog = new InvalidDialog(i18n("Invalid clip"), i18n("Clip is invalid, will be removed from project."), replace, kapp->activeWindow());
else {
- m_invalidClipDialog = new InvalidDialog(i18n("Invalid clip"), i18n("Clip <b>%1</b><br />is missing or invalid. Remove it from project?", QString()), replace, kapp->activeWindow());
+ m_invalidClipDialog = new InvalidDialog(i18n("Invalid clip"), i18n("Clip is missing or invalid. Remove it from project?"), replace, kapp->activeWindow());
}
m_invalidClipDialog->addClip(id, path);
int result = m_invalidClipDialog->exec();