From: Jean-Baptiste Mardelle Date: Sat, 20 Jun 2009 18:04:01 +0000 (+0000) Subject: Correctly focus clips / folders when they are created: X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=31e84d6bd7f7b1ac64d942a9171d98ad8d0f7d62;p=kdenlive Correctly focus clips / folders when they are created: http://kdenlive.org/mantis/view.php?id=944 svn path=/trunk/kdenlive/; revision=3608 --- diff --git a/src/kdenlivedoc.cpp b/src/kdenlivedoc.cpp index 663157db..ab517a6c 100644 --- a/src/kdenlivedoc.cpp +++ b/src/kdenlivedoc.cpp @@ -918,7 +918,7 @@ void KdenliveDoc::addClip(QDomElement elem, QString clipId, bool createClipItem) if (createClipItem) { emit addProjectClip(clip); qApp->processEvents(); - m_render->getFileProperties(clip->toXML(), clip->getId()); + m_render->getFileProperties(clip->toXML(), clip->getId(), false); } } @@ -1040,7 +1040,6 @@ void KdenliveDoc::slotAddClipList(const KUrl::List urls, const QString group, co void KdenliveDoc::slotAddClipFile(const KUrl url, const QString group, const QString &groupId) { - //kDebug() << "///////// DOCUM, ADD CLP: " << url; m_clipManager->slotAddClipFile(url, group, groupId); emit selectLastAddedClip(QString::number(m_clipManager->lastClipId())); setModified(true); @@ -1056,6 +1055,20 @@ DocClipBase *KdenliveDoc::getBaseClip(const QString &clipId) return m_clipManager->getClipById(clipId); } +void KdenliveDoc::slotCreateColorClip(const QString &name, const QString &color, const QString &duration, QString group, const QString &groupId) +{ + m_clipManager->slotAddColorClipFile(name, color, duration, group, groupId); + setModified(true); + emit selectLastAddedClip(QString::number(m_clipManager->lastClipId())); +} + +void KdenliveDoc::slotCreateSlideshowClipFile(const QString name, const QString path, int count, const QString duration, const bool loop, const bool fade, const QString &luma_duration, const QString &luma_file, const int softness, QString group, const QString &groupId) +{ + m_clipManager->slotAddSlideshowClipFile(name, path, count, duration, loop, fade, luma_duration, luma_file, softness, group, groupId); + setModified(true); + emit selectLastAddedClip(QString::number(m_clipManager->lastClipId())); +} + void KdenliveDoc::slotCreateTextClip(QString group, const QString &groupId, const QString &templatePath) { QString titlesFolder = projectFolder().path() + "/titles/"; @@ -1068,6 +1081,7 @@ void KdenliveDoc::slotCreateTextClip(QString group, const QString &groupId, cons //dia_ui->saveTitle(path + ".kdenlivetitle"); m_clipManager->slotAddTextClipFile(titleInfo.at(0), titleInfo.at(1), dia_ui->xml().toString(), group, groupId); setModified(true); + emit selectLastAddedClip(QString::number(m_clipManager->lastClipId())); } delete dia_ui; } @@ -1089,6 +1103,7 @@ void KdenliveDoc::slotCreateTextTemplateClip(QString group, const QString &group delete dia_ui; m_clipManager->slotAddTextTemplateClip(titleInfo.at(0), titleInfo.at(1), path, group, groupId); setModified(true); + emit selectLastAddedClip(QString::number(m_clipManager->lastClipId())); } int KdenliveDoc::tracksCount() const diff --git a/src/kdenlivedoc.h b/src/kdenlivedoc.h index bd34660b..0f7cca04 100644 --- a/src/kdenlivedoc.h +++ b/src/kdenlivedoc.h @@ -150,6 +150,8 @@ private: bool checkDocumentClips(QDomNodeList infoproducers); public slots: + void slotCreateColorClip(const QString &name, const QString &color, const QString &duration, QString group, const QString &groupId); + void slotCreateSlideshowClipFile(const QString name, const QString path, int count, const QString duration, const bool loop, const bool fade, const QString &luma_duration, const QString &luma_file, const int softness, QString group, const QString &groupId); void slotCreateTextClip(QString group, const QString &groupId, const QString &templatePath = QString()); void slotCreateTextTemplateClip(QString group, const QString &groupId, KUrl path); /** Set to true if document needs saving, false otherwise */ diff --git a/src/projectlist.cpp b/src/projectlist.cpp index 87f3fa84..698a16f2 100644 --- a/src/projectlist.cpp +++ b/src/projectlist.cpp @@ -454,7 +454,7 @@ void ProjectList::slotAddFolder(const QString foldername, const QString &clipId, QStringList text; text << QString() << foldername; m_listView->blockSignals(true); - (void) new ProjectItem(m_listView, text, clipId); + m_listView->setCurrentItem(new ProjectItem(m_listView, text, clipId)); m_doc->clipManager()->addFolder(clipId, foldername); m_listView->blockSignals(false); } @@ -498,7 +498,6 @@ void ProjectList::slotAddClip(DocClipBase *clip, bool getProperties) if (parentitem) item = new ProjectItem(parentitem, clip); } if (item == NULL) item = new ProjectItem(m_listView, clip); - KUrl url = clip->fileURL(); if (!url.isEmpty() && KdenliveSettings::activate_nepomuk()) { // if file has Nepomuk comment, use it @@ -659,8 +658,7 @@ void ProjectList::slotAddColorClip() QString color = dia_ui.clip_color->color().name(); color = color.replace(0, 1, "0x") + "ff"; QStringList groupInfo = getGroup(); - m_doc->clipManager()->slotAddColorClipFile(dia_ui.clip_name->text(), color, dia_ui.clip_duration->text(), groupInfo.at(0), groupInfo.at(1)); - m_doc->setModified(true); + m_doc->slotCreateColorClip(dia_ui.clip_name->text(), color, dia_ui.clip_duration->text(), groupInfo.at(0), groupInfo.at(1)); } delete dia; } @@ -673,8 +671,7 @@ void ProjectList::slotAddSlideshowClip() if (dia->exec() == QDialog::Accepted) { QStringList groupInfo = getGroup(); - m_doc->clipManager()->slotAddSlideshowClipFile(dia->clipName(), dia->selectedPath(), dia->imageCount(), dia->clipDuration(), dia->loop(), dia->fade(), dia->lumaDuration(), dia->lumaFile(), dia->softness(), groupInfo.at(0), groupInfo.at(1)); - m_doc->setModified(true); + m_doc->slotCreateSlideshowClipFile(dia->clipName(), dia->selectedPath(), dia->imageCount(), dia->clipDuration(), dia->loop(), dia->fade(), dia->lumaDuration(), dia->lumaFile(), dia->softness(), groupInfo.at(0), groupInfo.at(1)); } delete dia; }