#include "projectlist.h"
#include "projectitem.h"
-#include "addfoldercommand.h"
+#include "commands/addfoldercommand.h"
#include "kdenlivesettings.h"
#include "slideshowclip.h"
#include "ui_colorclip_ui.h"
#include "projectlistview.h"
#include "timecodedisplay.h"
#include "profilesdialog.h"
-#include "editclipcommand.h"
-#include "editclipcutcommand.h"
-#include "editfoldercommand.h"
-#include "addclipcutcommand.h"
+#include "commands/editclipcommand.h"
+#include "commands/editclipcutcommand.h"
+#include "commands/editfoldercommand.h"
+#include "commands/addclipcutcommand.h"
#include "ui_templateclip_ui.h"
QTreeWidgetItemIterator it(m_listView);
ProjectItem *item;
- while (*it) {
+ while (*it && !m_abortAllProxies) {
if ((*it)->type() == PROJECTCLIPTYPE) {
item = static_cast <ProjectItem *>(*it);
if (item->referencedClip()->getProperty("proxy") == proxyPath)
void ProjectList::slotResetProjectList()
{
+ m_listView->blockSignals(true);
m_abortAllProxies = true;
m_proxyThreads.waitForFinished();
m_proxyThreads.clearFutures();
m_refreshed = false;
m_allClipsProcessed = false;
m_abortAllProxies = false;
+ m_listView->blockSignals(false);
}
void ProjectList::slotUpdateClip(const QString &id)
item = static_cast <ProjectItem *>(*it);
clip = item->referencedClip();
if (item->referencedClip()->getProducer() == NULL) {
- if (clip->isPlaceHolder() == false) {
+ if (clip->isPlaceHolder() == false && !item->isProxyRunning()) {
QDomElement xml = clip->toXML();
if (fpsChanged) {
xml.removeAttribute("out");
QDomDocument doc;
QDomElement prods = doc.createElement("producerlist");
doc.appendChild(prods);
- kDebug() << "//////////// PRO LIST BUILD PRDSLIST ";
QTreeWidgetItemIterator it(m_listView);
while (*it) {
if ((*it)->type() != PROJECTCLIPTYPE) {
{
if (m_render->processingItems() == 0 && m_thumbnailQueue.isEmpty()) {
if (!m_refreshed && m_allClipsProcessed) {
- kDebug()<<"// LOADING IS OVER!!!!!!!!!!!!!!!!!!!!!!!!!!!!!";
m_listView->setEnabled(true);
slotClipSelected();
- emit loadingIsOver();
+ QTimer::singleShot(500, this, SIGNAL(loadingIsOver()));
emit displayMessage(QString(), -1);
m_refreshed = true;
}
int max = m_doc->clipManager()->clipsCount();
emit displayMessage(i18n("Loading clips"), (int)(100 *(max - queue) / max));
}
- if (m_allClipsProcessed) processNextThumbnail();
+ if (m_allClipsProcessed) emit processNextThumbnail();
}
if (replace && item) {
toReload = clipId;
// Proxy process crashed
QFile::remove(info.dest);
setProxyStatus(info.dest, PROXYCRASHED);
- }
-
+ }
+ return;
}
if (info.type == IMAGE) {
m_abortProxy.removeAll(info.dest);
m_processingProxy.removeAll(info.dest);
QFile::remove(info.dest);
- setProxyStatus(info.dest, NOPROXY);
+ if (!m_abortAllProxies) setProxyStatus(info.dest, NOPROXY);
result = -2;
}
if (proxyPath.isEmpty() || m_abortAllProxies) return;
QTreeWidgetItemIterator it(m_listView);
ProjectItem *item;
- while (*it) {
+ while (*it && !m_abortAllProxies) {
if ((*it)->type() == PROJECTCLIPTYPE) {
item = static_cast <ProjectItem *>(*it);
if (item->referencedClip()->getProperty("proxy") == proxyPath) {