X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fdvdwizard.cpp;h=840a74cac19f204ea377873a2415a9025c4794af;hb=12c52e2d2e97f703714b83dfd385db2de5f03f18;hp=e087e520fd2ae4687b67e4948c077feef76e43c2;hpb=da867704bf6027e11c94e5492ba87b7c1f269e39;p=kdenlive
diff --git a/src/dvdwizard.cpp b/src/dvdwizard.cpp
index e087e520..840a74ca 100644
--- a/src/dvdwizard.cpp
+++ b/src/dvdwizard.cpp
@@ -66,6 +66,7 @@ DvdWizard::DvdWizard(const QString &url, const QString &profile, QWidget *parent
page4->setTitle(i18n("Creating DVD Image"));
m_status.setupUi(page4);
m_status.error_box->setHidden(true);
+ m_status.error_box->setTabBarHidden(true);
m_status.tmp_folder->setUrl(KUrl(KdenliveSettings::currenttmpfolder()));
m_status.tmp_folder->setMode(KFile::Directory | KFile::ExistingOnly);
m_status.iso_image->setUrl(KUrl(QDir::homePath() + "/untitled.iso"));
@@ -153,6 +154,10 @@ void DvdWizard::slotPageChanged(int page)
void DvdWizard::generateDvd()
{
m_status.error_box->setHidden(true);
+ m_status.error_box->setCurrentIndex(0);
+ m_status.error_box->setTabBarHidden(true);
+ m_status.menu_file->clear();
+ m_status.dvd_file->clear();
KTemporaryFile temp1;
temp1.setSuffix(".png");
//temp1.setAutoRemove(false);
@@ -330,6 +335,9 @@ void DvdWizard::generateDvd()
spuitem->setIcon(KIcon("dialog-close"));
m_status.error_log->append(result);
m_status.error_box->setHidden(false);
+ m_status.error_box->setTabBarHidden(false);
+ m_status.menu_file->setPlainText(m_menuFile.readAll());
+ m_status.dvd_file->setPlainText(m_authorFile.readAll());
m_status.button_start->setEnabled(true);
kDebug() << "/// RENDERING SPUMUX MENU crashed";
return;
@@ -340,6 +348,9 @@ void DvdWizard::generateDvd()
m_status.error_log->append("
" + i18n("Menu job timed out"));
m_status.error_log->scrollToAnchor("result");
m_status.error_box->setHidden(false);
+ m_status.error_box->setTabBarHidden(false);
+ m_status.menu_file->setPlainText(m_menuFile.readAll());
+ m_status.dvd_file->setPlainText(m_authorFile.readAll());
m_status.button_start->setEnabled(true);
return;
}
@@ -445,7 +456,7 @@ void DvdWizard::generateDvd()
QDomText call;
if (i == voburls.count() - 1) call = dvddoc.createTextNode("{g1 = 0; call menu;}");
else {
- call = dvddoc.createTextNode("{if ( g1 eq 999 ) { call menu; } jump title " + QString::number(i + 2) + ";}");
+ call = dvddoc.createTextNode("{if ( g1 eq 999 ) { call menu; } jump title " + QString::number(i + 2).rightJustified(2, '0') + ";}");
}
post.appendChild(call);
pgc2.appendChild(post);
@@ -474,6 +485,16 @@ void DvdWizard::generateDvd()
}
m_creationLog.clear();
m_dvdauthor = new QProcess(this);
+ // Set VIDEO_FORMAT variable (required by dvdauthor 0.7)
+#if QT_VERSION >= 0x040600
+ QProcessEnvironment env = QProcessEnvironment::systemEnvironment();
+ env.insert("VIDEO_FORMAT", m_pageVob->isPal() ? "PAL" : "NTSC");
+ m_dvdauthor->setProcessEnvironment(env);
+#else
+ QStringList env = QProcess::systemEnvironment();
+ env << QString("VIDEO_FORMAT=") + QString(m_pageVob->isPal() ? "PAL" : "NTSC");
+ m_dvdauthor->setEnvironment(env);
+#endif
connect(m_dvdauthor, SIGNAL(finished(int , QProcess::ExitStatus)), this, SLOT(slotRenderFinished(int, QProcess::ExitStatus)));
connect(m_dvdauthor, SIGNAL(readyReadStandardOutput()), this, SLOT(slotShowRenderInfo()));
m_dvdauthor->setProcessChannelMode(QProcess::MergedChannels);
@@ -495,10 +516,13 @@ void DvdWizard::slotRenderFinished(int exitCode, QProcess::ExitStatus status)
if (status == QProcess::CrashExit || exitCode != 0) {
QString result(m_dvdauthor->readAllStandardError());
result.append("
");
- result.append(i18n("DVDAuthor process crashed."));
+ result.append(i18n("DVDAuthor process crashed.
"));
m_status.error_log->append(result);
m_status.error_log->scrollToAnchor("result");
m_status.error_box->setHidden(false);
+ m_status.error_box->setTabBarHidden(false);
+ m_status.menu_file->setPlainText(m_menuFile.readAll());
+ m_status.dvd_file->setPlainText(m_authorFile.readAll());
kDebug() << "DVDAuthor process crashed";
authitem->setIcon(KIcon("dialog-close"));
m_dvdauthor->close();
@@ -520,6 +544,9 @@ void DvdWizard::slotRenderFinished(int exitCode, QProcess::ExitStatus status)
m_status.error_log->append(m_creationLog + "
" + i18n("DVD structure broken"));
m_status.error_log->scrollToAnchor("result");
m_status.error_box->setHidden(false);
+ m_status.error_box->setTabBarHidden(false);
+ m_status.menu_file->setPlainText(m_menuFile.readAll());
+ m_status.dvd_file->setPlainText(m_authorFile.readAll());
kDebug() << "DVDAuthor process crashed";
authitem->setIcon(KIcon("dialog-close"));
m_status.button_start->setEnabled(true);
@@ -569,6 +596,9 @@ void DvdWizard::slotIsoFinished(int exitCode, QProcess::ExitStatus status)
m_status.error_log->append(result);
m_status.error_log->scrollToAnchor("result");
m_status.error_box->setHidden(false);
+ m_status.error_box->setTabBarHidden(false);
+ m_status.menu_file->setPlainText(m_menuFile.readAll());
+ m_status.dvd_file->setPlainText(m_authorFile.readAll());
m_mkiso->close();
delete m_mkiso;
m_mkiso = NULL;
@@ -595,6 +625,9 @@ void DvdWizard::slotIsoFinished(int exitCode, QProcess::ExitStatus status)
m_status.error_log->append(m_creationLog + "
" + i18n("DVD ISO is broken") + "");
m_status.error_log->scrollToAnchor("result");
m_status.error_box->setHidden(false);
+ m_status.error_box->setTabBarHidden(false);
+ m_status.menu_file->setPlainText(m_menuFile.readAll());
+ m_status.dvd_file->setPlainText(m_authorFile.readAll());
isoitem->setIcon(KIcon("dialog-close"));
cleanup();
return;