]> git.sesse.net Git - kdenlive/commitdiff
Fix DVD menu not displayed
authorJean-Baptiste Mardelle <jb@kdenlive.org>
Mon, 30 May 2011 21:58:57 +0000 (21:58 +0000)
committerJean-Baptiste Mardelle <jb@kdenlive.org>
Mon, 30 May 2011 21:58:57 +0000 (21:58 +0000)
svn path=/trunk/kdenlive/; revision=5622

src/dvdwizard.cpp
src/dvdwizardmenu.cpp

index 840a74cac19f204ea377873a2415a9025c4794af..fe997c0a9293bd4c07293a9031a7de9caa8e55bd 100644 (file)
@@ -301,11 +301,13 @@ void DvdWizard::generateDvd()
             //int target = it.key();
             // TODO: solve play all button
             //if (target == 0) target = 1;
+
+            // We need to make sure that the y coordinate is a multiple of 2, otherwise button may not be displayed
             buttonsTarget.append(it.key());
             but.setAttribute("x0", QString::number(r.x()));
-            but.setAttribute("y0", QString::number(r.y()));
+            but.setAttribute("y0", QString::number(2 * (r.y() / 2)));
             but.setAttribute("x1", QString::number(r.right()));
-            but.setAttribute("y1", QString::number(r.bottom()));
+            but.setAttribute("y1", QString::number(2 * (r.bottom() / 2)));
             spu.appendChild(but);
             i++;
         }
@@ -324,6 +326,16 @@ void DvdWizard::generateDvd()
 
         QProcess spumux;
 
+#if QT_VERSION >= 0x040600
+        QProcessEnvironment env = QProcessEnvironment::systemEnvironment();
+        env.insert("VIDEO_FORMAT", m_pageVob->isPal() ? "PAL" : "NTSC");
+        spumux.setProcessEnvironment(env);
+#else
+        QStringList env = QProcess::systemEnvironment();
+        env << QString("VIDEO_FORMAT=") + QString(m_pageVob->isPal() ? "PAL" : "NTSC");
+        spumux.setEnvironment(env);
+#endif
+    
         if (m_pageMenu->menuMovie()) spumux.setStandardInputFile(m_pageMenu->menuMoviePath());
         else spumux.setStandardInputFile(temp5.fileName());
         spumux.setStandardOutputFile(m_menuFile.fileName());
index 2a204dc7459f192d186d57a8ebcf1a8b739017db..89ce70c7f68eb06cb3a67a696ead928095ef3823 100644 (file)
@@ -423,69 +423,54 @@ void DvdWizardMenu::createButtonImages(const QString &img1, const QString &img2,
 {
     if (m_view.create_menu->isChecked()) {
         m_scene->clearSelection();
-        QImage img(m_width, m_height, QImage::Format_ARGB32_Premultiplied);
-        img.fill(Qt::transparent);
         if (m_safeRect->scene() != 0) m_scene->removeItem(m_safeRect);
         if (m_color->scene() != 0) m_scene->removeItem(m_color);
         if (m_background->scene() != 0) m_scene->removeItem(m_background);
+        
+        QImage img(m_width, m_height, QImage::Format_Mono);
+        img.fill(Qt::white);
+        updateColor(Qt::black);
         QPainter p(&img);
         p.setRenderHints(QPainter::Antialiasing, false);
         p.setRenderHints(QPainter::TextAntialiasing, false);
         m_scene->render(&p, QRectF(0, 0, m_width, m_height));
         p.end();
 #if QT_VERSION >= 0x040600
-        img.setColorCount(4);
+        img.setColor(0, m_view.text_color->color().rgb());
+        img.setColor(1, qRgba(0,0,0,0));
 #else
         img.setNumColors(4);
 #endif
         img.save(img1);
 
-        /*QImage saved;
-        if (m_view.menu_profile->currentIndex() < 2)
-            saved = img.scaled(720, 576);
-        else saved = img.scaled(720, 480);
-        saved.setNumColors(4);
-        saved.save(img1);*/
-
-        updateColor(m_view.selected_color->color());
-        img.fill(Qt::transparent);
+        img.fill(Qt::white);
         p.begin(&img);
         p.setRenderHints(QPainter::Antialiasing, false);
         p.setRenderHints(QPainter::TextAntialiasing, false);
         m_scene->render(&p, QRectF(0, 0, m_width, m_height));
         p.end();
-        /*        if (m_view.menu_profile->currentIndex() < 2)
-                    saved = img.scaled(720, 576);
-                else saved = img.scaled(720, 480);
-                saved.setNumColors(4);
-                saved.save(img2);*/
 #if QT_VERSION >= 0x040600
-        img.setColorCount(4);
+        img.setColor(0, m_view.highlighted_color->color().rgb());
+        img.setColor(1, qRgba(0,0,0,0));
 #else
         img.setNumColors(4);
 #endif
-        img.save(img2);
-
+        img.save(img3);        
 
-        updateColor(m_view.highlighted_color->color());
-        img.fill(Qt::transparent);
+        img.fill(Qt::white);
         p.begin(&img);
         p.setRenderHints(QPainter::Antialiasing, false);
         p.setRenderHints(QPainter::TextAntialiasing, false);
         m_scene->render(&p, QRectF(0, 0, m_width, m_height));
         p.end();
-        /*if (m_view.menu_profile->currentIndex() < 2)
-            saved = img.scaled(720, 576);
-        else saved = img.scaled(720, 480);
-        saved.setNumColors(4);
-        saved.save(img3);*/
+
 #if QT_VERSION >= 0x040600
-        img.setColorCount(4);
+        img.setColor(0, m_view.selected_color->color().rgb());
+        img.setColor(1, qRgba(0,0,0,0));
 #else
         img.setNumColors(4);
 #endif
-        img.save(img3);
-
+        img.save(img2);
         updateColor();
 
         m_scene->addItem(m_safeRect);